xref: /aosp_15_r20/external/clang/test/CodeGenCXX/member-init-assignment.cpp (revision 67e74705e28f6214e480b399dd47ea732279e315)
1*67e74705SXin Li // RUN: %clang_cc1 %s -triple i386-unknown-unknown -emit-llvm -o - | FileCheck %s
2*67e74705SXin Li // PR7291
3*67e74705SXin Li 
4*67e74705SXin Li struct Foo {
5*67e74705SXin Li   unsigned file_id;
6*67e74705SXin Li 
7*67e74705SXin Li   Foo(unsigned arg);
8*67e74705SXin Li };
9*67e74705SXin Li 
Foo(unsigned arg)10*67e74705SXin Li Foo::Foo(unsigned arg) : file_id(arg = 42)
11*67e74705SXin Li { }
12*67e74705SXin Li 
13*67e74705SXin Li // CHECK: define {{.*}} @_ZN3FooC2Ej(%struct.Foo* %this, i32 %arg) unnamed_addr
14*67e74705SXin Li // CHECK: [[ARG:%.*]] = alloca i32
15*67e74705SXin Li // CHECK: store i32 42, i32* [[ARG]]
16*67e74705SXin Li // CHECK: store i32 42, i32* %{{.*}}
17*67e74705SXin Li // CHECK: ret {{void|%struct.Foo}}
18