summaryrefslogtreecommitdiffstats
path: root/source/slang/syntax.cpp
diff options
context:
space:
mode:
authorTim Foley <tfoley@nvidia.com>2017-06-28 11:39:40 -0700
committerTim Foley <tfoley@nvidia.com>2017-06-28 11:51:23 -0700
commitff53669ed918c87d15ddea2d07fda84d4c8eff5d (patch)
tree0082315629ad76add2ebffe04dcd1f64943c0a9f /source/slang/syntax.cpp
parentb8e31688c6826475b5199468aedea0bc44c0adc1 (diff)
Store integer literals at high precision in AST
The lexer was creating an `unsigned long long` value, and then the AST was storing it in an `int`. This change makes both use a `long long`. This is obviously still a stopgap until I can get arbitrary precisions in here.
Diffstat (limited to 'source/slang/syntax.cpp')
-rw-r--r--source/slang/syntax.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/source/slang/syntax.cpp b/source/slang/syntax.cpp
index 6b9a74f7d..cf529e55e 100644
--- a/source/slang/syntax.cpp
+++ b/source/slang/syntax.cpp
@@ -1268,7 +1268,7 @@ namespace Slang
// IntVal
- int GetIntVal(RefPtr<IntVal> val)
+ IntegerLiteralValue GetIntVal(RefPtr<IntVal> val)
{
if (auto constantVal = val.As<ConstantIntVal>())
{
@@ -1294,7 +1294,7 @@ namespace Slang
int ConstantIntVal::GetHashCode()
{
- return value;
+ return (int) value;
}
// SwitchStmt