Andrew Trick
fc60925a38
LocalVariableUtils: add support for temporary enum initialization.
2024-04-12 14:11:37 -07:00
Andrew Trick
e77fff3d23
LocalVariableUtils logging
2024-03-18 17:45:33 -07:00
Andrew Trick
f1fbbcd438
Handle escaping addresses in LocalVariableAccessWalker
...
Fixes rdar://124564951 (Compiler crash when evaluating pointer escape
in autoclosure; LifetimeDepenenceScopeFixup; Fatal error: check
findPointerEscape() before computing interior liveness.)
2024-03-18 17:45:33 -07:00
Andrew Trick
00fbf4f1af
LocalVariableUtils logging
2024-03-18 17:45:33 -07:00
Andrew Trick
aa208bbf91
Add SILType::containsNoEscapeFunction()
...
Add PartialApplyInst.hasNoescapeCapture
Add PartialApplyInst.mayEscape
Refactor DiagnoseInvalidEscapingCaptures. This may change functionality because tuples containing a noescape closure are now correctly recognized. Although I'm not sure such tupes can ever be captured directly.
2024-03-18 17:38:12 -07:00
Andrew Trick
ffe9c48976
Add LocalVariableUtils
...
This includes a reaching-def analysis that can be used by diagnostic passes. Diagnostics should be flow-sensitive.
2024-03-05 18:08:16 -08:00