Bug 26252 - [odr] dwz.c:11404: write_die: Assertion `value && refdcu->cu_kind != CU_ALT' failed. #2
Summary: [odr] dwz.c:11404: write_die: Assertion `value && refdcu->cu_kind != CU_ALT' ...
Status: RESOLVED FIXED
Alias: None
Product: dwz
Classification: Unclassified
Component: default (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Nobody
URL:
Keywords:
: 25439 (view as bug list)
Depends on:
Blocks:
 
Reported: 2020-07-16 15:40 UTC by Jan Kratochvil
Modified: 2021-02-23 13:11 UTC (History)
4 users (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments
.tar.xz (1.48 MB, application/octet-stream)
2020-08-19 19:05 UTC, Jan Kratochvil
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Jan Kratochvil 2020-07-16 15:40:51 UTC
With b7111689a2ccec2f57343f1051ec8f1df5e89e5c = commit 2020-02-19
getting $subject which should have been fixed by PR 25109 but it is not.

It is reproducible at least with these 233 packages:
  http://people.redhat.com/jkratoch/dwz-assert.pkglist
Comment 1 Tom de Vries 2020-08-18 09:23:05 UTC
(In reply to Jan Kratochvil from comment #0)
> With b7111689a2ccec2f57343f1051ec8f1df5e89e5c = commit 2020-02-19
> getting $subject which should have been fixed by PR 25109 but it is not.
> 
> It is reproducible at least with these 233 packages:
>   http://people.redhat.com/jkratoch/dwz-assert.pkglist

Can you attach a reproducer?
Comment 2 Tom de Vries 2020-08-18 09:54:05 UTC
(In reply to Jan Kratochvil from comment #0)
> It is reproducible at least with these 233 packages:
>   http://people.redhat.com/jkratoch/dwz-assert.pkglist

FWIW, I've tried to make a reproducer myself by building binutils, which is in this list, but no luck.
Comment 3 Jan Kratochvil 2020-08-19 19:05:13 UTC
Created attachment 12782 [details]
.tar.xz

b7111689a2ccec2f57343f1051ec8f1df5e89e5c = 2020-02-19
~/redhat/dwz-git/dwz -m dwz.debug --odr 1.debug 2.debug 
~/redhat/dwz-git/dwz: 1.debug: DWARF compression not beneficial - old size 317760 new size 317760
dwz: dwz.c:11404: write_die: Assertion `value && refdcu->cu_kind != CU_ALT' failed.
Aborted (core dumped)

Although I find more a blocker for DWZ after 3+ years it still does not support DWARF-5; and not just its part as produced by GCC but also the DWARF-5 features produced by LLVM: PR 24726
Comment 4 Mark Wielaard 2020-09-13 14:12:30 UTC
This only reproduces with --odr. Without things work fine.
Comment 5 Tom de Vries 2021-02-16 09:14:06 UTC
Posted fix: https://sourceware.org/pipermail/dwz/2021q1/000890.html
Comment 6 Tom de Vries 2021-02-16 09:21:55 UTC
(In reply to Jan Kratochvil from comment #0)
> With b7111689a2ccec2f57343f1051ec8f1df5e89e5c = commit 2020-02-19
> getting $subject which should have been fixed by PR 25109 but it is not.
> 

PR25109 is related to die_no_multifile propagation, and the problem occurs independent of odr.

This problem is related to CK_BAD propagation, and occurs only with odr.

The two root causes are different, they just happen to trigger the same assert.
Comment 8 Tom de Vries 2021-02-23 13:11:24 UTC
*** Bug 25439 has been marked as a duplicate of this bug. ***