// RUN: %clang_cc1 -analyze -analyzer-checker=core -analyzer-output=plist -o %t %s // RUN: FileCheck --input-file %t %s #include "undef-value-callee.h" // This code used to cause a crash since we were not adding fileID of the header to the plist diagnostic. int test_calling_unimportant_callee(int argc, char *argv[]) { int x; callee(); return x; // expected-warning {{Undefined or garbage value returned to caller}} } //CHECK: //CHECK: files //CHECK: //CHECK: //CHECK: diagnostics //CHECK: //CHECK: //CHECK: path //CHECK: //CHECK: //CHECK: kindevent //CHECK: location //CHECK: //CHECK: line9 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: ranges //CHECK: //CHECK: //CHECK: //CHECK: line9 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: line9 //CHECK: col7 //CHECK: file0 //CHECK: //CHECK: //CHECK: //CHECK: depth0 //CHECK: extended_message //CHECK: Variable 'x' declared without an initial value //CHECK: message //CHECK: Variable 'x' declared without an initial value //CHECK: //CHECK: //CHECK: kindcontrol //CHECK: edges //CHECK: //CHECK: //CHECK: start //CHECK: //CHECK: //CHECK: line9 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: line9 //CHECK: col5 //CHECK: file0 //CHECK: //CHECK: //CHECK: end //CHECK: //CHECK: //CHECK: line10 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: line10 //CHECK: col8 //CHECK: file0 //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: kindcontrol //CHECK: edges //CHECK: //CHECK: //CHECK: start //CHECK: //CHECK: //CHECK: line10 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: line10 //CHECK: col8 //CHECK: file0 //CHECK: //CHECK: //CHECK: end //CHECK: //CHECK: //CHECK: line11 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: line11 //CHECK: col8 //CHECK: file0 //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: kindevent //CHECK: location //CHECK: //CHECK: line11 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: ranges //CHECK: //CHECK: //CHECK: //CHECK: line11 //CHECK: col10 //CHECK: file0 //CHECK: //CHECK: //CHECK: line11 //CHECK: col10 //CHECK: file0 //CHECK: //CHECK: //CHECK: //CHECK: depth0 //CHECK: extended_message //CHECK: Undefined or garbage value returned to caller //CHECK: message //CHECK: Undefined or garbage value returned to caller //CHECK: //CHECK: //CHECK: descriptionUndefined or garbage value returned to caller //CHECK: categoryLogic error //CHECK: typeGarbage return value //CHECK: issue_context_kindfunction //CHECK: issue_contexttest_calling_unimportant_callee //CHECK: issue_hash3 //CHECK: location //CHECK: //CHECK: line11 //CHECK: col3 //CHECK: file0 //CHECK: //CHECK: //CHECK: //CHECK: //CHECK: