unify tuple expressions (#13793)
* unify tuple expressions * fix test * fix test * apply feedback * Handle empty tuples * Fix rendering named unary tuple * Protect static NimNode against stripping * Slightly less hacky * Revert "Slightly less hacky" This reverts commit 170c5aec0addc029f637afbc948700ca006b7942. * Slightly less hacky * Cleanup * Fix test * Fix another test * Add condsym * Rebase fallout * changelog: Move from compiler changes to language changes * Add stricter tests * Add empty tuple example to doc/astspec * Fix test Co-authored-by: Clyybber <darkmine956@gmail.com>
This commit is contained in:
parent
35655cd189
commit
159c06e045
13 changed files with 136 additions and 32 deletions
|
|
@ -2228,6 +2228,12 @@ proc prepareVMValue(arg: PNode): PNode =
|
|||
if arg.kind in nkLiterals:
|
||||
return arg
|
||||
|
||||
if arg.kind == nkExprColonExpr and arg[0].typ != nil and
|
||||
arg[0].typ.sym != nil and arg[0].typ.sym.magic == mPNimrodNode:
|
||||
# Poor mans way of protecting static NimNodes
|
||||
# XXX: Maybe we need a nkNimNode?
|
||||
return arg
|
||||
|
||||
result = copyNode(arg)
|
||||
if arg.kind == nkTupleConstr:
|
||||
for child in arg:
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue