}
/* Return true if the builtin DECL is implemented in a standard library.
- Otherwise returns false which doesn't guarantee it is not (thus the list of
- handled builtins below may be incomplete). */
+ Otherwise return false which doesn't guarantee it is not (thus the list
+ of handled builtins below may be incomplete). */
bool
builtin_with_linkage_p (tree decl)
CASE_FLT_FN (BUILT_IN_TRUNC):
CASE_FLT_FN_FLOATN_NX (BUILT_IN_TRUNC):
return true;
+
+ case BUILT_IN_STPCPY:
+ case BUILT_IN_STPNCPY:
+ /* stpcpy is both referenced in libiberty's pex-win32.c and provided
+ by libiberty's stpcpy.c for MinGW targets so we need to return true
+ in order to be able to build libiberty in LTO mode for them. */
+ return true;
+
default:
break;
}
in libraries so make sure to output references into the symbol table to
make those libraries referenced. Note this is incomplete handling for
now and only covers math functions. */
- if (builtin_with_linkage_p (decl))
- return true;
- else
- return false;
+ return builtin_with_linkage_p (decl);
}
/* We have real symbol that should be in symbol table. However try to trim
fi
cat confdefs.h - <<_ACEOF >conftest.$ac_ext
/* end confdefs.h. */
-int *p;
+extern int $v [];
int
main ()
{
-extern int $v []; p = $v;
+if ($v [0]) return 1;
;
return 0;
}
for v in $vars; do
AC_MSG_CHECKING([for $v])
AC_CACHE_VAL(libiberty_cv_var_$v,
- [AC_LINK_IFELSE([AC_LANG_PROGRAM([[int *p;]],[[extern int $v []; p = $v;]])],
+ [AC_LINK_IFELSE([AC_LANG_PROGRAM([[extern int $v [];]],[[if ($v [0]) return 1;]])],
[eval "libiberty_cv_var_$v=yes"],
[eval "libiberty_cv_var_$v=no"])])
if eval "test \"`echo '$libiberty_cv_var_'$v`\" = yes"; then