public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug d/103578] New: d21 doesn't link on Darwin/i386
@ 2021-12-06 10:23 ro at gcc dot gnu.org
2023-10-28 21:06 ` [Bug d/103578] " ibuclaw at gcc dot gnu.org
0 siblings, 1 reply; 2+ messages in thread
From: ro at gcc dot gnu.org @ 2021-12-06 10:23 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103578
Bug ID: 103578
Summary: d21 doesn't link on Darwin/i386
Product: gcc
Version: 12.0
Status: UNCONFIRMED
Severity: normal
Priority: P3
Component: d
Assignee: ibuclaw at gdcproject dot org
Reporter: ro at gcc dot gnu.org
Target Milestone: ---
Host: i386-apple-darwin11.4.2
Target: i386-apple-darwin11.4.2
Build: i386-apple-darwin11.4.2
Trying to build a 32-bit-default gdc on current master in the same way as
described
in PR d/103577 (gcc 11.1.0 with --enable-libphobos) fails linking the stage1
d21:
Undefined symbols for architecture i386:
"__ZN4Port6valcpyEPvyj", referenced from:
__D3dmd9constfold3CatFKxSQw7globals3LocCQBl5mtype4TypeCQCa10expression10ExpressionQBcZSQDgQBg8UnionExp
in constfold.o
__D3dmd8ctfeexpr7ctfeCatFKxSQz7globals3LocCQBo5mtype4TypeCQCd10expression10ExpressionQBcZSQDjQBg8UnionExp
in ctfeexpr.o
"__ZN4Port7memicmpEPKcS1_j", referenced from:
__D3dmd3doc7isDittoFPxaZb in doc.o
__D3dmd3doc10emitAnchorFKSQx4root9outbuffer9OutBufferCQBz7dsymbol7DsymbolPSQCu6dscope5ScopebZv
in doc.o
__D3dmd3doc11skippastURLFKSQy4root9outbuffer9OutBufferkZk in doc.o
__ZN11emitComment11EmitComment4emitEP5ScopeP7DsymbolPKc in doc.o
__ZN11emitComment11EmitComment5visitEP11Declaration in doc.o
__ZN11emitComment11EmitComment5visitEP20AggregateDeclaration in doc.o
"__ZN9StringExp6createE3LocPvm", referenced from:
__Z26d_eval_constant_expressionRK3LocP9tree_node in d-builtins.o
ld: symbol(s) not found for architecture i386
collect2: error: ld returned 1 exit status
make[3]: *** [d21] Error 1
The missing symbols are
__ZN4Port6valcpyEPvyj
__ZN4Port7memicmpEPKcS1_j
__ZN9StringExp6createE3LocPvm
all of them C++ symbols:
Port::valcpy(void*, unsigned long long, unsigned int)
Port::memicmp(char const*, char const*, unsigned int)
defined in gcc/d/d-port.cc
declared as extern (C++) in gcc/d/dmd/root/port.d
void valcpy(scope void *dst, uint64_t val, size_t size) pure;
int memicmp(scope const char* s1, scope const char* s2, size_t n) pure;
StringExp::create(Loc, void*, unsigned long)
declared in gcc/d/dmd/expression.h, gcc/d/dmd/expression.d (as extern (C++))
which has StringExp create(Loc loc, void* string, size_t len)
It seems gdc has a wrong idea about size_t with -m32:
<i386/_types.h> uses unsigned long, gcc's __SIZE_TYPE__ likewise.
^ permalink raw reply [flat|nested] 2+ messages in thread
* [Bug d/103578] d21 doesn't link on Darwin/i386
2021-12-06 10:23 [Bug d/103578] New: d21 doesn't link on Darwin/i386 ro at gcc dot gnu.org
@ 2023-10-28 21:06 ` ibuclaw at gcc dot gnu.org
0 siblings, 0 replies; 2+ messages in thread
From: ibuclaw at gcc dot gnu.org @ 2023-10-28 21:06 UTC (permalink / raw)
To: gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103578
ibuclaw at gcc dot gnu.org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |RESOLVED
Resolution|--- |FIXED
CC| |ibuclaw at gcc dot gnu.org
--- Comment #1 from ibuclaw at gcc dot gnu.org ---
This was fixed in r12-8302.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-10-28 21:06 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-12-06 10:23 [Bug d/103578] New: d21 doesn't link on Darwin/i386 ro at gcc dot gnu.org
2023-10-28 21:06 ` [Bug d/103578] " ibuclaw at gcc dot gnu.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).