// { dg-do assemble } // g++ 1.37.1 bug 900520_02 // keywords: reference types, initialization, parameter passing typedef int b_array[3]; typedef int u_array[]; typedef b_array &b_array_ref; typedef u_array &u_array_ref; void take_b_array_ref (b_array_ref arg) { } // { dg-message "" } passed to here extern u_array u_array_gbl_obj; u_array_ref u_array_ref_gbl_obj0 = u_array_gbl_obj; b_array_ref b_array_ref_gbl_obj0 = u_array_ref_gbl_obj0; // { dg-error "" } invalid declaration void test_passing () { take_b_array_ref (u_array_ref_gbl_obj0); // { dg-error "" } invalid call } b_array u_array_gbl_obj; int main () { return 0; }