case coverage error message for char (#12948)

This commit is contained in:
Jasper Jenkins 2019-12-22 01:10:46 -08:00 • committed by Andreas Rumpf
commit 2e7c9eb6a8
3 changed files with 15 additions and 6 deletions

View file

@ -2,9 +2,10 @@ discard """
cmd: "nim check $file"
errormsg: "not all cases are covered; missing: {A, B}"
nimout: '''
tincompletecaseobject2.nim(16, 1) Error: not all cases are covered; missing: {B, C, D}
tincompletecaseobject2.nim(19, 1) Error: not all cases are covered; missing: {A, C}
tincompletecaseobject2.nim(22, 1) Error: not all cases are covered; missing: {A, B}
tincompletecaseobject2.nim(18, 1) Error: not all cases are covered; missing: {' ', '!', '\"', '#', '$', '%', '&', '\'', '*', '+', ',', '-', '.', '/', ':', ';', '<', '=', '>', '?', '@', '[', '\\', ']', '^', '_', '`', '{', '|', '}', '~'}
tincompletecaseobject2.nim(22, 1) Error: not all cases are covered; missing: {B, C, D}
tincompletecaseobject2.nim(25, 1) Error: not all cases are covered; missing: {A, C}
tincompletecaseobject2.nim(28, 1) Error: not all cases are covered; missing: {A, B}
'''
"""
type
@ -12,6 +13,11 @@ type
AliasABCD = ABCD
RangeABC = range[A .. C]
AliasRangeABC = RangeABC
PrintableChars = range[' ' .. '~']
case PrintableChars 'x':
of '0'..'9', 'A'..'Z', 'a'..'z': discard
of '(', ')': discard
case AliasABCD A:
of A: discard