summaryrefslogtreecommitdiff
path: root/glcpp/glcpp-parse.y
AgeCommit message (Collapse)Author
2010-06-23preprocessor: Initialize a potentially uninitialized variable.Carl Worth
My current reading of the relevant static functions suggests that last is never used without being uninitialized, (we only use it if the expansion function returned non-NULL and the expansion functions always set it before returning non-NULL). Apparently gcc isn't coming to the same conclusion. Initializing this to NULL nicely quites gcc and will guarantee a nice, early segfault if my anaylsis turns out to be wrong.
2010-06-23preprocessor: Remove dead code _token_list_lengthCarl Worth
As gcc noticed, this function is not currently being used. Good-bye.
2010-06-23preprocessor: Remove dead code _string_list_append_listCarl Worth
As gcc noticed, this function is not currently being used. Good-bye.
2010-06-21glcpp: Initialize error state.Kenneth Graunke
2010-06-21glcpp: Accept #elif without an expression if the expression doesn't matter.Kenneth Graunke
Issue a warning. nVidia's compiler seems to accept this; apparently GCC < 4.4 did as well: http://gcc.gnu.org/gcc-4.4/porting_to.html
2010-06-21glcpp: Rework handling of "defined" operator.Kenneth Graunke
It's now done in the grammar, and as a result, can easily handle parenthesis. defined ( identifier ) is now supported. Fixes glcpp/tests/065-if-defined-parens.c.
2010-06-21glcpp: Ignore junk tokens at end of #ifdef/#ifndef (with warning)Kenneth Graunke
Both nVidia's compiler and GCC accept this. Fixes CorrectPreprocess11.frag.
2010-06-21glcpp: Rename "errors" to "info_log."Kenneth Graunke
Eventually, we'll want to be be able to print out warnings as well.
2010-06-21glcpp: Remove calls to exit().Kenneth Graunke
Calling exit() would be really bad once integrated into mesa. Even in the standalone binary, we want to print the error log first. Since each case already flags an error, compilation will still fail, but it may go on (with something fudged) and generate more errors.
2010-06-21glcpp: Add line locations to "Unterminated #if" error message.Kenneth Graunke
2010-06-21glcpp: Add line locations to various mismatched #if error messages.Kenneth Graunke
2010-06-21glcpp: Add line locations to "reserved name" error messages.Kenneth Graunke
2010-06-21glcpp: Print locations in error messages where possible.Kenneth Graunke
2010-06-21glcpp: Introduce new glcpp_error function.Kenneth Graunke
2010-06-21glcpp: Set locations on tokens.Kenneth Graunke
2010-06-21glcpp: Add plumbing to support line locations.Kenneth Graunke
2010-06-21glcpp: Add %error-verbose.Kenneth Graunke
2010-06-21glcpp: Build a reentrant parser.Kenneth Graunke
2010-06-21glcpp: Complain about unrecognized directives.Kenneth Graunke
2010-06-21glcpp: Output to a buffer and error log rather than directly printing.Kenneth Graunke
In the standalone case, simply print the buffers when done.
2010-06-21glcpp: Fix a case of == where = probably ought to be.Kenneth Graunke
Caught by a GCC warning.
2010-06-21Merge Carl's preprocessor into the glcpp subdirectory.Kenneth Graunke