ethereum/act

Ambiguous parse for read only storage blocks

d-xo opened this issue · 1 comments

d-xo commented

Consider the following spec:

behaviour f of C
interface f()

iff in range uint256

    x + y

storage

    x 
    y

returns x + y

The storage block is currently parsed into:

[ExtStorage "x" [Constant (Entry (AlexPn 168 19 5) "y" [])]]

When it should be parsed into:

[Constant (Entry (AlexPn 162 18 5) "x" []),Constant (Entry (AlexPn 173 19 5) "y" [])]

Perhaps we need to make the parser whitespace aware, or introduce some delimiters?

d-xo commented

@MrChico I guess we should try and remove all the shift / reduce conflicts from the parser stage?