diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 88bfa5b9f70..170d3ce67e9 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -2056,6 +2056,19 @@ ac_cv_c_float_format='IEEE (little-endian)' #$configure-flags)))) ((#:phases phases) #~(modify-phases #$phases + (add-after 'unpack 'adjust-builtin-cplusplus-variable + (lambda _ + ;; These values are backported from later releases of GCC. + ;; See gcc commit 1fb80b0c5359f696aa61d537e25b7901d8b56ff7. + (substitute* "libcpp/init.c" + (("_cpp_define_builtin \\(pfile, \"__cplusplus 1\"\\);") + (string-append "{ + if (CPP_OPTION (pfile, lang) == CLK_CXX0X + || CPP_OPTION (pfile, lang) == CLK_GNUCXX0X) + _cpp_define_builtin (pfile, \"__cplusplus 201103L\"); + else + _cpp_define_builtin (pfile, \"__cplusplus 199711L\"); + }"))))) (add-after 'apply-riscv64-patch 'apply-second-riscv64-patch (lambda* (#:key inputs #:allow-other-keys) (let ((patch-file