← All tasks
cppWebAssembly/wabt #1811Not a task: already works

Move to c++ 17

envgap__WebAssembly__wabt-1811

01 / FAILURE SIGNATURE

As reported upstream

No identifying execution failure has been captured.
Not a benchmark task.
  • The project already builds and runs before the fix, so there is nothing to repair.

02 / ENVIRONMENT RECIPE

Base commit
11ed776f627535b4e851fcebfd52276de668f3f3
Manifest
CMakeLists.txt
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

WebAssembly/wabt #1811 · read the original issue
Some features are really hard to implement without typed unions like std::variant and other features from c++17.



For example, with typed function references and gc proposal we have named types during parsing `(ref null $foo_func)` and `(ref null $struct_type)` but we can't just add `std::string` to struct Type because we use Type as a member of unions in `struct InitExpr` and `struct ActionResult`. So, in the end we need to maintain maps: type_name -> its index during parsing and this is awful because possibly any thing in WebAssembly from local and global to function and table can have named type.



It is 2022 and we still use c++ 2011, so I propose to move to c++17, wdyt? @sbc100 
Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]