https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110653
Bug ID: 110653 Summary: Support std::stoi etc. without C99 APIs Product: gcc Version: 14.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: redi at gcc dot gnu.org CC: danglin at gcc dot gnu.org, redi at gcc dot gnu.org, unassigned at gcc dot gnu.org Target Milestone: --- Host: hppa64-hp-hpux11.11 Target: hppa64-hp-hpux11.11 Build: hppa64-hp-hpux11.11 +++ This bug was initially created as a clone of Bug #110646 +++ g++ -std=c++11 -c -g -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwi nd-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wno-format -Wmiss ing-format-attribute -Wconditionally-supported -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -DHAVE_CONFIG_H -DGENERATOR_FILE -I. -Ibuild -I../../gcc/gcc -I../../gcc/gcc/build -I../../gcc/gcc/../include -I../../gcc/gcc/../libcpp/include \ -o build/gensupport.o ../../gcc/gcc/gensupport.cc ../../gcc/gcc/gensupport.cc: In constructor 'conlist::conlist(const char*, unsigned int, bool)': ../../gcc/gcc/gensupport.cc:643:18: error: 'stoi' is not a member of 'std'; did you mean 'atoi'? 643 | idx = std::stoi (name); | ^~~~ | atoi Build gcc is: gcc version 12.2.1 20230420 [remotes/origin/releases/gcc-12 r12-9449-g3907147aa9 b] (GCC) libstdc++ provides std::stoi in basic_string.h when _GLIBCXX_USE_C99_STDLIB is 1. However, hpux11.11 lacks all the routines needed when _GLIBCXX_USE_C99_STDLIB is 1. But it does have strtol, atol, atoi, strtoul, strtod and atof. strtoll and strtoull are not needed on hppa64 as long long and long are equivalent. So it seems the string conversion routines could be provided in basic_string.h for this target.