public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug d/98910] New: [11 regression] locale_t undefined on Solaris
@ 2021-02-01 9:19 ro at gcc dot gnu.org
2021-02-02 8:10 ` [Bug d/98910] " rguenth at gcc dot gnu.org
` (7 more replies)
0 siblings, 8 replies; 9+ messages in thread
From: ro at gcc dot gnu.org @ 2021-02-01 9:19 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
Bug ID: 98910
Summary: [11 regression] locale_t undefined on Solaris
Product: gcc
Version: 11.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: d
Assignee: ibuclaw at gdcproject dot org
Reporter: ro at gcc dot gnu.org
Target Milestone: ---
Target: *-*-solaris2.11
Created attachment 50100
--> https://gcc.gnu.org/bugzilla/attachment.cgi?id=50100&action=edit
Proposed patch.
This patch
commit 92dd3e71f957c7818f4ce4189bd187b59af20d9b
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Thu Jan 28 11:18:42 2021 +0100
libphobos: Synchronize libdruntime bindings with upstream druntime
broke Solaris bootstrap for two reasons:
* locale_t isn't defined:
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/locale.d:67:10:
error: undefined identifier 'locale_t'
67 | locale_t duplocale(locale_t locale);
| ^
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/locale.d:69:10:
error: undefined identifier 'locale_t'
69 | void freelocale(locale_t locale);
| ^
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/locale.d:73:10:
error: undefined identifier 'locale_t'
73 | locale_t newlocale(int mask, const char* locale, locale_t base);
| ^
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/locale.d:77:10:
error: undefined identifier 'locale_t'
77 | locale_t uselocale (locale_t locale);
| ^
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/string.d:24:15:
error: module core.sys.posix.locale import 'locale_t' not found
24 | public import core.sys.posix.locale : locale_t;
| ^
While this can be fixed as in the attached patch, there's a caveat: locale_t
and the functions using it are XPG7 additions, but Solaris 11.3 (which is
still
supported by GCC) only conforms to XPG6. I suspect it's not the only one.
Right now, the effects aren't that bad as I've confirmed with an Solaris
11.3/x86 bootstrap since those functions/types are only declared, but not
actually used.
* there's an alias conflict for idtype_t:
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/thread/osthread.d:1468:12:
error: alias core.thread.osthread.idtype_t conflicts with alias
core.thread.osthread.idtype_t at
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/thread/osthread.d:162:12
1468 | import core.sys.posix.sys.wait : idtype_t;
| ^
also fixed by removing the second group of imports.
The attached patch has been tested on both i386-pc-solaris2.11 (Solaris 11.4
and
11.3) and sparc-sun-solaris2.11 (Solaris 11.4).
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
@ 2021-02-02 8:10 ` rguenth at gcc dot gnu.org
2021-02-03 21:08 ` cvs-commit at gcc dot gnu.org
` (6 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: rguenth at gcc dot gnu.org @ 2021-02-02 8:10 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
Richard Biener <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |11.0
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
2021-02-02 8:10 ` [Bug d/98910] " rguenth at gcc dot gnu.org
@ 2021-02-03 21:08 ` cvs-commit at gcc dot gnu.org
2021-02-04 19:34 ` ro at gcc dot gnu.org
` (5 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-02-03 21:08 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #1 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:
https://gcc.gnu.org/g:b1a207c6df0a9c5555017f65f8731acf8d4c14c2
commit r11-7091-gb1a207c6df0a9c5555017f65f8731acf8d4c14c2
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Wed Feb 3 19:01:32 2021 +0100
libphobos: Merge upstream druntime 9d0c8364, phobos 9d575282e.
Druntime changes:
- Add platform-specific bindings for stdlib.h and sys/syctl.h.
- Add darwin bindings for mach/dyld.h.
- Fix solaris bindings for locale.h (PR98910).
- Remove deprecated bindings from the module headers.
Phobos changes:
- Backport platform-specific fixes for std.conv, std.datetime,
std.exception, std.experimental.allocator, std.file, std.math,
std.parallelism, std.socket, std.stdio, and std.system.
Reviewed-on: https://github.com/dlang/druntime/pull/3363
https://github.com/dlang/phobos/pull/7784
libphobos/ChangeLog:
PR d/98910
* libdruntime/MERGE: Merge upstream druntime 9d0c8364.
* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Add
core/internal/attributes.d
(DRUNTIME_DSOURCES_BIONIC): Add core/sys/bionic/stdlib.d.
(DRUNTIME_DSOURCES_DARWIN): Add core/sys/darwin/stdlib.d, and
core/sys/darwin/sys/sysctl.d.
(DRUNTIME_DSOURCES_DRAGONFLYBSD): Add
core/sys/dragonflybsd/stdlib.d, and
core/sys/dragonflybsd/sys/sysctl.d.
(DRUNTIME_DSOURCES_FREEBSD): Add core/sys/freebsd/stdlib.d, and
core/sys/freebsd/sys/sysctl.d.
(DRUNTIME_DSOURCES_NETBSD): Add core/sys/netbsd/stdlib.d, and
core/sys/netbsd/sys/sysctl.d.
(DRUNTIME_DSOURCES_OPENBSD): Add core/sys/openbsd/stdlib.d, and
core/sys/openbsd/sys/sysctl.d.
(DRUNTIME_DSOURCES_SOLARIS): Add core/sys/solaris/stdlib.d.
* libdruntime/Makefile.in: Regenerate.
* src/MERGE: Merge upstream phobos 9d575282e.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
2021-02-02 8:10 ` [Bug d/98910] " rguenth at gcc dot gnu.org
2021-02-03 21:08 ` cvs-commit at gcc dot gnu.org
@ 2021-02-04 19:34 ` ro at gcc dot gnu.org
2021-02-04 21:19 ` ro at CeBiTec dot Uni-Bielefeld.DE
` (4 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: ro at gcc dot gnu.org @ 2021-02-04 19:34 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #2 from Rainer Orth <ro at gcc dot gnu.org> ---
Unfortunately, even with your patch Solaris bootstrap is still broken:
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/sys/posix/strings.d:23:15:
error: module core.sys.posix.locale import 'locale_t' not found
23 | public import core.sys.posix.locale : locale_t;
| ^
I only now noticed that you only define the XPG6 subset of locale functions in
locale.d for Solaris. That seems quite unfortunate, castrating functionality
for the benefit of older XPG6-only Solaris 11.3 while 11.4 supports locale_t
and
XPG7 perfectly fine.
I'm uncertain what's the best way to handle this: one could certainly test for
a locale_t definition via autoconf, record the result in gcc/config.d, and use
that instead of version (Solaris).
The same test would have to be used in strings.d to avoid leaving that broken
when locale_t isn't available.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
` (2 preceding siblings ...)
2021-02-04 19:34 ` ro at gcc dot gnu.org
@ 2021-02-04 21:19 ` ro at CeBiTec dot Uni-Bielefeld.DE
2021-02-04 22:14 ` cvs-commit at gcc dot gnu.org
` (3 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2021-02-04 21:19 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
On top of the missing locale_t definition, the other issue I'd reported
is also still present:
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/thread/osthread.d:1468:12:
error: alias core.thread.osthread.idtype_t conflicts with alias
core.thread.osthread.idtype_t at
/vol/gcc/src/hg/master/local/libphobos/libdruntime/core/thread/osthread.d:162:12
1468 | import core.sys.posix.sys.wait : idtype_t;
| ^
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
` (3 preceding siblings ...)
2021-02-04 21:19 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2021-02-04 22:14 ` cvs-commit at gcc dot gnu.org
2021-02-04 22:19 ` ibuclaw at gdcproject dot org
` (2 subsequent siblings)
7 siblings, 0 replies; 9+ messages in thread
From: cvs-commit at gcc dot gnu.org @ 2021-02-04 22:14 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #4 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuclaw@gcc.gnu.org>:
https://gcc.gnu.org/g:c1d56e6a737418b7b48a53b355f588ea14f1b9a9
commit r11-7108-gc1d56e6a737418b7b48a53b355f588ea14f1b9a9
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date: Thu Feb 4 22:34:22 2021 +0100
d: Merge upstream dmd 46133f761, druntime 0fd4364c
D front-end changes:
- Backported built-in function handling from upstream.
- Added new intrinsic `byteswap(ushort)`.
Druntime changes:
- Update intrinsic modules core.bitop, core.checkedint, core.simd,
core.vararg, and core.volatile.
- Backport platform-specific fixes for runtime modules core.cpuid,
core.internal.traits, and rt.lifetime.
- Backport openbsd fixes for core.stdc.stdio.
- Backport solaris fixes for core.sys.posix.locale, and
core.thread.osthread (PR98910).
gcc/d/ChangeLog:
* dmd/MERGE: Merge upstream dmd 46133f761.
* d-builtins.cc (d_build_builtins_module): Set builtins as
BUILTINgcc.
(maybe_set_builtin_1): Likewise.
* d-frontend.cc (eval_builtin): Adjust condition for early return.
* intrinsics.cc (maybe_set_intrinsic): Set intrinsics as
BUILTINgcc.
(maybe_expand_intrinsic): Add case for INTRINSIC_BSWAP16.
* intrinsics.def (INTRINSIC_BT): Update signature.
(INTRINSIC_BT64): Likewise.
(INTRINSIC_BSWAP16): New intrinsic.
(INTRINSIC_VLOAD8): Update module.
(INTRINSIC_VLOAD16): Likewise.
(INTRINSIC_VLOAD32): Likewise.
(INTRINSIC_VLOAD64): Likewise.
(INTRINSIC_VSTORE8): Likewise.
(INTRINSIC_VSTORE16): Likewise.
(INTRINSIC_VSTORE32): Likewise.
(INTRINSIC_VSTORE64): Likewise.
(INTRINSIC_ADDS): Update signature.
(INTRINSIC_ADDSL): Likewise.
(INTRINSIC_ADDU): Likewise.
(INTRINSIC_ADDUL): Likewise.
(INTRINSIC_SUBS): Likewise.
(INTRINSIC_SUBSL): Likewise.
(INTRINSIC_SUBU): Likewise.
(INTRINSIC_SUBUL): Likewise.
(INTRINSIC_MULS): Likewise.
(INTRINSIC_MULSL): Likewise.
(INTRINSIC_MULU): Likewise.
(INTRINSIC_MULUI): Likewise.
(INTRINSIC_MULUL): Likewise.
(INTRINSIC_NEGS): Likewise.
(INTRINSIC_NEGSL): Likewise.
libphobos/ChangeLog:
PR d/98910
* libdruntime/MERGE: Merge upstream druntime 0fd4364c.
* libdruntime/Makefile.am (DRUNTIME_DSOURCES): Add core/volatile.d.
* libdruntime/Makefile.in: Regenerate.
* testsuite/libphobos.allocations/tls_gc_integration.d: Update
test.
gcc/testsuite/ChangeLog:
* gdc.dg/intrinsics.d: Update test.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
` (4 preceding siblings ...)
2021-02-04 22:14 ` cvs-commit at gcc dot gnu.org
@ 2021-02-04 22:19 ` ibuclaw at gdcproject dot org
2021-02-11 14:29 ` ro at CeBiTec dot Uni-Bielefeld.DE
2021-02-11 17:11 ` ibuclaw at gdcproject dot org
7 siblings, 0 replies; 9+ messages in thread
From: ibuclaw at gdcproject dot org @ 2021-02-04 22:19 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #5 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
(In reply to Rainer Orth from comment #2)
> Unfortunately, even with your patch Solaris bootstrap is still broken:
>
Sorry, I've just been a bit slow getting the second part in. The first part
was just what I originally pushed upstream before this PR was raised. The
second part includes what you gave here.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
` (5 preceding siblings ...)
2021-02-04 22:19 ` ibuclaw at gdcproject dot org
@ 2021-02-11 14:29 ` ro at CeBiTec dot Uni-Bielefeld.DE
2021-02-11 17:11 ` ibuclaw at gdcproject dot org
7 siblings, 0 replies; 9+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2021-02-11 14:29 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
--- Comment #6 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #5 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
> (In reply to Rainer Orth from comment #2)
>> Unfortunately, even with your patch Solaris bootstrap is still broken:
>>
>
> Sorry, I've just been a bit slow getting the second part in. The first part
> was just what I originally pushed upstream before this PR was raised. The
> second part includes what you gave here.
Ah, I'd forgotten about the split. When I saw the first patch landing,
I dropped my local fix, only to run into the build failure.
Sorry for being hasty.
^ permalink raw reply [flat|nested] 9+ messages in thread
* [Bug d/98910] [11 regression] locale_t undefined on Solaris
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
` (6 preceding siblings ...)
2021-02-11 14:29 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2021-02-11 17:11 ` ibuclaw at gdcproject dot org
7 siblings, 0 replies; 9+ messages in thread
From: ibuclaw at gdcproject dot org @ 2021-02-11 17:11 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=98910
Iain Buclaw <ibuclaw at gdcproject dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Resolution|--- |FIXED
Status|UNCONFIRMED |RESOLVED
--- Comment #7 from Iain Buclaw <ibuclaw at gdcproject dot org> ---
I'll mark this as resolved as it is building for me on sparc-sun-solaris2.11
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2021-02-11 17:11 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-02-01 9:19 [Bug d/98910] New: [11 regression] locale_t undefined on Solaris ro at gcc dot gnu.org
2021-02-02 8:10 ` [Bug d/98910] " rguenth at gcc dot gnu.org
2021-02-03 21:08 ` cvs-commit at gcc dot gnu.org
2021-02-04 19:34 ` ro at gcc dot gnu.org
2021-02-04 21:19 ` ro at CeBiTec dot Uni-Bielefeld.DE
2021-02-04 22:14 ` cvs-commit at gcc dot gnu.org
2021-02-04 22:19 ` ibuclaw at gdcproject dot org
2021-02-11 14:29 ` ro at CeBiTec dot Uni-Bielefeld.DE
2021-02-11 17:11 ` ibuclaw at gdcproject dot org
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).