Insert GLSL ES 1.0 built-in variables at the right level.
TRAC #22954
Signed-off-by: Jamie Madill
Signed-off-by: Shannon Woods
Author: Nicolas Capens
git-svn-id: https://angleproject.googlecode.com/svn/branches/es3proto@2271 736b8ea6-26fd-11df-bfd4-992fa37f6226
diff --git a/src/compiler/SymbolTable.h b/src/compiler/SymbolTable.h
index 41f43f5..c429ab2 100644
--- a/src/compiler/SymbolTable.h
+++ b/src/compiler/SymbolTable.h
@@ -284,10 +284,15 @@
precisionStack.pop_back();
}
- bool insert(TSymbol& symbol)
+ bool declare(TSymbol& symbol)
+ {
+ return insert(currentLevel(), symbol);
+ }
+
+ bool insert(ESymbolLevel level, TSymbol& symbol)
{
symbol.setUniqueId(++uniqueId);
- return table[currentLevel()]->insert(symbol);
+ return table[level]->insert(symbol);
}
TSymbol *find(const TString &name, bool *builtIn = false, bool *sameScope = false)
@@ -364,7 +369,7 @@
}
protected:
- int currentLevel() const { return static_cast<int>(table.size()) - 1; }
+ ESymbolLevel currentLevel() const { return static_cast<ESymbolLevel>(table.size() - 1); }
std::vector<TSymbolTableLevel*> table;
typedef std::map< TBasicType, TPrecision > PrecisionStackLevel;