Home | History | Annotate | Download | only in dcl.init.ref
      1 // RUN: %clang_cc1 -fsyntax-only -verify %s
      2 
      3 namespace PR5909 {
      4   struct Foo {
      5     int x : 20;
      6   };
      7 
      8   bool Test(const int& foo);
      9 
     10   const Foo f = { 0 };  // It compiles without the 'const'.
     11   bool z = Test(f.x);
     12 }
     13 
     14 namespace PR6264 {
     15   typedef int (&T)[3];
     16   struct S
     17   {
     18     operator T ();
     19   };
     20   void f()
     21   {
     22     T bar = S();
     23   }
     24 }
     25 
     26 namespace PR6066 {
     27   struct B { };
     28   struct A : B {
     29     operator B*();
     30     operator B&(); // expected-warning{{conversion function converting 'PR6066::A' to its base class 'PR6066::B' will never be used}}
     31   };
     32 
     33   void f(B&); // no rvalues accepted
     34   void f(B*);
     35 
     36   int g() {
     37     f(A()); // calls f(B*)
     38     return 0;
     39   }
     40 }
     41