p4.cpp 644 B

1234567891011121314151617181920212223
  1. // RUN: %clang_cc1 -ast-dump %s | FileCheck %s
  2. struct A { int x; };
  3. struct B { int y; };
  4. struct C : A, B { };
  5. // CHECK: casting_away_constness
  6. void casting_away_constness(const B &b, const C &c, const B *bp, const C *cp) {
  7. // CHECK: DerivedToBase (B)
  8. // CHECK: DeclRefExpr {{.*}} ParmVar {{.*}} 'c'
  9. (void)(B&)c;
  10. // CHECK: BaseToDerived (B)
  11. // CHECK: DeclRefExpr {{.*}} ParmVar {{.*}} 'b'
  12. (void)(C&)b;
  13. // CHECK: DerivedToBase (B)
  14. // CHECK: DeclRefExpr {{.*}} ParmVar {{.*}} 'cp'
  15. (void)(B*)cp;
  16. // CHECK: BaseToDerived (B)
  17. // CHECK: DeclRefExpr {{.*}} ParmVar {{.*}} 'bp'
  18. (void)(C*)bp;
  19. // CHECK: ReturnStmt
  20. return;
  21. }