aboutsummaryrefslogtreecommitdiff
path: root/src/parseTools.js
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2011-11-30 14:48:41 -0800
committerAlon Zakai <alonzakai@gmail.com>2011-11-30 15:35:51 -0800
commit49660048bffde0caa891da7ebfe1466d15c6e930 (patch)
tree222dd165aced4141ea914a04b03372d904612d59 /src/parseTools.js
parentc2e49c8b6bbd881f28ad5379e60a8938cbac23cc (diff)
refactor compiler to allow future batching of types and globals. move postsets from run() to the toplevel to boost performance and simplify compilation. fix various bugs that were noticed during this
Diffstat (limited to 'src/parseTools.js')
-rw-r--r--src/parseTools.js6
1 files changed, 2 insertions, 4 deletions
diff --git a/src/parseTools.js b/src/parseTools.js
index cedfeaad..f2ef3374 100644
--- a/src/parseTools.js
+++ b/src/parseTools.js
@@ -337,7 +337,7 @@ function parseParamTokens(params) {
value: null,
ident: toNiceIdent('%') + anonymousIndex
});
- Types.needAnalysis[ret.type] = 0;
+ Types.needAnalysis[ret[ret.length-1].type] = 0;
anonymousIndex ++;
}
} else if (segment[1].text in PARSABLE_LLVM_FUNCTIONS) {
@@ -358,9 +358,7 @@ function parseParamTokens(params) {
value: segment[1],
ident: toNiceIdent(parseNumerical(segment[1].text))
});
- Types.needAnalysis[ret.type] = 0;
- // } else {
- // throw "what is this params token? " + JSON.stringify(segment);
+ Types.needAnalysis[removeAllPointing(ret[ret.length-1].type)] = 0;
}
ret[ret.length-1].byVal = byVal;
}