https://gcc.gnu.org/bugzilla/show_bug.cgi?id=110419
--- Comment #6 from Mikael Morin <mikael at gcc dot gnu.org> --- I finally got my access on gcc110 working. (gdb) r Starting program: /home/mmorin/gcc-pr110360/pr110360/pr110419_comment4 Program received signal SIGSEGV, Segmentation fault. 0x10000684 in val (x=..., c=..., _x=268635256, _c=268635135) at pr110419_comment4.f90:6 6 subroutine val (x, c) (gdb) x/4cb &x 0x10000abc: 65 'A' 0 '\000' 0 '\000' 0 '\000' (gdb) x/4cb &c 0xfffef30c: 0 '\000' 0 '\000' 0 '\000' 8 '\b' (gdb) p _x $1 = 268635256 (gdb) p _c $2 = 268635135 (gdb) info registers r0 0x10000804 268437508 r1 0xfffef1a0 4294898080 r2 0xf7fe9e40 4160659008 r3 0x10000abc 268438204 r4 0x41 65 r5 0x1 1 r6 0x1 1 r7 0x0 0 r8 0xfd60354 265683796 r9 0x10000000 268435456 r10 0xfffef338 4294898488 r11 0xfffef338 4294898488 r12 0x24000842 603981890 r13 0x10028028 268599336 r14 0x0 0 r15 0x0 0 r16 0x0 0 r17 0x0 0 r18 0x0 0 r19 0x0 0 r20 0x0 0 r21 0x0 0 r22 0x0 0 r23 0x0 0 r24 0x0 0 r25 0x0 0 r26 0x0 0 r27 0xf7fdf970 4160616816 r28 0xf7fe0000 4160618496 r29 0x0 0 r30 0x41 65 r31 0xfffef1a0 4294898080 pc 0x10000684 0x10000684 <val+32> msr 0xd032 53298 cr 0x24000842 603981890 lr 0x10000804 0x10000804 <p+80> ctr 0xfc248a0 264390816 xer 0x0 0 fpscr 0x0 0 vscr 0x10000 65536 vrsave 0xffffffff -1 orig_r3 0x10000800 268437504 trap 0x300 768 (gdb) p &x $3 = (PTR TO -> ( character*1 )) 0x10000abc The debug info seems to be somewhat broken, but the arguments seem to be passed to r3, r4, r5, r6 registers and have the right value there. (gdb) disass Dump of assembler code for function val: 0x10000664 <+0>: stwu r1,-400(r1) 0x10000668 <+4>: mflr r0 0x1000066c <+8>: stw r0,404(r1) 0x10000670 <+12>: stw r30,392(r1) 0x10000674 <+16>: stw r31,396(r1) 0x10000678 <+20>: mr r31,r1 0x1000067c <+24>: stw r3,360(r31) 0x10000680 <+28>: mr r30,r4 => 0x10000684 <+32>: lbz r9,0(r30) 0x10000688 <+36>: stb r9,364(r31) 0x1000068c <+40>: stw r5,368(r31) 0x10000690 <+44>: stw r6,372(r31) 0x10000694 <+48>: stw r11,376(r31) 0x10000698 <+52>: lis r9,4096 0x1000069c <+56>: addi r9,r9,2676 Not sure I read assembly correctly, but looks like we are trying to load the second argument (available in r4) by reference instead of by value. I don't know what to look at next.