rjmccall added a comment. Sorry, I responded as if you were modifying the guards of static constructors, but you're actually modifying the guards of thread locals. I apologize for the confusion. However, my substantive points actually all still hold:
- we have to generate code that behaves correctly in the presence of exceptions - providing access to an uninitialized variable is worse than recursively re-entering initialization; in either case, the program is incorrect, and the latter is much more likely to cause an immediate failure at runtime - the real fix requires a more elaborate code sequence Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D135919/new/ https://reviews.llvm.org/D135919 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits