summary refs log tree commit diff stats
path: root/compiler/pragmas.nim
diff options
context:
space:
mode:
authorAraq <rumpf_a@web.de>2013-08-13 11:21:02 +0200
committerAraq <rumpf_a@web.de>2013-08-13 11:21:02 +0200
commitd53f313599111576c9eb290d679d6ed518582530 (patch)
treef7dda2b11adf60c5df295a13dec96b90c3181a0b /compiler/pragmas.nim
parent1633e22aec7a4a932a72469d6728d7f5e25d1805 (diff)
downloadNim-d53f313599111576c9eb290d679d6ed518582530.tar.gz
implemented computed goto support
Diffstat (limited to 'compiler/pragmas.nim')
-rw-r--r--compiler/pragmas.nim7
1 files changed, 2 insertions, 5 deletions
diff --git a/compiler/pragmas.nim b/compiler/pragmas.nim
index a11739f95..f185d0f80 100644
--- a/compiler/pragmas.nim
+++ b/compiler/pragmas.nim
@@ -42,7 +42,7 @@ const
     wFatal, wDefine, wUndef, wCompile, wLink, wLinkSys, wPure, wPush, wPop,
     wBreakpoint, wWatchpoint, wPassL, wPassC, wDeadCodeElim, wDeprecated,
     wFloatChecks, wInfChecks, wNanChecks, wPragma, wEmit, wUnroll,
-    wLinearScanEnd, wPatterns, wEffects, wNoForward}
+    wLinearScanEnd, wPatterns, wEffects, wNoForward, wComputedGoto}
   lambdaPragmas* = {FirstCallConv..LastCallConv, wImportc, wExportc, wNodecl, 
     wNosideEffect, wSideEffect, wNoreturn, wDynLib, wHeader, 
     wDeprecated, wExtern, wThread, wImportcpp, wImportobjc, wNoStackFrame,
@@ -446,9 +446,6 @@ proc PragmaUnroll(c: PContext, n: PNode) =
     else: 
       invalidPragma(n)
 
-proc PragmaLinearScanEnd(c: PContext, n: PNode) =
-  noVal(n)
-
 proc PragmaLine(c: PContext, n: PNode) =
   if n.kind == nkExprColonExpr:
     n.sons[1] = c.semConstExpr(c, n.sons[1])
@@ -691,7 +688,7 @@ proc singlePragma(c: PContext, sym: PSym, n: PNode, i: int,
           else: sym.typ.callConv = wordToCallConv(k)
         of wEmit: PragmaEmit(c, it)
         of wUnroll: PragmaUnroll(c, it)
-        of wLinearScanEnd: PragmaLinearScanEnd(c, it)
+        of wLinearScanEnd, wComputedGoto: noVal(it)
         of wEffects:
           # is later processed in effect analysis:
           noVal(it)