p1.cpp revision 69730c115c2d0fec2f20609d905d920a5a41b29b
1e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng// RUN: %clang_cc1 -fsyntax-only -verify %s 2e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 3e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Chengnamespace pr6200 { 4e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng struct v {}; 5e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng enum E { e }; 6e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng struct s { 7e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng int i; 8e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng operator struct v() { return v(); }; 9e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng operator enum E() { return e; } 10e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng }; 11e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng 12e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng void f() 13e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng { 14e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng // None of these is a declaration. 15e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng (void)new struct s; 16e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng (void)new enum E; 17e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng (void)&s::operator struct v; 18e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng (void)&s::operator enum E; 19e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng } 20e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng} 21e6e8a0bd7cffcc9ae2e0e75546fb12a19213d4aeBen Cheng