PP: Fix issue #738: don't assert on characters within a string.
This commit is contained in:
parent
fb22b69fc6
commit
3494d71cfa
@ -4,3 +4,4 @@
|
|||||||
#if
|
#if
|
||||||
#endif
|
#endif
|
||||||
int a˙
|
int a˙
|
||||||
|
#define A "˙
|
@ -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 @@
|
|||||||
// 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:
|
|||||||
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.
|
|||||||
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)
|
|||||||
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:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user