X-Git-Url: http://bilbo.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/18da30894e88a2ab587f793e3ec500b1842c0966..3f9b311ec56db95ec539001a860ae3c838c48312:/src/xbt/xbt_str.cpp diff --git a/src/xbt/xbt_str.cpp b/src/xbt/xbt_str.cpp index 3759f495ff..10e00c0215 100644 --- a/src/xbt/xbt_str.cpp +++ b/src/xbt/xbt_str.cpp @@ -1,6 +1,6 @@ /* xbt_str.cpp - various helping functions to deal with strings */ -/* Copyright (c) 2007-2021. The SimGrid Team. All rights reserved. */ +/* Copyright (c) 2007-2023. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ @@ -12,36 +12,36 @@ /** @brief Parse an integer out of a string, or raise an error * - * The @a str is passed as argument to your @a error_msg, as follows: - * @verbatim throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); @endverbatim + * The @a str is concatenated to your @a error_msg, as follows: + * @verbatim throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s", error_msg, str)); @endverbatim */ long int xbt_str_parse_int(const char* str, const char* error_msg) { char* endptr; if (str == nullptr || str[0] == '\0') - throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); + throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s", error_msg, str)); long int res = strtol(str, &endptr, 10); if (endptr[0] != '\0') - throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); + throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s", error_msg, str)); return res; } /** @brief Parse a double out of a string, or raise an error * - * The @a str is passed as argument to your @a error_msg, as follows: - * @verbatim throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); @endverbatim + * The @a str is concatenated to your @a error_msg, as follows: + * @verbatim throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s", error_msg, str)); @endverbatim */ double xbt_str_parse_double(const char* str, const char* error_msg) { char *endptr; if (str == nullptr || str[0] == '\0') - throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); + throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s", error_msg, str)); double res = strtod(str, &endptr); if (endptr[0] != '\0') - throw std::invalid_argument(simgrid::xbt::string_printf(error_msg, str)); + throw std::invalid_argument(simgrid::xbt::string_printf("%s: %s (parse error at '%s')", error_msg, str, endptr)); return res; }