mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-03-11 22:10:30 +01:00
read-only mirror of https://gitlab.freedesktop.org/mesa/mesa
For this we add an "active" string_list_t to the parser. This makes the current expansion_list_t in the parser obsolete, but we don't remove that yet. With this change we can now start passing some actual tests, so we turn on real testing in the test suite again. I expect to implement things more or less in the same order as before, so the test suite now halts on first error. With this change the first 8 tests in the suite pass, (object-like macros with chaining and recursion). |
||
|---|---|---|
| main | ||
| tests | ||
| .gitignore | ||
| glcpp-lex.l | ||
| glcpp-parse.y | ||
| glcpp.c | ||
| glcpp.h | ||
| hash_table.c | ||
| hash_table.h | ||
| Makefile | ||
| README | ||
| xtalloc.c | ||
glcpp -- GLSL "C" preprocessor This is a simple preprocessor designed to provide the preprocessing needs of the GLSL language. The requirements for this preprocessor are specified in the GLSL 1.30 specification availble from: http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.30.08.pdf This specification is not precise on some semantics, (for example, #define and #if), defining these merely "as is standard for C++ preprocessors". To fill in these details, I've been using the C99 standard (for which I had a convenient copy) as available from: http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf