| // RUN: %clang_cc1 -fsyntax-only -verify %s | 
 |  | 
 | typedef int Arr[10]; | 
 |  | 
 | typedef int trungl_int; | 
 |  | 
 | void f(int a[10], Arr arr) { // expected-note 4 {{declared here}} | 
 |  | 
 |   /* Should warn. */ | 
 |   (void)sizeof(a);  // \ | 
 |       // expected-warning{{sizeof on array function parameter will return size of 'int *' instead of 'int [10]'}} | 
 |   (void)sizeof((((a))));  // \ | 
 |       // expected-warning{{sizeof on array function parameter will return size of 'int *' instead of 'int [10]'}} | 
 |   (void)sizeof a;  // \ | 
 |       // expected-warning{{sizeof on array function parameter will return size of 'int *' instead of 'int [10]'}} | 
 |   (void)sizeof arr;  // \ | 
 |       // expected-warning{{sizeof on array function parameter will return size of 'int *' instead of 'Arr' (aka 'int [10]')}} | 
 |  | 
 |   /* Shouldn't warn. */ | 
 |   int b[10]; | 
 |   (void)sizeof b; | 
 |   Arr brr; | 
 |   (void)sizeof brr; | 
 |   (void)sizeof(Arr); | 
 |   (void)sizeof(int); | 
 | } |