Summary: | #line directive extra tokens not recognized | ||
---|---|---|---|
Product: | Mesa | Reporter: | scrawl |
Component: | glsl-compiler | Assignee: | Ian Romanick <idr> |
Status: | RESOLVED NOTABUG | QA Contact: | |
Severity: | normal | ||
Priority: | medium | CC: | scrawl |
Version: | git | ||
Hardware: | x86-64 (AMD64) | ||
OS: | Linux (All) | ||
Whiteboard: | |||
i915 platform: | i915 features: |
Description
scrawl
2012-07-10 19:09:00 UTC
This cannot be valid GLSL: the double-quote character isn't a valid character in shaders at all. It sucks that AMD and NVIDIA accept this. This is valid C / C++ (mcpp is a C / C++ preprocessor). Page 16 (page 22 of the PDF) of GLSL 4.20 spec says: "#line must have, after macro substitution, one of the following forms: #line line #line line source-string-number where line and source-string-number are constant integer expressions." "/home/user/my-shader.frag" is not a constant integer expression. Okay, then I was mislead by the fact that closed drivers not only allow this line, but also mention in potential error messages that they belong to the file "/home/user/my-shader.frag". |
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.