https://gcc.gnu.org/bugzilla/show_bug.cgi?id=119414
James K. Lowden <jklowden at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jklowden at gcc dot gnu.org --- Comment #1 from James K. Lowden <jklowden at gcc dot gnu.org> --- (In reply to Iain Sandoe from comment #0) > 1. -rdynamic (this might not be supported on all targets). > > What is this needed for? > perhaps the library is using some symbol that the executable is meant to > export? Yes, except I don't know what you mean by "meant to export". The produced executable defines (or once did define) symbols used by the library. A quick test indicates it's no longer needed: $ ./built-gcobol -### -oo nist/NC/NC102A.o 2>&1 | sed "/'-rdynamic'/d; 1d; 4,8d" | sh produces a working binary without complaint on aaarch64. > 2. --allow-multiple-definitions (not supported by all linkers) > > Why do we need to allow multiple definitions? I doubt this is actually necessary. It's not by design. We added it as a workaround upon a time. > 3. pic/PIC options. (these are target-specific in general). > > It's not clear why the gcobol driver needs to be concerned with these - > typically the target-specific specs processing handles this. IIUC, if & when pic/PIC is needed for a particular target, it should be supplied on a target-specific basis. No argument here. Expertise is all that's lacking.