Bug 22700 – Error: undefined symbol: core.internal.dassert.inFinalizer and core.internal.dassert.miniFormatFakeAttributes

Status
NEW
Severity
regression
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2022-01-23T12:25:47Z
Last change time
2024-12-13T19:20:34Z
Assigned to
No Owner
Creator
Iain Buclaw
Moved to GitHub: dmd#20043 →

Comments

Comment #0 by ibuclaw — 2022-01-23T12:25:47Z
This PR: https://github.com/dlang/druntime/pull/3701 Has a link failure when compiling the following test: ``` void test8765(string msg, int a) { assert(a); assert(msg == "0 != true"); } ``` When compiling with the flags: dmd testassert.d -checkaction=context -main Bisecting druntime, this is caused by https://github.com/dlang/druntime/pull/3493 Bisecting dmd is still underway.
Comment #1 by ibuclaw — 2022-01-23T12:30:40Z
Can only go as far back as the following PR in dmd before druntime no longer is compilable. https://github.com/dlang/dmd/pull/12209 Fair amount of reduction needs to be done.
Comment #2 by pro.mathias.lang — 2022-01-23T15:24:23Z
Currently `-checkaction=context` is not usable without `-unittest`, at least this has been our experience. It results in heaps of undefined symbols. This is due, I believe, to Druntime being compiled with `-checkaction=D` (the default). See Also: https://github.com/dlang/dmd/pull/13224#discussion_r789706699
Comment #3 by moonlightsentinel — 2022-02-01T11:58:19Z
(In reply to Mathias LANG from comment #2) > This is due, I believe, to Druntime being compiled with `-checkaction=D` Both `-checkaction=D` and `-release` (or `-check=assert=off`) prevent the message generation.
Comment #4 by robert.schadek — 2024-12-13T19:20:34Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/20043 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB