https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63936

            Bug ID: 63936
           Summary: ICE: libstdc++-v3/include/chrono:725:66: internal
                    compiler error: in adjust_temp_type, at
                    cp/constexpr.c:1020
           Product: gcc
           Version: 5.0
            Status: UNCONFIRMED
          Keywords: ice-on-valid-code
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: ktkachov at gcc dot gnu.org
                CC: jason at redhat dot com
            Target: arm-none-eabi

Starting with r217664:
Author: jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Mon Nov 17 18:16:19 2014 +0000

        * constexpr.c (use_new_call): Always use new call handling.


I see an ICE when building libstdc++ for arm-none-eabi:
$BLD/obj/gcc2/arm-none-eabi/libstdc++-v3/include/chrono:723:49:   in constexpr
expansion of 'std::chrono::duration<_Rep, _Period>::min<long long int,
std::ratio<1ll, 1000000000ll> >()'
$BLD/obj/gcc2/arm-none-eabi/libstdc++-v3/include/chrono:725:66:   in constexpr
expansion of 'std::chrono::duration<long long int, std::ratio<1ll,
1000000000ll> >((* & std::chrono::duration_values<_Rep>::min<long long
int>()))'
$BLD/obj/gcc2/arm-none-eabi/libstdc++-v3/include/chrono:725:66: internal
compiler error: in adjust_temp_type, at cp/constexpr.c:1020
       "a clock's minimum duration cannot be less than its epoch");
                                                                  ^
0x75e827 adjust_temp_type
        $SRC/gcc/cp/constexpr.c:1020
0x7650be cxx_eval_call_expression
        $SRC/gcc/cp/constexpr.c:1377
0x7650be cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2835
0x765602 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2895
0x76a6bb cxx_eval_store_expression
        $SRC/gcc/cp/constexpr.c:2529
0x765668 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2914
0x7656fe cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2926
0x76575d cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2940
0x764dd1 cxx_eval_call_expression
        $SRC/gcc/cp/constexpr.c:1329
0x764dd1 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2835
0x765602 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2895
0x7657d2 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2958
0x765e93 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:3147
0x765e93 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:3147
0x769dc5 cxx_bind_parameters_in_call
        $SRC/gcc/cp/constexpr.c:1072
0x7644f5 cxx_eval_call_expression
        $SRC/gcc/cp/constexpr.c:1235
0x7644f5 cxx_eval_constant_expression
        $SRC/gcc/cp/constexpr.c:2835
0x7667e3 cxx_eval_outermost_constant_expr
        $SRC/gcc/cp/constexpr.c:3314
0x769126 maybe_constant_value(tree_node*, tree_node*)
        $SRC/gcc/cp/constexpr.c:3427
0x6e6833 finish_static_assert(tree_node*, tree_node*, unsigned int, bool)
        $SRC/gcc/cp/semantics.c:7046
Please submit a full bug report,
with preprocessed source if appropriate.


This prevents the building of the arm-none-eabi toolchain, so it's quite
important

Reply via email to