diff --git a/src/Language/SystemVerilog/Parser/Parse.y b/src/Language/SystemVerilog/Parser/Parse.y index e9c5b13..6aae3ce 100644 --- a/src/Language/SystemVerilog/Parser/Parse.y +++ b/src/Language/SystemVerilog/Parser/Parse.y @@ -1175,7 +1175,11 @@ PatternNamedItem :: { (Identifier, Expr) } : Identifier ":" Expr { ($1, $3) } | "default" ":" Expr { (tokenString $1, $3) } PatternUnnamedItems :: { [Expr] } - : Exprs { $1 } + : PatternUnnamedItem { [$1] } + | PatternUnnamedItems "," PatternUnnamedItem { $1 ++ [$3] } +PatternUnnamedItem :: { Expr } + : Expr { $1 } + | Expr Concat { Repeat $1 $2 } Concat :: { [Expr] } : "{" Exprs "}" { $2 }