Skip to content

Commit

Permalink
report expression has no type other than has to be used (or discarded…
Browse files Browse the repository at this point in the history
…) when typ is tyNone in discardCheck
  • Loading branch information
bung87 committed Sep 20, 2022
1 parent a302b26 commit 97d2b80
Show file tree
Hide file tree
Showing 2 changed files with 9 additions and 0 deletions.
3 changes: 3 additions & 0 deletions compiler/semstmts.nim
Original file line number Diff line number Diff line change
Expand Up @@ -139,6 +139,9 @@ proc discardCheck(c: PContext, result: PNode, flags: TExprFlags) =
var n = newNodeI(nkDiscardStmt, result.info, 1)
n[0] = result
elif result.typ.kind != tyError and c.config.cmd != cmdInteractive:
if result.typ.kind == tyNone:
localError(c.config, result.info, "expression has no type: " &
renderTree(result, {renderNoComments}))
var n = result
while n.kind in skipForDiscardable:
if n.kind == nkTryStmt: n = n[0]
Expand Down
6 changes: 6 additions & 0 deletions tests/errmsgs/t8064.nim
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
discard """
errormsg: "expression has no type: values"
"""
import tables

values

0 comments on commit 97d2b80

Please sign in to comment.