Rule 1.2
Chapter 1, Introduction Code only
GLSL ES 3.00 is a target of the compiler; it must not be the definition of a construct.
The rule text and the parts under it are the compiler's own English, as the design document writes them.
Rationale
a construct GLSL ES 3.00 lacks is still a construct of the language; the GLSL writer either lowers it or fails closed (§10).
Derives from
the roadmap’s second rule, “make what does not compile, compile”, and AGENTS.md.
How it is verified
Only the implementation carries it; no test checks it yet. The file below names the rule in an Implements: tag.
Where the rule says the compiler enforces it:
src/core/passes/required-caps.ts (assertCaps), which fails a GLSL emit closed on a capability the writer has no row for.
The files that verify it at commit 26de7be8, each at the first line that names the rule:
See also
- Rule 1.1 Test
- Rule 1.3 Test
- Design rules
- Error codes
Source
The rule at commit 26de7be8:
docs/language-design.md:44(the design document)reqs/rules/RULE-0102.md(its traceability item)