fix #13255 (#13275) [backport]

This commit is contained in:
Arne Döring 2020-02-09 13:51:36 +01:00 • committed by GitHub
commit 2fee89f7db
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -945,9 +945,9 @@ proc semCase(c: PContext, n: PNode; flags: TExprFlags): PNode =
checkSonsLen(x, 1, c.config)
x[0] = semExprBranchScope(c, x[0])
typ = commonType(typ, x[0])
hasElse = true
if chckCovered and covered == toCover(c, n[0].typ):
if (chckCovered and covered == toCover(c, n[0].typ)) or hasElse:
localError(c.config, x.info, "invalid else, all cases are already covered")
hasElse = true
chckCovered = false
else:
illFormedAst(x, c.config)