https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69455
Bug ID: 69455 Summary: [5/6 Regression] Linking error(s) when using intrinsic modules in two BLOCK Product: gcc Version: 6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran Assignee: unassigned at gcc dot gnu.org Reporter: dominiq at lps dot ens.fr Target Milestone: --- When linking the following code block use, intrinsic :: iso_c_binding, only: wp => c_float, ik => c_int print *, ik, wp end block block use, intrinsic :: iso_c_binding, only: wp => c_double, ik => c_long print *, ik, wp end block end with gfortran 5.3.0 or trunk (6.0), I get the following error on x86_64-apple-darwin14 /var/folders/8q/sh_swgz96r7f5vnn08f7fxr00000gn/T//ccR0DlmQ.s:95:29: error: invalid symbol redefinition .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_wp,4,2 ^ /var/folders/8q/sh_swgz96r7f5vnn08f7fxr00000gn/T//ccR0DlmQ.s:97:29: error: invalid symbol redefinition .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_ik,4,2 ^ The change occurred on trunk between revisions r229482 (2015-10-28, OK) and r229608 (2015-10-30, errors), possibly r229540 (pr67885). Comparing the assembly between the two revisions I see - .globl _____iso_c_binding_MOD_wp - .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_wp,4,2 - .globl _____iso_c_binding_MOD_ik - .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_ik,4,2 - .globl _____iso_c_binding_MOD_wp - .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_wp,4,2 - .globl _____iso_c_binding_MOD_ik - .zerofill __DATA,__pu_bss2,_____iso_c_binding_MOD_ik,4,2 where the '-' were for r229608.