1 /* { dg-options "-O2 -std=c++11 -fdump-ipa-inline"  } */
2 #include <new>
3 
4 class EmbeddedObject {
5 public:
val()6   virtual int val() { return 2; }
7 };
8 
9 class Container {
alignas(EmbeddedObject)10   alignas(EmbeddedObject) char buffer[sizeof(EmbeddedObject)];
11 public:
12   EmbeddedObject *obj() { return (EmbeddedObject*)buffer; }
Container()13   Container() { new (buffer) EmbeddedObject(); }
14 };
15 
16 Container o;
17 
main()18 int main()
19 {
20   __builtin_printf("%d\n", o.obj()->val());
21 }
22 /* { dg-final { scan-ipa-dump-not "__builtin_unreachable"  "inline"  } } */
23