summary refs log tree commit diff stats
path: root/tests/init/tuninit1.nim
diff options
context:
space:
mode:
Diffstat (limited to 'tests/init/tuninit1.nim')
-rw-r--r--tests/init/tuninit1.nim36
1 files changed, 36 insertions, 0 deletions
diff --git a/tests/init/tuninit1.nim b/tests/init/tuninit1.nim
new file mode 100644
index 000000000..ac3007e8d
--- /dev/null
+++ b/tests/init/tuninit1.nim
@@ -0,0 +1,36 @@
+discard """
+  nimout: "tuninit1.nim(34, 11) Warning: use explicit initialization of 'y' for clarity [Uninit]"
+  action: compile
+"""
+
+import strutils
+{.experimental: "strictDefs".}
+{.warning[Uninit]:on.}
+
+proc p =
+  var x, y, z: int
+  if stdin.readLine == "true":
+    x = 34
+
+    while false:
+      y = 999
+      break
+
+    while true:
+      if x == 12: break
+      y = 9999
+
+    try:
+      z = parseInt("1233")
+    except Exception:
+      case x
+      of 34: z = 123
+      of 13: z = 34
+      else: z = 8
+  else:
+    y = 3444
+    x = 3111
+    z = 0
+  echo x, y, z
+
+p()