zerodds-idl-parse

Hand-written recursive-descent parser for OMG IDL 4.2, building a lossless CST with error recovery.

OMG IDL 4.2 in, a lossless tree and a diagnostic list out.

The lexer, the preprocessor — #include, conditionals, macro expansion, #pragma once — and a recovering parser that produces a tree for a file it could not read, so a later stage can still point at what was there.

A diagnostic names its clause. IDL0007 is not a number this project chose to mean something; it carries the section of the specification that refuses the construct, and the tests assert the clause, not the number.

Safety classification is STANDARD, not SAFE. docs/architecture/04_safety_by_architecture.md §2 puts the zerodds-idl* tools outside the safe subset: they run at build time and never in a participant.

Position

zerodds-idl-parse

Handgeschriebener Parser mit rekursivem Abstieg für OMG IDL 4.2, der einen verlustfreien CST mit Fehlerbehandlung baut.

OMG IDL 4.2 hinein, ein verlustfreier Baum und eine Liste von Diagnosen heraus.

Der Lexer, der Präprozessor — #include, bedingte Abschnitte, Makroexpansion, #pragma once — und ein Parser, der nach Fehlern weiterliest und auch für eine Datei, die er nicht lesen konnte, einen Baum liefert, damit eine spätere Stufe noch auf das zeigen kann, was dort stand.

Eine Diagnose nennt ihre Klausel. IDL0007 ist keine Nummer, der dieses Projekt eine Bedeutung gegeben hat; sie trägt den Abschnitt der Spezifikation, der das Konstrukt ablehnt, und die Tests prüfen die Klausel, nicht die Nummer.

Die Sicherheitseinstufung ist STANDARD, nicht SAFE. docs/architecture/04_safety_by_architecture.md §2 stellt die zerodds-idl*-Werkzeuge außerhalb der sicheren Teilmenge: Sie laufen zur Bauzeit und nie in einem Participant.

Stellung