| // Copyright (C) 2005 Free Software Foundation, Inc. |
| // Contributed by Nathan Sidwell 14 Jun 2005 <nathan@codesourcery.com> |
| |
| // PR 20678: ICE on error message |
| // Origin: Andrew Pinski pinskia@gcc.gnu.org |
| |
| // NOTE: This test assumes packed structure layout differs from unpacked |
| // structure layout. This isn't true, e.g., with the default |
| // arm-none-elf options. |
| // { dg-options "-mstructure-size-boundary=8" { target arm-*-* } } |
| |
| struct a |
| { |
| int m; |
| a(const a&); |
| }; |
| struct b |
| { // { dg-error "cannot bind packed field" "" { target { ! default_packed } } } |
| char c; |
| a aa __attribute__((packed)); // { dg-warning "attribute ignored" "" { target default_packed } } |
| }; |
| struct c |
| { |
| b bb; |
| c(const b& __a): bb(__a) {} // { dg-error "synthesized" "" { target { ! default_packed } } } |
| }; |