https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119308
--- Comment #6 from Peter Bergner <bergner at gcc dot gnu.org> --- (In reply to Peter Bergner from comment #5) > bergner@kubota:COBOL$ ./a.out > Hello, world! > Segmentation fault (core dumped) The return address at the beginning of main ends up not being the address we end up returning to, which leads to the segv, so it looks like the saved return address on the stack is getting corrupted.