1 // RUN: %clang_cc1 -analyze -analyzer-checker=debug.DumpCFG -analyzer-config cfg-expand-default-aggr-inits=true %s > %t 2>&1 2 // RUN: FileCheck --input-file=%t %s 3 4 static char a[] = "foobar"; 5 6 struct StringRef { 7 const char *member = nullptr; 8 int len = 3; 9 }; 10 11 int main() { 12 StringRef s{a}; 13 (void)s; 14 } 15 16 // CHECK: [B1] 17 // CHECK-NEXT: 1: a 18 // CHECK-NEXT: 2: [B1.1] (ImplicitCastExpr, ArrayToPointerDecay, char *) 19 // CHECK-NEXT: 3: [B1.2] (ImplicitCastExpr, NoOp, const char *) 20 // CHECK-NEXT: 4: 3 21 // CHECK-NEXT: 5: 22 // CHECK-NEXT: 6: {[B1.1]} 23 // CHECK-NEXT: 7: StringRef s{a}; 24 // CHECK-NEXT: 8: s 25 // CHECK-NEXT: 9: (void)[B1.8] (CStyleCastExpr, ToVoid, void) 26 // CHECK-NEXT: Preds (1): B2 27 // CHECK-NEXT: Succs (1): B0 28 29