This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/64947] Internal compiler error: in gimplify_expr, at gimplify.c:8425


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

Tobias Burnus <burnus at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ice-on-valid-code
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2015-02-05
                 CC|                            |burnus at gcc dot gnu.org
     Ever confirmed|0                           |1
      Known to fail|                            |4.8.3, 4.9.0, 5.0

--- Comment #2 from Tobias Burnus <burnus at gcc dot gnu.org> ---
If fails for:
8837          gcc_assert (!VOID_TYPE_P (TREE_TYPE (*expr_p)));

which is:
(gdb) p debug_tree(*expr_p)
 <mem_ref 0x7ffff20f8ca8
    type <void_type 0x7ffff1f4c000 void VOID
        align 8 symtab 0 alias set -1 canonical type 0x7ffff1f4c000
        pointer_to_this <pointer_type 0x7ffff1f4c150>>
    arg 0 <var_decl 0x7ffff1f3cc60 D.3415
        type <pointer_type 0x7ffff1f4c150 type <void_type 0x7ffff1f4c000 void>
[...]
    arg 1 <integer_cst 0x7ffff1f31fd8 type <pointer_type 0x7ffff1f4c150>
        constant 0> foo.f90:40:0>

The variable mentioned appears in the 
    void * D.3415;
    D.3415 = (*strings)[0];
    D.3417 = strnlen (*D.3415, 40);
    c_string (&pstr.1, MAX_EXPR <(integer(kind=4)) D.3417, 0>, D.3415);

And the problem is that the TREE_TYPE (*expr_p) _is_ a void pointer.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]