https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107998
--- Comment #19 from Jakub Jelinek <jakub at gcc dot gnu.org> --- I don't know either. Maybe objdump would print something. Anyway, looking at config-ml.in, it seems like the empty directory name would basically disable that multilib: multidirs= for i in `${CC-gcc} --print-multi-lib 2>/dev/null`; do dir=`echo $i | sed -e 's/;.*$//'` if [ "${dir}" = "." ]; then true else if [ -z "${multidirs}" ]; then multidirs="${dir}" else multidirs="${multidirs} ${dir}" fi fi done I think for .; ;@m32 the above first sets dir to "." and doesn't do anything, in the second iteration dir is empty string and as multidirs is empty as well, it is set to the same empty string. So I think previously x86_64-pc-cygwin just didn't build multilibs at all, but supported -m32 for compilation and would do weird things when trying to link something.