1a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedman// RUN: %clang_cc1 %s -triple i686-pc-win32 -fsyntax-only -std=c++98 -Wmicrosoft -verify -fms-compatibility -fexceptions -fcxx-exceptions
2a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedman
3a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedman
4a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedman//MSVC allows forward enum declaration
5a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedmanenum ENUM; // expected-warning {{forward references to 'enum' types are a Microsoft extension}}
6a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli FriedmanENUM *var = 0;
7a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli FriedmanENUM var2 = (ENUM)3;
8a2d7dfab309375fbf016b650fa74f9b5d03a9752Eli Friedmanenum ENUM1* var3 = 0;// expected-warning {{forward references to 'enum' types are a Microsoft extension}}
9