https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110646
Bug ID: 110646
Summary: gensupport.cc:643:18: error: 'stoi' is not a member of
'std'
Product: gcc
Version: 14.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: libstdc++
Assignee: unassigned at gcc dot gnu.org
Reporter: danglin at gcc dot gnu.org
CC: redi at gcc dot gnu.org
Target Milestone: ---
Host: hppa64-hp-hpux11.11
Target: hppa64-hp-hpux11.11
Build: hppa64-hp-hpux11.11
Created attachment 55532
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55532&action=edit
Fix for build error.
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.