7893746582e31747fc17535cf5f9a327ece68812
The env-var branch in Tag::getVariable was dead code - it checked for "%", but that sigil was already claimed by the keyword-lookup branch earlier in the same if/else chain, so it could never be reached. Switched to "&" (unused by any other sigil) per explicit user decision. Also fixed a real crash risk while making this reachable: getenv() returns NULL for an unset variable, and MString's const char* constructor calls strlen() unconditionally - now throws a clean "environment variable is not set." error instead. Verified via real jet-2.0 runs: a set variable reads and applies modifiers (;toupper) correctly, an unset one throws cleanly rather than crashing. Full regression suite and 30/30 compile check still pass.
Languages
HTML
50.2%
TeX
18.7%
C++
15%
JavaScript
7.5%
CSS
4.4%
Other
4.2%