Always create TFunctions for function call nodes
This simplifies code and ensures that nodes get consistent data.
In the future function call nodes could have a pointer to the
TFunction instead of converting the same information into a different
data structure.
BUG=angleproject:2267
TEST=angle_unittests, angle_end2end_tests
Change-Id: Ic0c24bb86b44b9bcc4a5da7f6b03701081a3af5c
Reviewed-on: https://chromium-review.googlesource.com/824606
Reviewed-by: Jamie Madill <jmadill@chromium.org>
Commit-Queue: Olli Etuaho <oetuaho@nvidia.com>
diff --git a/src/compiler/translator/SymbolTable.cpp b/src/compiler/translator/SymbolTable.cpp
index e36f1ca..e25cf37 100644
--- a/src/compiler/translator/SymbolTable.cpp
+++ b/src/compiler/translator/SymbolTable.cpp
@@ -415,7 +415,7 @@
else
{
TFunction *function =
- new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, op, ext);
+ new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, false, op, ext);
function->addParameter(TConstParameter(ptype1));
@@ -481,7 +481,8 @@
const char *name)
{
insertUnmangledBuiltInName(name, level);
- insert(level, new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, op));
+ insert(level,
+ new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, false, op));
}
void TSymbolTable::insertBuiltInFunctionNoParametersExt(ESymbolLevel level,
@@ -491,7 +492,8 @@
const char *name)
{
insertUnmangledBuiltInName(name, level);
- insert(level, new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, op, ext));
+ insert(level,
+ new TFunction(this, NewPoolTString(name), rvalue, SymbolType::BuiltIn, false, op, ext));
}
TPrecision TSymbolTable::getDefaultPrecision(TBasicType type) const