From cdd8dee205290c45b28f8c00aaefe06e30d60e8f Mon Sep 17 00:00:00 2001 From: Stephen Webb Date: Fri, 2 Aug 2024 12:56:22 +1000 Subject: [PATCH] Add a diagnostic hint to input stream error --- include/boost/archive/basic_text_iprimitive.hpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/include/boost/archive/basic_text_iprimitive.hpp b/include/boost/archive/basic_text_iprimitive.hpp index 606f59f580..2546017070 100644 --- a/include/boost/archive/basic_text_iprimitive.hpp +++ b/include/boost/archive/basic_text_iprimitive.hpp @@ -26,6 +26,7 @@ #include #include // size_t +#include // itoa #include #if defined(BOOST_NO_STDC_NAMESPACE) @@ -86,10 +87,13 @@ class BOOST_SYMBOL_VISIBLE basic_text_iprimitive { template void load(T & t) { + auto pos = is.tellg(); if(is >> t) return; + static char at_offset[64] = "at offset "; + itoa(pos, &at_offset[10], 10); boost::serialization::throw_exception( - archive_exception(archive_exception::input_stream_error) + archive_exception(archive_exception::input_stream_error, at_offset) ); }