From d2ec62779fcd15dfc4f6d03e6bac4e92bf7bd5b1 Mon Sep 17 00:00:00 2001 From: neargye Date: Thu, 7 Apr 2022 19:24:11 +0400 Subject: [PATCH] fix operator>> --- include/magic_enum.hpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/include/magic_enum.hpp b/include/magic_enum.hpp index 5388f02..3a66d4b 100644 --- a/include/magic_enum.hpp +++ b/include/magic_enum.hpp @@ -1357,9 +1357,11 @@ namespace istream_operators { template = 0> std::basic_istream& operator>>(std::basic_istream& is, E& value) { - std::basic_string in; - is >> in; - if (const auto v = enum_cast(in)) { + using D = std::decay_t; + + std::basic_string s; + is >> s; + if (const auto v = enum_cast(s)) { value = *v; } else { is.setstate(std::ios::failbit);