default_dialect.cpp 783 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #include "cxx_std.h"
  2. template <long l>
  3. struct Outputter;
  4. #if DEFAULT_CXX26
  5. # if CXX_STD <= CXX_STD_23
  6. Outputter<CXX_STD> o;
  7. # endif
  8. #elif DEFAULT_CXX23
  9. # if CXX_STD <= CXX_STD_20
  10. Outputter<CXX_STD> o;
  11. # endif
  12. #elif DEFAULT_CXX20
  13. # if CXX_STD <= CXX_STD_17
  14. Outputter<CXX_STD> o;
  15. # endif
  16. #elif DEFAULT_CXX17
  17. # if CXX_STD <= CXX_STD_14
  18. Outputter<CXX_STD> o;
  19. # endif
  20. #elif DEFAULT_CXX14
  21. # if CXX_STD <= CXX_STD_11
  22. Outputter<CXX_STD> o;
  23. # endif
  24. #elif DEFAULT_CXX11
  25. # if CXX_STD != CXX_STD_11
  26. Outputter<CXX_STD> o;
  27. # endif
  28. #else
  29. # if !DEFAULT_CXX98
  30. # error Buildsystem error
  31. # endif
  32. # if CXX_STD != CXX_STD_98 && CXX_STD != 1 && \
  33. !defined(__GXX_EXPERIMENTAL_CXX0X__)
  34. Outputter<CXX_STD> o;
  35. # endif
  36. #endif
  37. int main()
  38. {
  39. return 0;
  40. }