From 30e304e2a646ccd5f34d5697cad0be9dcccfaa2d Mon Sep 17 00:00:00 2001 From: Richard Smith Date: Wed, 14 Dec 2016 00:03:17 +0000 Subject: Remove custom handling of array copies in lambda by-value array capture and copy constructors of classes with array members, instead using ArrayInitLoopExpr to represent the initialization loop. This exposed a bug in the static analyzer where it was unable to differentiate between zero-initialized and unknown array values, which has also been fixed here. llvm-svn: 289618 --- clang/test/CodeGenCXX/implicit-copy-constructor.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'clang/test/CodeGenCXX/implicit-copy-constructor.cpp') diff --git a/clang/test/CodeGenCXX/implicit-copy-constructor.cpp b/clang/test/CodeGenCXX/implicit-copy-constructor.cpp index d0224131c4d..3f8665aa3b4 100644 --- a/clang/test/CodeGenCXX/implicit-copy-constructor.cpp +++ b/clang/test/CodeGenCXX/implicit-copy-constructor.cpp @@ -48,12 +48,14 @@ void f(D d) { // CHECK: call void @_ZN1BC2ERS_ // CHECK: {{call void @llvm.memcpy.p0i8.p0i8.i64.*i64 28}} // CHECK: call void @_ZN1BC1ERS_ -// CHECK: br -// CHECK: {{icmp ult.*, 2}} -// CHECK: {{icmp ult.*, 3}} +// CHECK: br label // CHECK: call void @_ZN1AC1Ev // CHECK: call void @_ZN1CC1ERS_1A // CHECK: call void @_ZN1AD1Ev +// CHECK: {{icmp eq.*, 3}} +// CHECK: br i1 +// CHECK: {{icmp eq.*, 2}} +// CHECK: br i1 // CHECK: {{call void @llvm.memcpy.p0i8.p0i8.i64.*i64 300}} // CHECK: ret void -- cgit v1.2.3