Commit 3494d71c by John Kessenich

PP: Fix issue #738: don't assert on characters within a string.

parent fb22b69f
No preview for this file type
...@@ -5,8 +5,9 @@ ERROR: 0:3: '#error' : A <bad token> B ...@@ -5,8 +5,9 @@ ERROR: 0:3: '#error' : A <bad token> B
ERROR: 0:4: 'preprocessor evaluation' : bad expression ERROR: 0:4: 'preprocessor evaluation' : bad expression
ERROR: 0:4: '#if' : unexpected tokens following directive ERROR: 0:4: '#if' : unexpected tokens following directive
ERROR: 0:6: '€' : unexpected token ERROR: 0:6: '€' : unexpected token
ERROR: 0:7: 'string' : End of line in string
ERROR: 0:7: '' : syntax error ERROR: 0:7: '' : syntax error
ERROR: 7 compilation errors. No code generated. ERROR: 8 compilation errors. No code generated.
Shader version: 100 Shader version: 100
......
...@@ -2,5 +2,5 @@ ...@@ -2,5 +2,5 @@
// For the version, it uses the latest git tag followed by the number of commits. // For the version, it uses the latest git tag followed by the number of commits.
// For the date, it uses the current date (when then script is run). // For the date, it uses the current date (when then script is run).
#define GLSLANG_REVISION "Overload400-PrecQual.1861" #define GLSLANG_REVISION "Overload400-PrecQual.1865"
#define GLSLANG_DATE "28-Feb-2017" #define GLSLANG_DATE "28-Feb-2017"
...@@ -236,7 +236,7 @@ public: ...@@ -236,7 +236,7 @@ public:
void reset() { current = 0; } void reset() { current = 0; }
protected: protected:
void putSubtoken(int); void putSubtoken(char);
int getSubtoken(); int getSubtoken();
void ungetSubtoken(); void ungetSubtoken();
......
...@@ -96,9 +96,8 @@ NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ...@@ -96,9 +96,8 @@ NVIDIA HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
namespace glslang { namespace glslang {
// push onto back of stream // push onto back of stream
void TPpContext::TokenStream::putSubtoken(int subtoken) void TPpContext::TokenStream::putSubtoken(char subtoken)
{ {
assert((subtoken & ~0xff) == 0);
data.push_back(static_cast<unsigned char>(subtoken)); data.push_back(static_cast<unsigned char>(subtoken));
} }
...@@ -125,7 +124,8 @@ void TPpContext::TokenStream::putToken(int token, TPpToken* ppToken) ...@@ -125,7 +124,8 @@ void TPpContext::TokenStream::putToken(int token, TPpToken* ppToken)
const char* s; const char* s;
char* str = NULL; char* str = NULL;
putSubtoken(token); assert((token & ~0xff) == 0);
putSubtoken(static_cast<char>(token));
switch (token) { switch (token) {
case PpAtomIdentifier: case PpAtomIdentifier:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment