diff options
author | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-09-21 10:47:20 +0000 |
---|---|---|
committer | Argyrios Kyrtzidis <akyrtzi@gmail.com> | 2010-09-21 10:47:20 +0000 |
commit | ff8819be64c53d71dcc0200ece9b2738041c80e2 (patch) | |
tree | 06b2a1f19a8b2cdf3da026575161d3ab9b21d751 /test/SemaCXX/constructor-initializer.cpp | |
parent | 1cff132e48e0ccc253c34e5a2fb12718bd4e7d2e (diff) |
Do not warn with -Wuninitialized when the member is used in a sizeof or address-of expression.
Fixes rdar://8331312.
git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@114426 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'test/SemaCXX/constructor-initializer.cpp')
-rw-r--r-- | test/SemaCXX/constructor-initializer.cpp | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/test/SemaCXX/constructor-initializer.cpp b/test/SemaCXX/constructor-initializer.cpp index 31d53302bf..a74fbe1800 100644 --- a/test/SemaCXX/constructor-initializer.cpp +++ b/test/SemaCXX/constructor-initializer.cpp @@ -144,9 +144,13 @@ int IntWrapper(int i) { return 0; }; class InitializeUsingSelfExceptions { int A; int B; + int C; + void *P; InitializeUsingSelfExceptions(int B) : A(IntWrapper(A)), // Due to a conservative implementation, we do not report warnings inside function/ctor calls even though it is possible to do so. - B(B) {} // Not a warning; B is a local variable. + B(B), // Not a warning; B is a local variable. + C(sizeof(C)), // sizeof doesn't reference contents, do not warn + P(&P) {} // address-of doesn't reference contents (the pointer may be dereferenced in the same expression but it would be rare; and weird) }; class CopyConstructorTest { |