diff options
author | Bastiaan Olij <mux213@gmail.com> | 2018-12-28 19:20:11 +1100 |
---|---|---|
committer | RĂ©mi Verschelde <rverschelde@gmail.com> | 2018-12-30 13:10:58 +0100 |
commit | c1a53d8b067bf81db673064866cf880f3c1c1a8e (patch) | |
tree | 74334e0c0f7c47cd63b3a4566e2902cafe148e1d | |
parent | 6c67ca3f5b77f7e12942d65f4ff263d855972cf1 (diff) |
Always treat exponent as float
-rw-r--r-- | servers/visual/shader_language.cpp | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/servers/visual/shader_language.cpp b/servers/visual/shader_language.cpp index 1acec7ccaf..628ffb71f3 100644 --- a/servers/visual/shader_language.cpp +++ b/servers/visual/shader_language.cpp @@ -525,7 +525,6 @@ ShaderLanguage::Token ShaderLanguage::_get_token() { bool exponent_found = false; bool hexa_found = false; bool sign_found = false; - bool minus_exponent_found = false; bool float_suffix_found = false; String str; @@ -557,8 +556,6 @@ ShaderLanguage::Token ShaderLanguage::_get_token() { if (sign_found) return _make_token(TK_ERROR, "Invalid numeric constant"); sign_found = true; - if (GETCHAR(i) == '-') - minus_exponent_found = true; } else break; @@ -571,7 +568,7 @@ ShaderLanguage::Token ShaderLanguage::_get_token() { if (hexa_found) { //hex integers eg."0xFF" or "0x12AB", etc - NOT supported yet return _make_token(TK_ERROR, "Invalid (hexadecimal) numeric constant - Not supported"); - } else if (period_found || float_suffix_found) { + } else if (period_found || exponent_found || float_suffix_found) { //floats if (period_found) { if (float_suffix_found) { @@ -614,7 +611,7 @@ ShaderLanguage::Token ShaderLanguage::_get_token() { char_idx += str.length(); Token tk; - if (period_found || minus_exponent_found || float_suffix_found) + if (period_found || exponent_found || float_suffix_found) tk.type = TK_REAL_CONSTANT; else tk.type = TK_INT_CONSTANT; |