default_dialect.cpp 566 B

1234567891011121314151617181920212223242526272829303132333435
  1. template <long l>
  2. struct Outputter;
  3. #if defined(_MSC_VER) && defined(_MSVC_LANG)
  4. #define CXX_STD _MSVC_LANG
  5. #else
  6. #define CXX_STD __cplusplus
  7. #endif
  8. #if DEFAULT_CXX17
  9. #if CXX_STD <= 201402L
  10. Outputter<CXX_STD> o;
  11. #endif
  12. #elif DEFAULT_CXX14
  13. #if CXX_STD != 201402L
  14. Outputter<CXX_STD> o;
  15. #endif
  16. #elif DEFAULT_CXX11
  17. #if CXX_STD != 201103L
  18. Outputter<CXX_STD> o;
  19. #endif
  20. #else
  21. #if !DEFAULT_CXX98
  22. #error Buildsystem error
  23. #endif
  24. #if CXX_STD != 199711L && CXX_STD != 1 && !defined(__GXX_EXPERIMENTAL_CXX0X__)
  25. Outputter<CXX_STD> o;
  26. #endif
  27. #endif
  28. int main()
  29. {
  30. return 0;
  31. }