default_dialect.cpp 704 B

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