Files
Nim/tests/parser/t20922.nim
ringabout 38f876dd48 fixes #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now parses the whole module at one time (#21379)
* fixes #19795; remove parse pipeline

* isScript

* fixes nimscriptapi

* don't touch reorder

* check script

* fixes tests

* it seems implicit imports of system cause troubles

* access the first child of `nkStmtList`

* ignore comments

* minor messages

* perhaps increases hloLoopDetector

* the module is a stmtList, which changes the errors

* fixes nimdoc

* fixes tlinter

* fixes nim  secret tests

* fixes arc_misc

* fixes nim secret tests again

* safe; fixes one more test

* GlobalError is the root cause too

* fixes parsing errors

* put emit types to the cfsForwardTypes section

* fixes #11852; `{.push checks:off}` now works in procs

* disable navigator

* fixes nimdoc

* add tests for JS

* fixes nimsuggest
2023-02-22 20:34:20 +01:00

36 lines
1.1 KiB
Nim

discard """
cmd: "nim check $options --verbosity:0 --hints:off $file"
action: "reject"
nimout: '''
t20922.nim(26, 5) Error: expression expected, but found ':'
t20922.nim(34, 7) Error: expression expected, but found ':'
t20922.nim(35, 5) Error: ':' or '=' expected, but got 'keyword of'
Error: in expression ' '+'': identifier expected, but found ''
t20922.nim(26, 7) Error: attempting to call undeclared routine: '<Error>'
Error: in expression ' '+'': identifier expected, but found ''
t20922.nim(26, 7) Error: attempting to call undeclared routine: '<Error>'
t20922.nim(26, 7) Error: expression '' cannot be called
t20922.nim(26, 7) Error: expression '' has no type (or is ambiguous)
t20922.nim(26, 7) Error: VM problem: dest register is not set
'''
"""
# original test case issue #20922
type Token = enum
incDataPtr,
incDataPtrByte
proc mapInstrToToken(instr: char): Token =
case instr:
of '>':
incDataPtr
of: '+':
incDataPtrByte
# same issue with `of` in object branches (different parser procs calling `exprList`)
type
Bar = enum A, B
Foo = object
case kind: Bar
of: x: int
of B: y: float