From: Carl Worth Date: Mon, 23 Aug 2010 16:06:11 +0000 (-0700) Subject: glcpp: Update README file (new specifications and fewer limitations). X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=c15f04b326aafc27aa2e508ab88bf209c829abd7;p=mesa.git glcpp: Update README file (new specifications and fewer limitations). The README file had grown a little bit stale. We've been using newer versions of both the GLSL and C99 specifications, so list those. Also, several of the documented known limitations have since been fixed, so remove those. --- diff --git a/src/glsl/glcpp/README b/src/glsl/glcpp/README index ab42a3ffe12..0b5ef508ce9 100644 --- a/src/glsl/glcpp/README +++ b/src/glsl/glcpp/README @@ -4,26 +4,28 @@ 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 +http://www.opengl.org/registry/doc/GLSLangSpec.Full.1.30.10.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: +preprocessors". To fill in these details, I've been using a draft of +the C99 standard as available from: -http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1124.pdf +http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf -Known limitations ------------------ -Macro invocations cannot include embedded newlines. +Any downstream compiler accepting output from glcpp should be prepared +to encounter and deal with the following preprocessor macros: -The __LINE__, __FILE__, and __VERSION__ macros are not yet supported. + #line + #pragma + #extension -The argument of the 'defined' operator cannot yet include enclosing -parentheses. +All other macros will be handles according to the GLSL specification +and will not appear in the output. -The #error, #pragma, #extension, #version, and #line macros are not -yet supported. +Known limitations +----------------- +The __LINE__ and __FILE__ macros are not yet supported. A file that ends with a function-like macro name as the last non-whitespace token will result in a parse error, (where it should be