1 // bindgen-flags: --rust-target 1.0 --with-derive-hash --with-derive-partialeq --impl-partialeq --with-derive-eq 2 3 class C { 4 int a; 5 // More than rust limits (32) 6 char big_array[33]; 7 }; 8 9 class C_with_zero_length_array { 10 int a; 11 // More than rust limits (32) 12 char big_array[33]; 13 char zero_length_array[0]; 14 }; 15 16 class C_with_zero_length_array_2 { 17 int a; 18 char zero_length_array[0]; 19 }; 20 21 class C_with_incomplete_array { 22 int a; 23 // More than rust limits (32) 24 char big_array[33]; 25 char incomplete_array[]; 26 }; 27 28 class C_with_incomplete_array_2 { 29 int a; 30 char incomplete_array[]; 31 }; 32 33 34 class C_with_zero_length_array_and_incomplete_array { 35 int a; 36 // More than rust limits (32) 37 char big_array[33]; 38 char zero_length_array[0]; 39 char incomplete_array[]; 40 }; 41 42 class C_with_zero_length_array_and_incomplete_array_2 { 43 int a; 44 char zero_length_array[0]; 45 char incomplete_array[]; 46 }; 47 48 49 class WithDtor { 50 int b; 51 ~WithDtor()52 ~WithDtor() {} 53 }; 54 55 class IncompleteArrayNonCopiable { 56 void* whatever; 57 C incomplete_array[]; 58 }; 59 60 union Union { 61 float d; 62 int i; 63 }; 64 65 class WithUnion { 66 Union data; 67 }; 68 69 class RealAbstractionWithTonsOfMethods { 70 void foo(); 71 public: 72 void bar() const; 73 void bar(); 74 void bar(int foo); 75 static void sta(); 76 }; 77