https://gcc.gnu.org/bugzilla/show_bug.cgi?id=125129

            Bug ID: 125129
           Summary: Many tests fail to link on FreeBSD
           Product: gcc
           Version: 16.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: modula2
          Assignee: gaius at gcc dot gnu.org
          Reporter: ro at gcc dot gnu.org
  Target Milestone: ---
            Target: amd64-pc-freebsd15.0

Many gm2 tests fail to link on FreeBSD/amd64, e.g.

AIL: gm2/builtins/run/pass/testalloa.mod compilation,  -g
unsuccessful link
UNRESOLVED: gm2/builtins/run/pass/testalloa.mod execution,  -g  (link failed)

gld-2.46:
x86_64-unknown-freebsd15.0/./libgm2/libm2pim/.libs/libm2pim.a(Builtins.o): in
function `m2pim_Builtins_csinl':
libgm2/libm2pim/../../gcc/m2/gm2-libs/Builtins.mod:448:(.text+0x7b1): undefined
reference to `csinl'
gld-2.46:
x86_64-unknown-freebsd15.0/./libgm2/libm2pim/.libs/libm2pim.a(Builtins.o): in
function `m2pim_Builtins_ccosl':
libgm2/libm2pim/../../gcc/m2/gm2-libs/Builtins.mod:463:(.text+0x7f1): undefined
reference to `ccosl'
gld-2.46:
x86_64-unknown-freebsd15.0/./libgm2/libm2pim/.libs/libm2pim.a(Builtins.o): in
function `m2pim_Builtins_ctanl':
libgm2/libm2pim/../../gcc/m2/gm2-libs/Builtins.mod:478:(.text+0x831): undefined
reference to `ctanl'
collect2: error: ld returned 1 exit status
compiler exited with status 1
FAIL: gm2/builtins/run/pass/testalloa.mod compilation,  -g
unsuccessful link
UNRESOLVED: gm2/builtins/run/pass/testalloa.mod execution,  -g  (link failed)

I wonder what's going on here: gm2-gcc/m2builtins.cc has

  { "__builtin_ctanl", BT_FN_LDCOMPLEX_LDCOMPLEX, BUILT_IN_CTANL,
    BUILT_IN_NORMAL, "ctanl", NULL, NULL, bf_c99_compl },

which seems to match builtins.def:

DEF_C99_COMPL_BUILTIN        (BUILT_IN_CTANL, "ctanl",
BT_FN_COMPLEX_LONGDOUBLE_COMPLEX_LONGDOUBLE, ATTR_MATHFN_FPROUNDING)

FreeBSD's version of TARGET_LIBC_HAS_FUNCTION (bsd_libc_has_function in
targhooks.cc) seems to do the right thing by returning false for
function_c99_math_complex.

Reply via email to