http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59541
Bug ID: 59541 Summary: [4.9 Regression] Revision 206070 breaks bootstrap on darwin Product: gcc Version: 4.9.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap Assignee: unassigned at gcc dot gnu.org Reporter: dominiq at lps dot ens.fr CC: howarth at bromo dot med.uc.edu, iains at gcc dot gnu.org, marxin.liska at gmail dot com Target: *-*-darwin* Revision 206070 breaks bootstrap on darwin: /opt/gcc/build_c/./prev-gcc/xg++ -B/opt/gcc/build_c/./prev-gcc/ -B/opt/gcc/gcc4.9c/x86_64-apple-darwin13.0.0/bin/ -nostdinc++ -B/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/src/.libs -B/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/libsupc++/.libs -I/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/include/x86_64-apple-darwin13.0.0 -I/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/include -I/opt/gcc/_clean/libstdc++-v3/libsupc++ -L/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/src/.libs -L/opt/gcc/build_c/prev-x86_64-apple-darwin13.0.0/libstdc++-v3/libsupc++/.libs -c -g -O2 -gtoggle -DIN_GCC -fno-exceptions -fno-rtti -fasynchronous-unwind-tables -W -Wall -Wno-narrowing -Wwrite-strings -Wcast-qual -Wmissing-format-attribute -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror -fno-common -DHAVE_CONFIG_H -I. -I. -I../../_clean/gcc -I../../_clean/gcc/. -I../../_clean/gcc/../include -I./../intl -I../../_clean/gcc/../libcpp/include -I/opt/mp/include -I../../_clean/gcc/../libdecnumber -I../../_clean/gcc/../libdecnumber/dpd -I../libdecnumber -I../../_clean/gcc/../libbacktrace -DCLOOG_INT_GMP -I/opt/mp/include -o darwin.o -MT darwin.o -MMD -MP -MF ./.deps/darwin.TPo ../../_clean/gcc/config/darwin.c ../../_clean/gcc/config/darwin.c: In function 'section* darwin_function_section(tree, node_frequency, bool, bool)': ../../_clean/gcc/config/darwin.c:3665:1: error: control reaches end of non-void function [-Werror=return-type] } ^ cc1plus: all warnings being treated as errors I fixed it with the following patch: --- ../_clean/gcc/config/darwin.c 2013-12-17 23:28:53.000000000 +0100 +++ gcc/config/darwin.c 2013-12-18 00:46:28.000000000 +0100 @@ -3654,7 +3654,8 @@ darwin_function_section (tree decl, enum return (weak) ? darwin_sections[text_hot_coal_section] : darwin_sections[text_hot_section]; - break; + else + return text_section; } default: return (weak) Testing in progress.