On Mon, Mar 30, 2020 at 07:50:48PM +0200, Jakub Jelinek wrote: > On Mon, Mar 30, 2020 at 11:34:15AM -0600, Nathanael D. Noblet wrote: > > I have a project that isn't part of Fedora yet - though really I > > should add it at this point. Its php-cpp. It allows me to write c++ > > extensions for PHP. Its worked well for a couple years. I upgraded to > > F32 beta and now when compiling anything that includes its headers > > compilation fails and I'm not entirely sure why. > > > > g++ -MT pdf-image.o -MMD -MP -MF .d/pdf-image.Td -Wall -g -c -O2 > > -std=c++11 -fPIC `pkg-config poppler-cpp fontconfig openssl -- > > cflags` -DVERSION=\"0.11.16\" -c -o pdf-image.o pdf-image.cpp > > In file included from /usr/include/phpcpp.h:38, > > from pdf-image.cpp:8: > > /usr/include/phpcpp/throwable.h:29:1: error: expected class-name before > > ‘{’ token > > > > I've attached the header. Any gcc experts out there able to tell me > > what's wrong with the header format that used to compile but no longer > > does? > > Please mail me a preprocessed source instead (e.g. rerun the g++ command > line with -save-temps option and mail pdf-image.ii the compiler creates, > or drop -M* options and their arguments, change -c to -E and pdf-image.o > to pdf-image.ii). So, from the offlist posted preprocessed source, seems the TU includes the following libstdc++ headers #include <string> #include <vector> #include <memory> #include <list> #include <map> #include <set> #include <functional> and then uses std::runtime_exception. That one is defined in <stdexcept> header though, and is not included. Before https://gcc.gnu.org/legacy-ml/libstdc++/2019-06/msg00032.html change it has been included as implementation detail from headers included in <memory>, <map> or <functional> from the above list. So, you just need to make sure <stdexcept> is also included if you need classes from it. Jakub _______________________________________________ devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/ List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx