1// RUN: not %clang_cc1 -triple x86_64-unknown-unknown -frecovery-ast -frecovery-ast-type -ast-dump %s | FileCheck -strict-whitespace %s 2 3@interface Foo 4- (void)method:(int)n; 5@end 6 7void k(Foo *foo) { 8 // CHECK: ObjCMessageExpr {{.*}} 'void' contains-errors 9 // CHECK-CHECK: |-ImplicitCastExpr {{.*}} 'Foo *' <LValueToRValue> 10 // CHECK-CHECK: | `-DeclRefExpr {{.*}} 'foo' 11 // CHECK-CHECK: `-RecoveryExpr {{.*}} 12 [foo method:undef]; 13 14 // CHECK: ImplicitCastExpr {{.*}} '<dependent type>' contains-errors 15 // CHECK-NEXT: `-RecoveryExpr {{.*}} '<dependent type>' contains-errors 16 // CHECK-NEXT: `-DeclRefExpr {{.*}} 'foo' 17 foo.undef; 18} 19