Author: aaronballman
Date: Thu Nov 29 04:45:50 2018
New Revision: 347860

URL: http://llvm.org/viewvc/llvm-project?rev=347860&view=rev
Log:
Adding a FIXME test to document an area for improvement with the cert-err58-cpp 
check; NFC.

Modified:
    clang-tools-extra/trunk/test/clang-tidy/cert-static-object-exception.cpp

Modified: 
clang-tools-extra/trunk/test/clang-tidy/cert-static-object-exception.cpp
URL: 
http://llvm.org/viewvc/llvm-project/clang-tools-extra/trunk/test/clang-tidy/cert-static-object-exception.cpp?rev=347860&r1=347859&r2=347860&view=diff
==============================================================================
--- clang-tools-extra/trunk/test/clang-tidy/cert-static-object-exception.cpp 
(original)
+++ clang-tools-extra/trunk/test/clang-tidy/cert-static-object-exception.cpp 
Thu Nov 29 04:45:50 2018
@@ -260,4 +260,16 @@ auto Okay4 = []{ U u; return u.getBadLam
 auto NotOkay3 = []() noexcept { U u; return u.getBadLambda(); }()(); // 
Because the lambda returned and called is not noexcept
 // CHECK-EXCEPTIONS: :[[@LINE-1]]:6: warning: initialization of 'NotOkay3' 
with static storage duration may throw an exception that cannot be caught 
[cert-err58-cpp]
 // CHECK-EXCEPTIONS: :[[@LINE-6]]:12: note: possibly throwing function 
declared here
+
+#ifndef NONEXCEPTIONS
+struct Bad {
+  Bad() {
+    throw 12;
+  }
+};
+
+static auto NotOkay4 = [bad = Bad{}](){};
+// FIXME: the above should be diagnosed because the capture init can trigger
+// an exception when constructing the Bad object.
+#endif // NONEXCEPTIONS
 }


_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to