cc: add const arrays (wip)

Add a preliminary version of const arrays. It sorta works.
Right now this is limited to function-scope const arrays.
This commit is contained in:
Paul Mathieu
2021-07-26 00:02:14 -07:00
parent e7bab6e9e6
commit ef9a154681
2 changed files with 56 additions and 13 deletions

View File

@@ -41,10 +41,10 @@ local_var: type symbol initializer?
local_array: type symbol sized_array* (sized_array | empty_array) initializer? ";"
empty_array: "[" "]"
sized_array: "[" array_size "]"
initializer: "=" (expression | initializer_list)
?initializer: "=" (expression | initializer_list)
initializer_list: "{" [init_list_field ("," init_list_field)* ","? ] "}"
?init_list_field: "." field "=" expression
| expression
| prec14_expr
// precedence from https://en.cppreference.com/w/c/language/operator_precedence