FRIDAY, SEPTEMBER 11, 2026
gcc/cobol
Support non-bootstrap builds for GCC 8.5 with brace initialization
A minor change in the COBOL parser enables non-bootstrap builds with GCC 8.5 by correctly handling brace-initialized elements.
This commit updates the COBOL parser to support non-bootstrap builds when using GCC 8.5. It addresses an issue where brace-initialized construction of elements required each element to be explicitly constructed, now adding wordop_t to each element in parse.y.
In Details
The COBOL parser's parse.y file is updated to include wordop_t for each element within a brace-initialized list. This change accommodates GCC 8.5's stricter brace initialization rules, which mandate explicit construction for each element, thus enabling non-bootstrap builds for the COBOL front-end.
For Context
- non-bootstrap build
- A build process where the compiler being used is not a previously built version of the same compiler. This is in contrast to a bootstrap build, which uses a prior version of the compiler to build the new one.
- brace initialization
- A C++ initialization syntax using curly braces
{}to initialize objects or aggregate types. Different compiler versions may have slightly different interpretations or requirements for this syntax. - wordop_t
- Likely a type or structure within the COBOL parser related to operations on tokens or words, used here to ensure elements in a list are properly initialized.
- parse.y
- A file typically containing grammar rules for a parser generator like Bison (or Yacc), used here for the COBOL front-end.