Skip Menu |

This queue is for tickets about the CORBA-IDL CPAN distribution.

Report information
The Basics
Id: 9366
Status: resolved
Priority: 0/
Queue: CORBA-IDL

People
Owner: PERRAD [...] cpan.org
Requestors: richard.spence.extern [...] icn.siemens.de
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 2.42
Fixed in: (no value)



Subject: AST for Enum-discriminated Unions always indicates 'need_default'
CORBA-IDL-2.42 (latest) I noticed that the AST produced from parses of Unions discriminated by Enums always had the 'need_default' attribute set. I used the following tiny bit of IDL to isolate the problem: module t { enum discrim {s, b}; union onion switch(discrim) { case s: short ss; case b: boolean bb; }; } I then debugged the file node.pm to diagnose the problem, make a local fix and offer the following diff for your consideration: 1651,1652c1651 < my $val = $cst->{value}; < $key = ref $val ? $val->{full} : $val; --- Show quoted text
> $key = $cst->{value};
I haven't checked for side-effects but will probably be putting the fix into a production system in two weeks when holiday timing permits. Thanks for a very fine piece of work.
The proposed patch works only with Unions discriminated by Enum (and no with integer). A new version 2.43 was uploaded.