xref: /llvm-project/clang/test/CodeGenCXX/vlt_to_reference.cpp (revision 7cb17890114fa63ecdc440e1e2376726cc8fce19)
1*7cb17890SAlexey Bataev // RUN: %clang_cc1 %s -emit-llvm -o - | FileCheck %s
2*7cb17890SAlexey Bataev 
3*7cb17890SAlexey Bataev // CHECK-LABEL: @main
4*7cb17890SAlexey Bataev 
5*7cb17890SAlexey Bataev struct dyn_array {
6*7cb17890SAlexey Bataev     int size;
7*7cb17890SAlexey Bataev     int data[];
8*7cb17890SAlexey Bataev };
9*7cb17890SAlexey Bataev 
foo(dyn_array ** & d)10*7cb17890SAlexey Bataev int foo(dyn_array **&d) {
11*7cb17890SAlexey Bataev   return (*d)->data[1];
12*7cb17890SAlexey Bataev }
13*7cb17890SAlexey Bataev 
main()14*7cb17890SAlexey Bataev int main()
15*7cb17890SAlexey Bataev {
16*7cb17890SAlexey Bataev     dyn_array **d;
17*7cb17890SAlexey Bataev     return foo(d);
18*7cb17890SAlexey Bataev 
19*7cb17890SAlexey Bataev     // CHECK: call {{.+}} @{{.+}}foo{{.+}}(
20*7cb17890SAlexey Bataev     // CHECK: ret i{{[0-9]+}}
21*7cb17890SAlexey Bataev }
22*7cb17890SAlexey Bataev 
23