From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 658453858005; Thu, 19 Oct 2023 08:00:29 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 658453858005 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1697702429; bh=DmaZ+NZz8/nTJRvD2Yqpn/tehUIUtuGUWVmWiS+dDEg=; h=From:To:Subject:Date:In-Reply-To:References:From; b=jmLYCZWotkroBjaS3zsSnor2WbUyVKxXGdAdpstWVJdhUKk5A7sWlPJGM0yYvX3hi bUnYFtpT0tltstlpIpyL4GqPWVcSD67y7qSHMqY3xqSSVNI+FN20PiCDHM6MAxQe1g GzUcutyLcrsd7bOX9QPNka70fUJESVq/TE7klMwY= From: "aluaces at udc dot es" To: gcc-bugs@gcc.gnu.org Subject: [Bug fortran/110644] Error in gfc_format_decoder Date: Thu, 19 Oct 2023 08:00:27 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: fortran X-Bugzilla-Version: 13.1.0 X-Bugzilla-Keywords: X-Bugzilla-Severity: normal X-Bugzilla-Who: aluaces at udc dot es X-Bugzilla-Status: WAITING X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D110644 --- Comment #6 from Alberto Luaces --- Thanks a lot for the guidance. This is the backtrace of the last call to gcc_assert() that makes it crash. It says something about a non-recursive function likely calling itself. I = will inspect my source, even it is a bit too big. Maybe a better solution would= be if I compiled gcc with debugging flags. Can I just use C_FLAGS=3D"-O0 -g" = and CXX_FLAGS=3D"-O0 -g" at configure time, or if is there a specific configure= flag? 1078 gcc_assert (loc->nextc - loc->lb->line >=3D 0); (gdb) bt #0 gfc_format_decoder (pp=3D0x2706750, text=3D0x7fffffffb840, spec=3D0x270= 8d10 "L", precision=3D, wide=3Dfalse, set_locus=3Dfalse, hash=3Dfalse, quoted=3D0x7fffffffb667, buffer_ptr=3D0x2708b00) at ../../gcc-13.2.0/gcc/fortran/error.cc:1078 #1 0x0000000001b44c0a in pp_format (pp=3D, text=3Dtext@entry=3D0x7fffffffb840) at ../../gcc-13.2.0/gcc/pretty-print.cc= :1475 #2 0x0000000001b34e02 in diagnostic_report_diagnostic (context=3D0x26ee380 , diagnostic=3Ddiagnostic@entry=3D0x7fffffffb840= ) at ../../gcc-13.2.0/gcc/diagnostic.cc:1592 #3 0x000000000071cbc8 in gfc_report_diagnostic (diagnostic=3D0x7fffffffb84= 0) at ../../gcc-13.2.0/gcc/fortran/error.cc:890 #4 gfc_warning(int, const char *, typedef __va_list_tag __va_list_tag *) (opt=3D0, gmsgid=3D0x1c9c420 "Non-RECURSIVE procedure %qs at %L is possibly calli= ng itself recursively. Declare it RECURSIVE or use %<-frecursive%>", ap=3Dap@entry=3D0x7fffffffb9c8) at ../../gcc-13.2.0/gcc/fortran/error.cc:923 #5 0x000000000071d287 in gfc_warning (opt=3Dopt@entry=3D0, gmsgid=3Dgmsgid@entry=3D0x1c9c420 "Non-RECURSIVE procedure %qs at %L is pos= sibly calling itself recursively. Declare it RECURSIVE or use %<-frecursive%>") at ../../gcc-13.2.0/gcc/fortran/error.cc:954 #6 0x00000000007a275f in resolve_procedure_expression (expr=3D0x32a9530) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:1956 #7 resolve_variable (e=3D0x32a9530) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:6066 #8 gfc_resolve_expr (e=3De@entry=3D0x32a9530) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:7302 #9 0x000000000079ffca in gfc_resolve_expr (e=3D0x32a9530) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:7267 #10 resolve_structure_cons (expr=3D, init=3Dinit@entry=3D1) = at ../../gcc-13.2.0/gcc/fortran/resolve.cc:1341 #11 0x00000000007b0f02 in resolve_values (sym=3D0x3285270) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:12802 #12 0x00000000007c79d3 in do_traverse_symtree (st=3D, st_func=3Dst_func@entry=3D0x0, sym_func=3D0x7b0e80 ) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4198 #13 0x00000000007d080d in gfc_traverse_ns (ns=3D, sym_func=3D) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4223 #14 0x00000000007a7671 in resolve_types (ns=3Dns@entry=3D0x2bf2140) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:17932 #15 0x00000000007ae8dd in gfc_resolve (ns=3D0x2bf2140) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:18029 #16 0x000000000079d711 in resolve_symbol (sym=3D) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:16601 #17 0x00000000007c79d3 in do_traverse_symtree (st=3D, st_func=3Dst_func@entry=3D0x0, sym_func=3D0x79b5f0 ) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4198 #18 0x00000000007d080d in gfc_traverse_ns (ns=3D, sym_func=3D) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4223 #19 0x00000000007a759f in resolve_types (ns=3Dns@entry=3D0x2b5ed60) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:17914 #20 0x00000000007ae8dd in gfc_resolve (ns=3D0x2b5ed60) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:18029 #21 0x000000000079d711 in resolve_symbol (sym=3D) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:16601 #22 0x00000000007c79d3 in do_traverse_symtree (st=3D, st_func=3Dst_func@entry=3D0x0, sym_func=3D0x79b5f0 ) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4198 #23 0x00000000007d080d in gfc_traverse_ns (ns=3D, sym_func=3D) at ../../gcc-13.2.0/gcc/fortran/symbol.cc:4223 #24 0x00000000007a759f in resolve_types (ns=3Dns@entry=3D0x27b4340) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:17914 #25 0x00000000007ae8dd in gfc_resolve (ns=3D0x27b4340) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:18029 #26 0x000000000079b5de in gfc_resolve (ns=3D) at ../../gcc-13.2.0/gcc/fortran/resolve.cc:18016 #27 0x000000000078dbf0 in gfc_parse_file () at ../../gcc-13.2.0/gcc/fortran/parse.cc:6861 #28 0x00000000007e6160 in gfc_be_parse_file () at ../../gcc-13.2.0/gcc/fortran/f95-lang.cc:229 #29 0x0000000000d021fe in compile_file () at ../../gcc-13.2.0/gcc/toplev.cc= :444 #30 0x00000000006df6fe in do_compile (no_backend=3Dfalse) at ../../gcc-13.2.0/gcc/toplev.cc:2125 #31 toplev::main (this=3Dthis@entry=3D0x7fffffffe0de, argc=3D, argc@entry=3D13, argv=3D, argv@entry=3D0x7fffffffe208) at ../../gcc-13.2.0/gcc/toplev.cc:2277 #32 0x00000000006e13bb in main (argc=3D13, argv=3D0x7fffffffe208) at ../../gcc-13.2.0/gcc/main.cc:39=