From: Ted Kremenek Date: Thu, 12 Apr 2012 20:03:47 +0000 (+0000) Subject: Add -Wuninitialized test for C++11 lambdas. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=c02af35e92909d672b67efee407d2cee6d6d86e5;p=clang Add -Wuninitialized test for C++11 lambdas. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@154608 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/test/SemaCXX/uninitialized.cpp b/test/SemaCXX/uninitialized.cpp index 15c06eb421..7879e7c753 100644 --- a/test/SemaCXX/uninitialized.cpp +++ b/test/SemaCXX/uninitialized.cpp @@ -1,4 +1,4 @@ -// RUN: %clang_cc1 -fsyntax-only -Wall -Wuninitialized -verify %s +// RUN: %clang_cc1 -fsyntax-only -Wall -Wuninitialized -std=c++11 -verify %s int foo(int x); int bar(int* x); @@ -162,3 +162,8 @@ int pr12325(int params) { return x; } +// Test lambda expressions with -Wuninitialized +int test_lambda() { + auto f1 = [] (int x, int y) { int z; return x + y + z; }; // expected-warning {{C++11 requires lambda with omitted result type to consist of a single return statement}} expected-warning{{variable 'z' is uninitialized when used here}} expected-note {{initialize the variable 'z' to silence this warning}} + return f1(1, 2); +}