diff --git a/compiler/semtypes.nim b/compiler/semtypes.nim index da7576ca4a..e2f91587ff 100644 --- a/compiler/semtypes.nim +++ b/compiler/semtypes.nim @@ -2234,6 +2234,9 @@ proc semTypeNode(c: PContext, n: PNode, prev: PType): PType = result = semAnyRef(c, n, tyPtr, prev) elif op.id == ord(wRef): result = semAnyRef(c, n, tyRef, prev) + elif op.id == ord(wStatic): + checkSonsLen(n, 2, c.config) + result = semStaticType(c, n[1], prev) elif op.id == ord(wType): checkSonsLen(n, 2, c.config) result = semTypeOf(c, n[1], prev) diff --git a/tests/generics/tgeneric0.nim b/tests/generics/tgeneric0.nim index 76e9cd8d51..db749a38d3 100644 --- a/tests/generics/tgeneric0.nim +++ b/tests/generics/tgeneric0.nim @@ -219,3 +219,6 @@ block: # bug #19531 x.cb() y.cb() + +block: + proc r(_: typedesc, _: static uint | static int) = discard; r(uint, 0)