pragmas

Consts

FirstCallConv = wNimcall
  Source Edit
LastCallConv = wNoconv
  Source Edit
procPragmas = {wMagic..wThread, wConstructor, wDelegator,
               wImportCpp..wExportNims, wAlign..wNodecl, wSideEffect..wMerge,
               wDynlib..wProcVar, wUsed, wError, wStackTrace..wLineTrace,
               wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
               wRaises, wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
               wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
               wCodegenDecl, wLocks, wLiftLocals, wExtern}
  Source Edit
converterPragmas = {wMagic..wThread, wConstructor, wDelegator,
                    wImportCpp..wExportNims, wAlign..wNodecl,
                    wSideEffect..wMerge, wDynlib..wProcVar, wUsed, wError,
                    wStackTrace..wLineTrace, wDeprecated..wVarargs,
                    wNimcall..wNoconv, wNonReloadable, wRaises, wTags..wEnsures,
                    wNoDestroy, wCompileTime..wNoInit, wBorrow..wDiscardable,
                    wGensym..wInject, wAsmNoStackFrame, wCodegenDecl, wLocks,
                    wLiftLocals, wExtern}
  Source Edit
methodPragmas = {wMagic..wThread, wConstructor, wDelegator,
                 wImportObjC..wExportNims, wAlign..wNodecl, wSideEffect..wMerge,
                 wDynlib..wUsed, wError, wStackTrace..wLineTrace,
                 wDeprecated..wVarargs, wNimcall..wNoconv, wNonReloadable,
                 wRaises, wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
                 wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
                 wCodegenDecl, wLocks, wLiftLocals, wExtern}
  Source Edit
templatePragmas = {wDeprecated, wError, wGensym, wInject, wDirty, wDelegator,
                   wExportNims, wUsed, wPragma}
  Source Edit
macroPragmas = {wMagic, wDelegator, wImportCpp..wImportObjC,
                wImportc..wExportNims, wAlign..wNodecl, wNoSideEffect,
                wCompilerProc..wCore, wUsed, wError, wDeprecated,
                wNimcall..wNoconv, wNonReloadable, wDiscardable,
                wGensym..wInject, wExtern}
  Source Edit
iteratorPragmas = {wMagic, wImportCpp..wImportObjC, wImportc..wExportNims,
                   wAlign..wNodecl, wSideEffect, wNoSideEffect..wGcSafe, wUsed,
                   wError, wDeprecated, wNimcall..wNoconv, wRaises,
                   wTags..wEnsures, wBorrow..wDiscardable, wGensym..wInject,
                   wLocks, wExtern}
  Source Edit
exprPragmas = {wLine, wLocks, wNoRewrite, wGcSafe, wNoSideEffect}
  Source Edit
stmtPragmas = {wChecks, wObjChecks, wFieldChecks, wRangeChecks, wBoundChecks,
               wOverflowChecks, wNilChecks, wStaticBoundchecks, wStyleChecks,
               wAssertions, wWarnings, wHints, wLineDir, wStackTrace,
               wLineTrace, wOptimization, wHint, wWarning, wError, wFatal,
               wDefine, wUndef, wCompile, wLink, wLinksys, wPure, wPush, wPop,
               wPassl, wPassc, wLocalPassc, wDeadCodeElimUnused, wDeprecated,
               wFloatChecks, wInfChecks, wNanChecks, wPragma, wEmit, wUnroll,
               wLinearScanEnd, wPatterns, wTrMacros, wEffects, wNoForward,
               wReorder, wComputedGoto, wInjectStmt, wExperimental, wThis,
               wUsed, wInvariant, wAssume, wAssert}
  Source Edit
lambdaPragmas = {wThread, wImportCpp..wImportObjC, wImportc..wExportCpp,
                 wAlign..wNodecl, wSideEffect..wNosinks, wDynlib, wDeprecated,
                 wNimcall..wNoconv, wRaises, wTags..wEnsures, wAsmNoStackFrame,
                 wCodegenDecl, wLocks, wExtern}
  Source Edit
typePragmas = {wMagic, wFinal, wImportCpp..wImportObjC, wImportc..wPure,
               wHeader, wGcSafe, wCompilerProc..wCore, wUsed, wError,
               wDeprecated, wSize, wPackage, wBorrow, wAcyclic..wShallow,
               wGensym..wInject, wInheritable, wUnchecked, wPartial..wExplain,
               wExtern, wUnion..wPacked, wByCopy..wByRef}
  Source Edit
