Nate Foster
Nate Foster
FWIW, Petr4 accepts this. I think `p4c` is overly conservative here.
@hesingh I don't think it has to be an error. Parser starts can be declared in any order. So the transition may legally be to the state `t`.
Petr4 accepts it.
@thomascalvert-xlnx in general, we are conservative about adding types and primitives to `core.p4` as they must be implemented by every architecture (and therefore every compiler backend). So for `assert` and...
Agree. Just adding polymorphic lists would be an easy task.
Just wanted to say that this question is a good one. We should nail it down.
Just to note: given mutable state (e.g., registers, or even a header stack) and any form of recirculation, it probably won't be decidable whether a table is bidirectional or unidirectional.
Another reason to have traits/type families...
One PR seems fine to me, if it's all confined to the grammar.
Sounds great. This will be a valuable improvement of hygiene!