Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@AlexGuteniev
Copy link
Contributor

Towards #3888

The following cases do not require terminate(), changed to abort():

  • _Ref_count_base in <memory> for /crl:pure. That was pure call surrogate. Pure CLR can't handle pure calls
  • _Execute_once in excptptr.cpp. It doesn't fail if callback doesn't fail (and the sync object isn't broken)
  • Handle closure in filesystem.cpp. Fail with broken or already closed handles. Catch that with debugger / app verifier, otherwise abort().
  • SRW lock infinite wait. Never fails, except maybe for a broken lock.

Deliberately omitted ppltask.cpp - not sure about that. Looks like that's the last odd terminate(), other terminate()s look legit

@AlexGuteniev AlexGuteniev requested a review from a team as a code owner July 26, 2023 19:57
@StephanTLavavej StephanTLavavej added the enhancement Something can be improved label Jul 26, 2023
@AlexGuteniev
Copy link
Contributor Author

Deliberately omitted ppltask.cpp - not sure about that. Looks like that's the last odd terminate(), other terminate()s look legit

This one seem to be mandated by exception from parallel algorithm requirement and so it is odd that there's an attempt to fastfail before termitate.

@StephanTLavavej StephanTLavavej removed their assignment Jul 26, 2023
* Qualify all calls to "pretty" names in `excptrptr.cpp`, `filesystem.cpp`, `primitives.hpp`, and `iosptrs.cpp`
* Don't qualify calls to "pretty" names in `mutex.cpp` and `stacktrace.cpp`
This reverts commit 327c5f6.

This is too much change for this tiny PR. I'll make the files consistent in a followup.
* Don't qualify only the call to `abort` in `mutex.cpp`.
* Don't call `_CSTD abort` in `stacktrace.cpp` when all other such calls are `std::`-qualified
@StephanTLavavej
Copy link
Member

I'm mirroring this to the MSVC-internal repo - please notify me if any further changes are pushed.

@StephanTLavavej StephanTLavavej merged commit 2c2cac5 into microsoft:main Aug 1, 2023
@StephanTLavavej
Copy link
Member

🚨 💥 ☠️

@AlexGuteniev AlexGuteniev deleted the panic branch August 2, 2023 05:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement Something can be improved

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants