On Fri, 16 Jan 2026, LIU Hao wrote:

在 2026-1-15 22:16, Martin Storsjö 写道:
I did an one-off test with this, removing the special value handling: https://github.com/mstorsjo/llvm- project/commit/5045bfdef75e2be9fe465776ae6b8e880a4fc53a

With this change, some tests started failing in CI: https://github.com/mstorsjo/llvm-project/actions/ runs/21033791422

In particular, this makes the following test cases fail:

   Failed Tests (3):
     llvm-libc++abi-mingw.cfg.in :: forced_unwind1.pass.cpp
     llvm-libc++abi-mingw.cfg.in :: forced_unwind2.pass.cpp
     llvm-libc++abi-mingw.cfg.in :: forced_unwind3.pass.cpp


The number 4 can be changed to `EXCEPTION_DISPOSITION(4)` or `static_cast<EXCEPTION_DISPOSITION>(4)`.

That does fix the errors for returning this value, but it still doesn't help with the case for the switch case:

/home/martin/code/llvm-mingw/llvm-project/libunwind/src/Unwind-seh.cpp:272:8: error: case value is not a constant expression
  272 |   case EXCEPTION_DISPOSITION(4):
      |        ^~~~~~~~~~~~~~~~~~~~~~~~

/home/martin/code/llvm-mingw/llvm-project/libunwind/src/Unwind-seh.cpp:272:8: error: case value is not a constant expression
  272 |   case static_cast<EXCEPTION_DISPOSITION>(4):
      |        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// Martin

_______________________________________________
Mingw-w64-public mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mingw-w64-public

Reply via email to