GkvJwa wrote: > I'm not up-to-date with the full context here. Can you add to the description > that this is a followup to #172287? > > Maybe silly question, but why is this specific to `/EHa` and not having C++ > exceptions enabled in general (like `/EHs`)? > > Also the PR should probably have a test.
This issue(#62606) can probably answer most questions. The key point is that the handling of SEH in LLVM is not quite the same as in MSVC. Currently, it can be said that with LLVM, the code within the `__except` block is only explicitly generated when using `/eha`. When using `/ehsc` or `/ehs`, can the code in the `__except` block actually be affected by the code in the `__try` block. For example, if the actual crash occurs in the last function call within the `__try` block, the code in the `__except` block will not be generated correctly. test was included in the previous PR, Using `/ehsc` or `/ehs` results in unexpected code generation, making it impossible to create test cases. https://github.com/llvm/llvm-project/pull/180108 _______________________________________________ cfe-commits mailing list [email protected] https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
