summaryrefslogtreecommitdiff
path: root/glcpp
diff options
context:
space:
mode:
Diffstat (limited to 'glcpp')
-rw-r--r--glcpp/glcpp-lex.l7
1 files changed, 7 insertions, 0 deletions
diff --git a/glcpp/glcpp-lex.l b/glcpp/glcpp-lex.l
index f736ac4d59..c28f2f6269 100644
--- a/glcpp/glcpp-lex.l
+++ b/glcpp/glcpp-lex.l
@@ -61,6 +61,13 @@ NON_STARS_THEN_STARS [^*]*[*]+
return SPACE;
}
+ /* glcpp doesn't handle #extension, #version, or #pragma directives.
+ * Simply pass them through to the main compiler's lexer/parser. */
+{HASH}(extension|version|pragma).*\n {
+ yylval.str = xtalloc_strdup (yyextra, yytext);
+ return OTHER;
+}
+
{HASH}if/.*\n {
yyextra->lexing_if = 1;
yyextra->space_tokens = 0;