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

--- Comment #2 from Steve Kargl <sgk at troutmask dot apl.washington.edu> ---
On Thu, May 03, 2018 at 11:12:26PM +0000, kargl at gcc dot gnu.org wrote:
> 
> #31 0x00000000008ad88d in gfc_code_walker (c=0x2ca231808, 
>     codefn=codefn@entry=0x8a90d0 <realloc_string_callback(gfc_code**, int*,
> void*)>, 
>     exprfn=exprfn@entry=0x8a6eb0 <dummy_expr_callback(gfc_expr**, int*,
> void*)>, data=data@entry=0x0) at ../../gcc/gcc/fortran/frontend-passes.c:4593
> 

gfortran seems to be stuck in an infinite loop and slowly
swallowing memory.

(gdb) c
Continuing.

Breakpoint 1, gfc_code_walker (c=0x203dc5008, 
    codefn=codefn@entry=0x8a90d0 <realloc_string_callback(gfc_code**, int*,
void*)>, 
    exprfn=exprfn@entry=0x8a6eb0 <dummy_expr_callback(gfc_expr**, int*,
void*)>, data=data@entry=0x0) at ../../gcc/gcc/fortran/frontend-passes.c:4566
4566      for (; *c; c = &(*c)->next)
(gdb) c
Continuing.

Breakpoint 2, realloc_string_callback (c=0x203dc5008, 
    walk_subtrees=0x7fffffffd14c, data=0x0)
    at ../../gcc/gcc/fortran/frontend-passes.c:248
248       if (co->op != EXEC_ASSIGN)


(gdb) list
4561
4562    int
4563    gfc_code_walker (gfc_code **c, walk_code_fn_t codefn, walk_expr_fn_t
exprfn,
4564                     void *data)
4565    {
4566      for (; *c; c = &(*c)->next)
4567        {
4568          int walk_subtrees = 1;
4569          int result = codefn (c, &walk_subtrees, data);
4570          if (result)

:-(

Reply via email to