forked from OSchip/llvm-project
24 lines
616 B
C++
24 lines
616 B
C++
![]() |
// RUN: %clang_cc1 -ast-dump %s | FileCheck %s
|
||
|
|
||
|
struct A { int x; };
|
||
|
struct B { int y; };
|
||
|
struct C : A, B { };
|
||
|
|
||
|
// CHECK: casting_away_constness
|
||
|
void casting_away_constness(const B &b, const C &c, const B *bp, const C *cp) {
|
||
|
// CHECK: DerivedToBase (B)
|
||
|
// CHECK: DeclRefExpr {{.*}} ParmVar='c'
|
||
|
(void)(B&)c;
|
||
|
// CHECK: BaseToDerived (B)
|
||
|
// CHECK: DeclRefExpr {{.*}} ParmVar='b'
|
||
|
(void)(C&)b;
|
||
|
// CHECK: DerivedToBase (B)
|
||
|
// CHECK: DeclRefExpr {{.*}} ParmVar='cp'
|
||
|
(void)(B*)cp;
|
||
|
// CHECK: BaseToDerived (B)
|
||
|
// CHECK: DeclRefExpr {{.*}} ParmVar='bp'
|
||
|
(void)(C*)bp;
|
||
|
// CHECK: ReturnStmt
|
||
|
return;
|
||
|
}
|