store full definition AST for consts, fix noRewrite (#20115)
* continue #9582 for consts, close #9331, fix #20114 also move extractPragma to ast to pave the way for things like {.strdefine: "abc".} etc * changelog correctly * fix jsgen * update tgetimpl * fix sighashes * fix #19766, add comment about postfix * fix noRewrite LOL refs #16620 * fix changelog * fix destructors
This commit is contained in:
parent
fdc6b0fb6e
commit
de4b0346bd
26 changed files with 176 additions and 65 deletions
16
tests/macros/t19766_20114.nim
Normal file
16
tests/macros/t19766_20114.nim
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
discard """
|
||||
action: compile
|
||||
nimout: '''
|
||||
const
|
||||
foo {.strdefine.} = "abc"
|
||||
let hey {.tddd.} = 5
|
||||
'''
|
||||
"""
|
||||
|
||||
import macros
|
||||
|
||||
template tddd {.pragma.}
|
||||
|
||||
expandMacros:
|
||||
const foo {.strdefine.} = "abc"
|
||||
let hey {.tddd.} = 5
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
discard """
|
||||
nimout: '''"muhaha"
|
||||
nimout: '''foo = "muhaha"
|
||||
proc poo(x, y: int) =
|
||||
let y = x
|
||||
echo ["poo"]'''
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue