Remove expr/stmt (#5857)
This commit is contained in:
parent
52ff244d5d
commit
000b8afd26
168 changed files with 497 additions and 529 deletions
|
|
@ -8,7 +8,7 @@ discard """
|
|||
type Foo* {.pure, final.} = object
|
||||
elt: float
|
||||
|
||||
template defineOpAssign(T: expr, op: expr) {.immediate.} =
|
||||
template defineOpAssign(T, op: untyped) {.immediate.} =
|
||||
proc op*(v: var T, w: T) {.inline.} =
|
||||
for i in 0..1:
|
||||
op(v.elt, w.elt)
|
||||
|
|
@ -18,7 +18,7 @@ const ATTEMPT = 0
|
|||
when ATTEMPT == 0:
|
||||
# FAILS: defining `/=` with template calling template
|
||||
# ERROR about sem.nim line 144
|
||||
template defineOpAssigns(T: expr) {.immediate.} =
|
||||
template defineOpAssigns(T: untyped) =
|
||||
mixin `/=`
|
||||
defineOpAssign(T, `/=`)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue