|  | // RUN: %clang_cc1 -Wmissing-variable-declarations -fsyntax-only -verify %s | 
|  |  | 
|  | int vbad1; // expected-warning{{no previous extern declaration for non-static variable 'vbad1'}} | 
|  | // expected-note@-1{{declare 'static' if the variable is not intended to be used outside of this translation unit}} | 
|  |  | 
|  | int vbad2; | 
|  | int vbad2 = 10; // expected-warning{{no previous extern declaration for non-static variable 'vbad2'}} | 
|  | // expected-note@-1{{declare 'static' if the variable is not intended to be used outside of this translation unit}} | 
|  |  | 
|  | struct { // expected-note{{declare 'static' if the variable is not intended to be used outside of this translation unit}} | 
|  | int mgood1; | 
|  | } vbad3; // expected-warning{{no previous extern declaration for non-static variable 'vbad3'}} | 
|  |  | 
|  | int vbad4; | 
|  | int vbad4 = 10; // expected-warning{{no previous extern declaration for non-static variable 'vbad4'}} | 
|  | // expected-note@-1{{declare 'static' if the variable is not intended to be used outside of this translation unit}} | 
|  | extern int vbad4; | 
|  |  | 
|  | extern int vgood1; | 
|  | int vgood1; | 
|  | int vgood1 = 10; |