diff options
author | alaviss <alaviss@users.noreply.github.com> | 2020-01-23 12:45:31 +0000 |
---|---|---|
committer | Andreas Rumpf <rumpf_a@web.de> | 2020-01-23 13:45:31 +0100 |
commit | f500895efe84525c131beadd2e83b30caa6674a3 (patch) | |
tree | 2562499459cbbe87f50c9a1401c27f8a0177bbe9 /compiler/ccgexprs.nim | |
parent | 3a5056dc70102e4d6dafaa0e0914ae48326c5f4a (diff) | |
download | Nim-f500895efe84525c131beadd2e83b30caa6674a3.tar.gz |
Unexport even more symbols (#13214)
* system/gc: don't export markStackAndRegisters * compiler/cgen: unexport internal symbols As these functions are Nim-specific walkaround against C's optimization schemes, they don't serve any purpose being exported. * compiler/cgen: don't export global var unless marked * compiler/ccgthreadvars: don't export threadvar unless marked * tests/dll/visibility: also check for exports This ensure that these changes don't break manual exports. * compiler/cgen: hide all variables created for constants * compiler/ccgtypes: don't export RTTI variables * compiler/ccgexprs: make all complex const static * nimbase.h: fix export for windows * compiler/cgen, ccgthreadvars: export variables correctly For C/C++ variables, `extern` means that the variable is defined in an another unit. Added a new N_LIB_EXPORT_VAR to correctly export variables.
Diffstat (limited to 'compiler/ccgexprs.nim')
-rw-r--r-- | compiler/ccgexprs.nim | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/compiler/ccgexprs.nim b/compiler/ccgexprs.nim index fd4556687..d718eab42 100644 --- a/compiler/ccgexprs.nim +++ b/compiler/ccgexprs.nim @@ -1325,7 +1325,7 @@ proc rawConstExpr(p: BProc, n: PNode; d: var TLoc) = if id == p.module.labels: # expression not found in the cache: inc(p.module.labels) - p.module.s[cfsData].addf("NIM_CONST $1 $2 = $3;$n", + p.module.s[cfsData].addf("static NIM_CONST $1 $2 = $3;$n", [getTypeDesc(p.module, t), d.r, genBracedInit(p, n, isConst = true)]) proc handleConstExpr(p: BProc, n: PNode, d: var TLoc): bool = @@ -2508,7 +2508,7 @@ proc exprComplexConst(p: BProc, n: PNode, d: var TLoc) = if id == p.module.labels: # expression not found in the cache: inc(p.module.labels) - p.module.s[cfsData].addf("NIM_CONST $1 $2 = $3;$n", + p.module.s[cfsData].addf("static NIM_CONST $1 $2 = $3;$n", [getTypeDesc(p.module, t), tmp, genBracedInit(p, n, isConst = true)]) if d.k == locNone: @@ -2896,7 +2896,7 @@ proc genConstSeq(p: BProc, n: PNode, t: PType; isConst: bool): Rope = let base = t.skipTypes(abstractInst)[0] appcg(p.module, cfsData, - "$5 struct {$n" & + "static $5 struct {$n" & " #TGenericSeq Sup;$n" & " $1 data[$2];$n" & "} $3 = $4;$n", [ |