<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Metro: Last Light rendering issues"
href="https://bugs.freedesktop.org/show_bug.cgi?id=71870#c33">Comment # 33</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - Metro: Last Light rendering issues"
href="https://bugs.freedesktop.org/show_bug.cgi?id=71870">bug 71870</a>
from <span class="vcard"><a class="email" href="mailto:idr@freedesktop.org" title="Ian Romanick <idr@freedesktop.org>"> <span class="fn">Ian Romanick</span></a>
</span></b>
<pre>I think it's pretty clear in the GLSL spec that using __ in a name is an error.
Section 3.6 (Keywords) says:
"The following are the language's keywords and (after preprocessing)
can only be used as described in this specification, or a compile-
time error results:"
Later the same section also says:
"In addition, all identifiers containing two consecutive underscores
(__) are reserved as possible future keywords."
This language has existed since GLSL 1.10.
Section 3.3 (Preprocessor) says:
"All macro names containing two consecutive underscores ( __ ) are
reserved for future use as predefined macro names. All macro
names prefixed with “GL_” (“GL” followed by a single underscore)
are also reserved."
The preprocessor restriction was added in GLSL 1.30, and it has always existed
in GLSL ES.
There isn't any justification for a GLSL 1.50 shader using __, in any capacity,
to compile. This is an application bug, so we'll follow up with the
application vendor.</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
</ul>
</body>
</html>