-
Notifications
You must be signed in to change notification settings - Fork 444
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
emit() does not support structs #630
Comments
There is a PR queued with this feature. |
I lied, the PR is not yet submitted, it is only a commit in my repo, until I figure out some issues with BMv2. |
It is definitely an extremely useful feature that can relieve a lot of people from the necessity of spending time writing trivial deparsers. Once we allow header_unions in structs it will be doubly-useful and will also make code a lot safer. I wanted to demonstrate it in the training slides, but... So far, I decided to keep the slide, but put a "Not Implemented yet" note :( |
* Fix for issue #638 * IRGen fixes - support for autogenerating methods in nested classes - support for friend functions - misc bug fixes * cpplint fixes * Update comment * Minor change in bmv2 backend: set action_const (#652) In the bmv2 JSON, a match-table can indicate that its default action is constant (using 'action_const') and that the default action entry (action + action parameter values) is constant (using 'action_entry_const'). `action_entry_const == true => action_const == true`. The bmv2 backend was setting 'action_entry_const' correctly, but 'action_const' was always set to false. Note that P4_16 does not make a difference between the 2, the presence of `const` in the P4_16 source implies that both attributes should be true. * Fix for issue #629 (#636) * Support emits of structs; test parsing of varbit fields (#634) * Support emits of structs; test parsing of varbit fields * Fixes issue #447 and #630 * Updated reference outputs * Additional tests and bug-fixes for varbits * Fix for issue #638 * Allow empty actions list in tables
According to p4_16 specification:
However, the attempt to pass a struct to emit results in the following message:
results in the following message:
The text was updated successfully, but these errors were encountered: