summary refs log tree commit diff stats
path: root/tests/misc/tconv.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/misc/tconv.nim')
-rw-r--r--tests/misc/tconv.nim43
1 files changed, 43 insertions, 0 deletions
diff --git a/tests/misc/tconv.nim b/tests/misc/tconv.nim
new file mode 100644
index 000000000..2384c3e9d
--- /dev/null
+++ b/tests/misc/tconv.nim
@@ -0,0 +1,43 @@
+template reject(x) =
+    static: assert(not compiles(x))
+
+reject:
+    const x = int8(300)
+
+reject:
+    const x = int64(NaN)
+
+type
+    R = range[0..10]
+
+reject:
+    const x = R(11)
+
+reject:
+    const x = R(11.0)
+
+reject:
+    const x = R(NaN)
+
+reject:
+    const x = R(Inf)
+
+type
+    FloatRange = range[0'f..10'f]
+
+reject:
+    const x = FloatRange(-1'f)
+
+reject:
+    const x = FloatRange(-1)
+
+reject:
+    const x = FloatRange(NaN)
+
+block:
+    const x = float32(NaN)
+
+type E = enum a, b, c
+
+reject:
+    const e = E(4)