From 9af2d654178bdeec97d956ae6fb4ae52cb9ac016 Mon Sep 17 00:00:00 2001 From: ToruNiina Date: Fri, 8 Nov 2019 15:36:58 +0900 Subject: [PATCH] feat: allow heterogenous array if TOML11_USE_UNRELEASED_TOML_FEATURES is activated. In TOML v0.5.0, heterogenous arrays are not allowed. But after some discussions in toml-lang/toml, it is decided to allow it in the next release (toml-lang/toml/pull/676). To support it, disable type check in parse_array function. --- toml/parser.hpp | 2 ++ 1 file changed, 2 insertions(+) diff --git a/toml/parser.hpp b/toml/parser.hpp index 9fd7097..0efccf0 100644 --- a/toml/parser.hpp +++ b/toml/parser.hpp @@ -938,6 +938,7 @@ parse_array(location& loc) if(auto val = parse_value(loc)) { +#ifndef TOML11_USE_UNRELEASED_TOML_FEATURES if(!retval.empty() && retval.front().type() != val.as_ok().type()) { auto array_start_loc = loc; @@ -956,6 +957,7 @@ parse_array(location& loc) } }), source_location(std::addressof(loc))); } +#endif retval.push_back(std::move(val.unwrap())); } else