868746a...
by
=?utf-8?q?Henrik_Rydg=C3=A5rd?= <email address hidden>
Add option to make it possible not to build the executables
432576f...
by
John Kessenich <email address hidden>
Build: Fix #633, add missing overrides.
0955b1c...
by
John Kessenich <email address hidden>
Merge pull request #637 from KhronosGroup/token-paste
PP: Implement token pasting for PP identifiers.
e6cbc5b...
by
John Kessenich <email address hidden>
Merge pull request #624 from steve-lunarg/remapper-strip-removed
WIP: Remapper: remove debug info for IDs stripped in other passes
4ba444b...
by
John Kessenich <email address hidden>
Merge pull request #635 from steve-lunarg/sample-fix-2
HLSL: allow "sample" in expressions.
059d46e...
by
John Kessenich <email address hidden>
Merge pull request #625 from jbeich/gcc6
Unbreak build on FreeBSD with GCC/libstdc++ 6.2.0
d485e0b...
by
John Kessenich <email address hidden>
PP: Implement token pasting for PP identifiers.
Implement token pasting as per the C++ specification, within the current
style of the PP code.
Non-identifiers (turning 12 ## 10 into the numeral 1210) is not yet covered;
they should be a simple incremental change built on this one.
Addresses issue #255.
Unlike other qualifiers, HLSL allows "sample" to be either a qualifier keyword or an
identifier (e.g, a variable or function name).
A fix to allow this was made a while ago, but that fix was insufficient when 'sample'
was used in an expression. The problem was around the initial ambiguity between:
sample float a; // "sample" is part of a fully specified type
and
sample.xyz; // sample is a keyword in a dot expression
Both start the same. The "sample" was being accepted as a qualifier before enough
further parsing was done to determine we were not a declaration after all. This
consumed the token, causing it to fail for its real purpose.
Now, when accepting a fully specified type, the token is pushed back onto the stack if
the thing is not a fully specified type. This leaves it available for subsequent
purposes.
Changed the "hlsl.identifier.sample.frag" test to exercise this situation, distilled
down from a production shaders.
abf5057...
by
John Kessenich <email address hidden>
Fix comment typo.
1e275c8...
by
John Kessenich <email address hidden>
HLSL: More robust handling of bad shader input, catching a few more things.