Link with correct values-*.o files on Solaris (PR target/40411)
gcc/testsuite: PR libfortran/67412 * gfortran.dg/execute_command_line_2.f90: Remove dg-xfail-run-if on *-*-solaris2.10. libstdc++-v3: PR libstdc++/64054 * testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc: Remove dg-xfail-run-if. gcc: PR target/40411 * config/sol2.h (STARTFILE_ARCH_SPEC): Don't use with -shared or -symbolic. Use values-Xc.o for -pedantic. Link with values-xpg4.o for C90, values-xpg6.o otherwise. From-SVN: r256568
This commit is contained in:
parent
a7448bdfbc
commit
c969e34e3f
@ -1,3 +1,11 @@
|
||||
2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
PR target/40411
|
||||
* config/sol2.h (STARTFILE_ARCH_SPEC): Don't use with -shared or
|
||||
-symbolic.
|
||||
Use values-Xc.o for -pedantic.
|
||||
Link with values-xpg4.o for C90, values-xpg6.o otherwise.
|
||||
|
||||
2018-01-12 Martin Liska <mliska@suse.cz>
|
||||
|
||||
PR ipa/83054
|
||||
|
@ -169,9 +169,34 @@ along with GCC; see the file COPYING3. If not see
|
||||
#undef SUPPORTS_INIT_PRIORITY
|
||||
#define SUPPORTS_INIT_PRIORITY HAVE_INITFINI_ARRAY_SUPPORT
|
||||
|
||||
/* Solaris libc and libm implement multiple behaviours for various
|
||||
interfaces that have changed over the years in different versions of the
|
||||
C standard. The behaviour is controlled by linking corresponding
|
||||
values-*.o objects. Each of these objects contain alternate definitions
|
||||
of one or more variables that the libraries use to select which
|
||||
conflicting behaviour they should exhibit. There are two sets of these
|
||||
objects, values-X*.o and values-xpg*.o.
|
||||
|
||||
The values-X[ac].o objects set the variable _lib_version. The Studio C
|
||||
compilers use values-Xc.o with either -Xc or (since Studio 12.6)
|
||||
-pedantic to select strictly conformant ISO C behaviour, otherwise
|
||||
values-Xa.o.
|
||||
|
||||
The values-xpg[46].o objects define either or both __xpg[46] variables,
|
||||
selecting XPG4 mode (__xpg4) and conforming C99/SUSv3 behavior (__xpg6).
|
||||
|
||||
Since GCC 5, gcc defaults to -std=gnu11 or higher, so we link
|
||||
values-xpg6.o to get C99 semantics. Besides, most of the runtime
|
||||
libraries always require C99 semantics.
|
||||
|
||||
Since only one instance of _lib_version and __xpg[46] takes effekt (the
|
||||
first in ld.so.1's search path), we only link the values-*.o files into
|
||||
executable programs. */
|
||||
#undef STARTFILE_ARCH_SPEC
|
||||
#define STARTFILE_ARCH_SPEC "%{ansi:values-Xc.o%s} \
|
||||
%{!ansi:values-Xa.o%s}"
|
||||
#define STARTFILE_ARCH_SPEC \
|
||||
"%{!shared:%{!symbolic: \
|
||||
%{pedantic:values-Xc.o%s; :values-Xa.o%s} \
|
||||
%{std=c90|std=gnu90:values-xpg4.o%s; :values-xpg6.o%s}}}"
|
||||
|
||||
#if defined(HAVE_LD_PIE) && defined(HAVE_SOLARIS_CRTS)
|
||||
#define STARTFILE_CRTBEGIN_SPEC "%{static:crtbegin.o%s; \
|
||||
|
@ -1,3 +1,9 @@
|
||||
2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
PR libfortran/67412
|
||||
* gfortran.dg/execute_command_line_2.f90: Remove dg-xfail-run-if
|
||||
on *-*-solaris2.10.
|
||||
|
||||
2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* lib/target-supports.exp (check_effective_target_branch_cost):
|
||||
|
@ -1,5 +1,4 @@
|
||||
! { dg-do run }
|
||||
! { dg-xfail-run-if "PR libfortran/67412" { *-*-solaris2.10 } }
|
||||
!
|
||||
! Check that EXECUTE_COMMAND_LINE handles invalid command lines appropriately
|
||||
!
|
||||
|
@ -1,3 +1,9 @@
|
||||
2018-01-12 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
PR libstdc++/64054
|
||||
* testsuite/27_io/basic_ostream/inserters_arithmetic/char/hexfloat.cc:
|
||||
Remove dg-xfail-run-if.
|
||||
|
||||
2018-01-10 François Dumont <fdumont@gcc.gnu.org>
|
||||
|
||||
* include/bits/forward_list.h
|
||||
|
@ -1,6 +1,5 @@
|
||||
// { dg-do run { target c++11 } }
|
||||
// { dg-require-string-conversions "" }
|
||||
// { dg-xfail-run-if "PR libstdc++/64054" { *-*-solaris* } }
|
||||
// { dg-xfail-run-if "broken long double IO" { newlib_broken_long_double_io } }
|
||||
|
||||
// 2014-03-27 Rüdiger Sonderfeld
|
||||
|
Loading…
Reference in New Issue
Block a user