This is the mail archive of the
elfutils-devel@sourceware.org
mailing list for the elfutils project.
[Bug tools/24509] eu-readelf does not know how to dissect DW_AT_discr_list
- From: "mark at klomp dot org" <sourceware-bugzilla at sourceware dot org>
- To: elfutils-devel at sourceware dot org
- Date: Thu, 02 May 2019 21:48:20 +0000
- Subject: [Bug tools/24509] eu-readelf does not know how to dissect DW_AT_discr_list
- Auto-submitted: auto-generated
- References: <bug-24509-10460@http.sourceware.org/bugzilla/>
https://sourceware.org/bugzilla/show_bug.cgi?id=24509
Mark Wielaard <mark at klomp dot org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #11760|0 |1
is obsolete| |
--- Comment #4 from Mark Wielaard <mark at klomp dot org> ---
Created attachment 11762
--> https://sourceware.org/bugzilla/attachment.cgi?id=11762&action=edit
discr_list patch that handles signed/unsigned variant_part types
Updated patch that handles signed/unsigned discriminators.
So this is what I used as testcase to have a signed (Integer) and unsigned
(Character) discr.
package Rng is
type Rec (I : Integer) is record
case I is
when Positive =>
C : Character;
case I is
when 1..15 | 17 | 23..255 =>
null;
when others =>
N : Natural;
end case;
when -52..-1 =>
Q: Natural;
when -53 =>
R: Character;
when others =>
S : String (1 .. 10);
end case;
end record;
Subtype Uppercase is Character Range 'A'..'Z';
Subtype Lowercase is Character Range 'a'..'z';
Subtype Numbers is Character Range '0'..'9';
type RecC (C : Character) is record
case C is
when '@' =>
B : Boolean;
when Lowercase | Uppercase | Numbers =>
D : Character;
when others =>
null;
end case;
end record;
R : Rec (1);
RC : RecC ('$');
end Rng;
Does the output look like what you would expect?
BTW. The byte_size expressions are impressive!
--
You are receiving this mail because:
You are on the CC list for the bug.