1*e3ea001eSRichard Smith // RUN: %clang_cc1 -fsyntax-only -verify -std=c++98 %s 2*e3ea001eSRichard Smith // RUN: %clang_cc1 -fsyntax-only -verify -std=c++11 %s 3d6bc5e6bSDouglas Gregor // RUN: %clang_cc1 -fsyntax-only -verify %s 4c6e68daaSAndy Gibbs // expected-no-diagnostics 5d6bc5e6bSDouglas Gregor namespace std { 6d6bc5e6bSDouglas Gregor class bad_alloc { }; 7d6bc5e6bSDouglas Gregor 8d6bc5e6bSDouglas Gregor typedef __SIZE_TYPE__ size_t; 9d6bc5e6bSDouglas Gregor } 10d6bc5e6bSDouglas Gregor 11d6bc5e6bSDouglas Gregor class foo { virtual ~foo(); }; 12d6bc5e6bSDouglas Gregor 13d6bc5e6bSDouglas Gregor void* operator new(std::size_t); 14d6bc5e6bSDouglas Gregor void* operator new[](std::size_t); 15d6bc5e6bSDouglas Gregor void operator delete(void*); 16d6bc5e6bSDouglas Gregor void operator delete[](void*); 17