diff options
author | Alon Zakai <alonzakai@gmail.com> | 2011-10-13 10:36:12 -0700 |
---|---|---|
committer | Alon Zakai <alonzakai@gmail.com> | 2011-10-13 10:36:12 -0700 |
commit | 02163f9957c1e0ee02b1c7d0936a084ffb592cff (patch) | |
tree | 4438a297db58bef51ae53644f1dfcc0f106dd676 | |
parent | c287fb89813f54fbff42265d803d57793c59bdaa (diff) |
two minor intertyper fixes for haskell
-rw-r--r-- | src/intertyper.js | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/src/intertyper.js b/src/intertyper.js index 9fd03bbc..8b889b80 100644 --- a/src/intertyper.js +++ b/src/intertyper.js @@ -424,12 +424,14 @@ function intertyper(data, parseFunctions, baseLineNum) { item.tokens[3] = item.tokens[3].item.tokens[0]; } var subTokens = item.tokens[3].tokens; - subTokens.push({text:','}); - while (subTokens[0]) { - var stop = 1; - while ([','].indexOf(subTokens[stop].text) == -1) stop ++; - fields.push(combineTokens(subTokens.slice(0, stop)).text); - subTokens.splice(0, stop+1); + if (subTokens) { + subTokens.push({text:','}); + while (subTokens[0]) { + var stop = 1; + while ([','].indexOf(subTokens[stop].text) == -1) stop ++; + fields.push(combineTokens(subTokens.slice(0, stop)).text); + subTokens.splice(0, stop+1); + } } } return [{ @@ -862,7 +864,7 @@ function intertyper(data, parseFunctions, baseLineNum) { // external function stub substrate.addActor('External', { processItem: function(item) { - if (item.tokens[1].text in LLVM.LINKAGES || item.tokens[1].text in LLVM.PARAM_ATTR || item.tokens[1].text in LLVM.VISIBILITIES) { + if (item.tokens[1].text in LLVM.LINKAGES || item.tokens[1].text in LLVM.PARAM_ATTR || item.tokens[1].text in LLVM.VISIBILITIES || item.tokens[1].text in LLVM.CALLING_CONVENTIONS) { item.tokens.splice(1, 1); } var params = parseParamTokens(item.tokens[3].item.tokens); |