diff options
| author | Jordan Rose <jordan_rose@apple.com> | 2014-04-24 17:27:18 +0000 |
|---|---|---|
| committer | Jordan Rose <jordan_rose@apple.com> | 2014-04-24 17:27:18 +0000 |
| commit | 7d2a5e6862f9098985ef9ff87d29dd6c130ad742 (patch) | |
| tree | 6a806149d97b23bda767459e1ad273eaacf59270 | |
| parent | d1ab86686876eb84692eb258b06c62beb79ad601 (diff) | |
| download | bcm5719-llvm-7d2a5e6862f9098985ef9ff87d29dd6c130ad742.tar.gz bcm5719-llvm-7d2a5e6862f9098985ef9ff87d29dd6c130ad742.zip | |
Squelch leak found by LSan by handling missing switch case.
Also, use the enum type in the switch so this doesn't happen again.
PR19523
llvm-svn: 207128
| -rw-r--r-- | clang/lib/Sema/DelayedDiagnostic.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clang/lib/Sema/DelayedDiagnostic.cpp b/clang/lib/Sema/DelayedDiagnostic.cpp index 533b7ef3e87..ddecfdb3765 100644 --- a/clang/lib/Sema/DelayedDiagnostic.cpp +++ b/clang/lib/Sema/DelayedDiagnostic.cpp @@ -52,12 +52,13 @@ DelayedDiagnostic::makeAvailability(Sema::AvailabilityDiagnostic AD, } void DelayedDiagnostic::Destroy() { - switch (Kind) { + switch (static_cast<DDKind>(Kind)) { case Access: getAccessData().~AccessedEntity(); break; - case Deprecation: + case Deprecation: + case Unavailable: delete [] DeprecationData.Message; break; |

