On Thu, Mar 18, 2021 at 11:35 AM Marek Polacek via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> As discussed in the r11-7709 patch, we can now make sure that tsubst
> never sees a FLOAT_EXPR, much like its counterpart FIX_TRUNC_EXPR.
>
> Tested x86_64-pc-linux-gnu, applying to trunk.
>
> gcc/cp/ChangeLog:
>
>         * pt.c (tsubst_copy_and_build): Add assert.
> ---
>  gcc/cp/pt.c | 2 ++
>  1 file changed, 2 insertions(+)
>
> diff --git a/gcc/cp/pt.c b/gcc/cp/pt.c
> index 5e485f10d19..ea530ef36f4 100644
> --- a/gcc/cp/pt.c
> +++ b/gcc/cp/pt.c
> @@ -19770,6 +19770,8 @@ tsubst_copy_and_build (tree t,
>                                 complain|decltype_flag));
>
>      case FIX_TRUNC_EXPR:
> +    case FLOAT_EXPR:
> +      /* convert_like should have created an IMPLICIT_CONV_EXPR.  */
>        gcc_unreachable ();
>
>      case ADDR_EXPR:
>
> base-commit: 55308fc26318427c1438cecc60ddd7ba24d5cd33
> --
> 2.30.2
>

This may have caused:

https://gcc.gnu.org/pipermail/gcc-regression/2021-March/074461.html

FAIL: g++.dg/torture/pr85013.C   -O0  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O0  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O0  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O0   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O0   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O0   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O0  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O0  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O0  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O1  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O1  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O1  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O1   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O1   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O1   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O1  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O1  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O1  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fno-use-linker-plugin
-flto-partition=none  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2 -flto -fuse-linker-plugin
-fno-fat-lto-objects  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O2   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O2  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O2  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -O3 -g   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O3 -g   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O3 -g   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -O3 -g  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -Os  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -Os  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -Os  (internal compiler error)
FAIL: g++.dg/torture/pr85013.C   -Os   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -Os   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -Os   (test for errors, line 3)
FAIL: g++.dg/torture/pr85013.C   -Os  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -Os  (test for excess errors)
FAIL: g++.dg/torture/pr85013.C   -Os  (test for excess errors)



-- 
H.J.

Reply via email to