diff --git a/include/toml++/impl/header_end.h b/include/toml++/impl/header_end.h index 1c5a4b1..698d99d 100644 --- a/include/toml++/impl/header_end.h +++ b/include/toml++/impl/header_end.h @@ -6,6 +6,8 @@ #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; diff --git a/include/toml++/impl/header_start.h b/include/toml++/impl/header_start.h index f23019b..646c752 100644 --- a/include/toml++/impl/header_start.h +++ b/include/toml++/impl/header_start.h @@ -5,7 +5,9 @@ //# }} TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min diff --git a/toml.hpp b/toml.hpp index 5d04095..e5a6715 100644 --- a/toml.hpp +++ b/toml.hpp @@ -1223,7 +1223,9 @@ TOML_DISABLE_WARNINGS; TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -2129,15 +2131,19 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/print_to_stream.h ************************************************************************************ TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -2265,15 +2271,19 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/source_region.h ************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -2385,15 +2395,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/date_time.h ****************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -2725,8 +2739,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/at_path.h ******************************************************************************************** @@ -2779,7 +2795,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -3360,8 +3378,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/std_utility.h **************************************************************************************** @@ -3374,7 +3394,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -3977,8 +3999,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/std_initializer_list.h ******************************************************************************* @@ -3991,7 +4015,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -4496,15 +4522,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/value.h ********************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -5572,15 +5602,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/make_node.h ****************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -5748,15 +5782,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/array.h ********************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -6839,15 +6877,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/key.h ************************************************************************************************ TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -7098,8 +7140,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/std_map.h ******************************************************************************************** @@ -7113,7 +7157,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -8258,15 +8304,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/unicode_autogenerated.h ****************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -8446,15 +8496,19 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/unicode.h ******************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -8648,8 +8702,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/parse_error.h **************************************************************************************** @@ -8668,7 +8724,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -8770,8 +8828,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_PARSER @@ -8782,7 +8842,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9117,8 +9179,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_PARSER && !TOML_EXCEPTIONS @@ -9129,7 +9193,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9232,8 +9298,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_PARSER @@ -9244,7 +9312,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9428,8 +9498,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -9440,7 +9512,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9529,8 +9603,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -9541,7 +9617,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9615,8 +9693,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -9627,7 +9707,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9706,8 +9788,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -9744,7 +9828,9 @@ extern "C" __declspec(dllimport) int __stdcall MultiByteToWideChar(unsigned int TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -9811,8 +9897,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_WINDOWS @@ -9833,7 +9921,9 @@ TOML_DISABLE_WARNINGS; TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -10298,15 +10388,19 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/node.inl ********************************************************************************************* TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -10435,8 +10529,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/at_path.inl ****************************************************************************************** @@ -10450,7 +10546,9 @@ TOML_DISABLE_WARNINGS; TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -10724,8 +10822,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/path.inl ********************************************************************************************* @@ -10738,7 +10838,9 @@ TOML_DISABLE_WARNINGS; TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -11222,15 +11324,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/array.inl ******************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -11605,15 +11711,19 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/table.inl ******************************************************************************************** TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -11923,8 +12033,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/simd.h *********************************************************************************************** @@ -11962,7 +12074,9 @@ TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -12014,8 +12128,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; //******** impl/parser.inl ******************************************************************************************* @@ -12037,7 +12153,9 @@ TOML_DISABLE_WARNINGS; TOML_ENABLE_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -15911,8 +16029,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_PARSER @@ -15923,7 +16043,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -16421,8 +16543,10 @@ TOML_IMPL_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -16433,7 +16557,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -16825,8 +16951,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -16837,7 +16965,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -16946,8 +17076,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS @@ -16958,7 +17090,9 @@ TOML_POP_WARNINGS; TOML_PUSH_WARNINGS; #ifdef _MSC_VER +#ifndef __clang__ #pragma inline_recursion(on) +#endif #pragma push_macro("min") #pragma push_macro("max") #undef min @@ -17111,8 +17245,10 @@ TOML_NAMESPACE_END; #ifdef _MSC_VER #pragma pop_macro("min") #pragma pop_macro("max") +#ifndef __clang__ #pragma inline_recursion(off) #endif +#endif TOML_POP_WARNINGS; #endif // TOML_ENABLE_FORMATTERS