-
Notifications
You must be signed in to change notification settings - Fork 39
/
Copy pathcondsyms.nim
81 lines (70 loc) · 2.37 KB
/
condsyms.nim
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
#
#
# The Nim Compiler
# (c) Copyright 2015 Andreas Rumpf
#
# See the file "copying.txt", included in this
# distribution, for details about the copyright.
#
# This module handles the conditional symbols.
import
std/strtabs
from compiler/front/options import Feature
import compiler/ast/reports
proc initDefines*(symbols: StringTableRef) =
# for bootstrapping purposes and old code:
template defineSymbol(s) =
symbols[s] = "true"
# > 0.20.0
defineSymbol("nimNoZeroExtendMagic")
defineSymbol("nimMacrosGetNodeId")
for f in Feature:
defineSymbol("nimHas" & $f)
for s in repWarningKinds:
defineSymbol("nimHasWarning" & $s)
for s in repHintKinds:
defineSymbol("nimHasHint" & $s)
defineSymbol("nimFixedOwned")
defineSymbol("nimHasStyleChecks")
defineSymbol("nimToOpenArrayCString")
defineSymbol("nimHasUsed")
defineSymbol("nimnomagic64")
defineSymbol("nimNewShiftOps")
defineSymbol("nimHasCursor")
defineSymbol("nimAlignPragma")
defineSymbol("nimHasExceptionsQuery")
defineSymbol("nimHasIsNamedTuple")
defineSymbol("nimHashOrdinalFixed")
defineSymbol("nimHasSinkInference")
defineSymbol("nimNewIntegerOps")
defineSymbol("nimHasInvariant")
defineSymbol("nimHasStacktraceMsgs")
defineSymbol("nimHasLentIterators")
defineSymbol("nimHasDeclaredMagic")
defineSymbol("nimHasStacktracesModule")
defineSymbol("nimHasEffectTraitsModule")
defineSymbol("nimHasCastPragmaBlocks")
defineSymbol("nimHasDeclaredLocs")
defineSymbol("nimHasJsBigIntBackend")
defineSymbol("nimHasWarningAsError")
defineSymbol("nimHasHintAsError")
defineSymbol("nimHasSpellSuggest")
defineSymbol("nimHasCustomLiterals")
defineSymbol("nimHasUnifiedTuple")
defineSymbol("nimHasDragonBox")
defineSymbol("nimHasHintAll")
defineSymbol("nimHasTrace")
defineSymbol("nimHasEffectsOf")
defineSymbol("nimHasNkComesFromNodeRemoved")
defineSymbol("nimHasNkParForStmtNodeRemoved")
defineSymbol("nimHasTyConceptRemoved")
defineSymbol("nimHasNkBreakStateNodeRemoved")
defineSymbol("nimHasTyOwnedRemoved")
defineSymbol("nimskullReworkStaticExec")
defineSymbol("nimskullNoMagicNewAssign")
defineSymbol("nimskullNoFloat128")
defineSymbol("nimskullNewExceptionRt")
defineSymbol("nimskullNoNkStmtListTypeAndNkBlockType")
defineSymbol("nimskullNoNkNone")
defineSymbol("nimskullHasSupportsZeroMem")
defineSymbol("nimskullHasSuspend")