fieldPragmas = {wCursor..wNoalias, wImportCpp..wImportObjC,
                wImportc..wExportCpp, wRequiresInit..wAlign, wUsed, wError,
                wDeprecated, wGuard, wExtern, wBitsize}
  Source Edit
varPragmas = {wMagic, wCursor..wNoalias, wImportCpp..wImportObjC,
              wImportc..wExportNims, wAlign..wNodecl, wHeader, wDynlib..wCore,
              wUsed, wError, wDeprecated, wCompileTime..wNoInit,
              wGensym..wInject, wThreadVar, wGlobal..wCodegenDecl, wGuard,
              wExtern, wGoto, wRegister, wVolatile}
  Source Edit
constPragmas = {wMagic, wIntDefine..wBoolDefine, wImportCpp..wImportObjC,
                wImportc..wExportNims, wAlign..wNodecl, wHeader,
                wCompilerProc..wCore, wUsed, wError, wDeprecated,
                wGensym..wInject, wExtern}
  Source Edit
paramPragmas = {wNoalias, wInject, wGensym}
  Source Edit
letPragmas = {wMagic, wCursor..wNoalias, wImportCpp..wImportObjC,
              wImportc..wExportNims, wAlign..wNodecl, wHeader, wDynlib..wCore,
              wUsed, wError, wDeprecated, wCompileTime..wNoInit,
              wGensym..wInject, wThreadVar, wGlobal..wCodegenDecl, wGuard,
              wExtern, wGoto, wRegister, wVolatile}
  Source Edit
procTypePragmas = {wNimcall..wNoconv, wVarargs, wNoSideEffect, wThread, wRaises,
                   wLocks, wTags, wGcSafe, wRequires, wEnsures}
  Source Edit
forVarPragmas = {wInject, wGensym}
  Source Edit
allRoutinePragmas = {wMagic..wThread, wConstructor, wDelegator,
                     wImportCpp..wExportNims, wAlign..wNodecl,
                     wSideEffect..wMerge, wDynlib..wUsed, wError,
                     wStackTrace..wLineTrace, wDeprecated..wVarargs,
                     wNimcall..wNoconv, wNonReloadable, wRaises,
                     wTags..wEnsures, wNoDestroy, wCompileTime..wNoInit,
                     wBorrow..wDiscardable, wGensym..wInject, wAsmNoStackFrame,
                     wCodegenDecl, wLocks, wLiftLocals, wExtern}
  Source Edit
enumFieldPragmas = {wDeprecated}
  Source Edit

Procs

proc getPragmaVal(procAst: PNode; name: TSpecialWord): PNode {...}{.raises: [],
    tags: [].}
  Source Edit
proc invalidPragma(c: PContext; n: PNode) {...}{.
    raises: [Exception, ValueError, IOError, ERecoverableError],
    tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}
  Source Edit
proc illegalCustomPragma(c: PContext; n: PNode; s: PSym) {...}{.
    raises: [Exception, ValueError, IOError, ERecoverableError],
    tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}
  Source Edit
proc pragmaAsm(c: PContext; n: PNode): char {...}{.
    raises: [Exception, ValueError, IOError, ERecoverableError],
    tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}
  Source Edit
proc semAsmOrEmit(con: PContext; n: PNode; marker: char): PNode {...}{.
    raises: [Exception, ValueError, IOError, ERecoverableError],
    tags: [RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect].}
  Source Edit
proc implicitPragmas(c: PContext; sym: PSym; n: PNode;
                     validPragmas: TSpecialWords) {...}{.raises: [Exception,
    ValueError, IOError, ERecoverableError, OSError, KeyError, EOFError], tags: [
    RootEffect, WriteIOEffect, ReadIOEffect, ReadEnvEffect, ReadDirEffect,
    WriteDirEffect].}
  Source Edit
proc hasPragma(n: PNode; pragma: TSpecialWord): bool {...}{.raises: [], tags: [].}
  Source Edit
proc pragma(c: PContext; sym: PSym; n: PNode; validPragmas: TSpecialWords;
            isStatement: bool = false) {...}{.raises: [Exception, ValueError,
    IOError, ERecoverableError, OSError, KeyError, EOFError], tags: [RootEffect,
    WriteIOEffect, ReadIOEffect, ReadEnvEffect, ReadDirEffect, WriteDirEffect].}
  Source Edit