This commit is contained in:
Araq 2014-07-08 02:02:58 +02:00
commit f16449ec22
5 changed files with 137 additions and 31 deletions

View file

@ -2,7 +2,13 @@ discard """
msg: '''a
s
d
f'''
f
TTaa
TTaa
TTaa
TTaa'''
output: '''test'''
"""
type
@ -18,3 +24,41 @@ macro test(): stmt =
echo i.s
test()
# bug 1297
import macros
type TType = tuple[s: string]
macro echotest(): stmt =
var t: TType
t.s = ""
t.s.add("test")
result = newCall(newIdentNode("echo"), newStrLitNode(t.s))
echotest()
# bug #1103
type
Td = tuple
a:string
b:int
proc get_data(d: Td) : string {.compileTime.} =
result = d.a # Works if a literal string is used here.
# Bugs if line A or B is active. Works with C
result &= "aa" # A
#result.add("aa") # B
#result = result & "aa" # C
macro m(s:static[Td]) : stmt =
echo get_data(s)
echo get_data(s)
result = newEmptyNode()
const s=("TT", 3)
m(s)
m(s)