PR# 18284 Wrong flat form of descendant routine when tuple labels renamed

Problem Report Summary
Submitter: prestoat2000
Category: EiffelStudio
Priority: Medium
Date: 2012/07/31
Class: Bug
Severity: Serious
Number: 18284
Release: 7.1.88986
Confidential: No
Status: Open
Responsible:
Environment: Mozilla/5.0 (X11; SunOS sun4u; rv:13.0) Gecko/20100101 Firefox/13.0 Solaris 10 on x86
Synopsis: Wrong flat form of descendant routine when tuple labels renamed

Description
A routine `try' creates a tuple of type

   TUPLE [a, b, c, d: INTEGER]

and prints the elements of the tuple by referencing the tuple labels.

A descendant class redefines the tuple type to be

   TUPLE [e, f, g, h: INTEGER]

The classes compile fine, but the Flat form of `try' in the descendant
class shows the labels from the parent rather than the new label names
in the descendant.


   
To Reproduce
Compile with attached classes.
Examine Flat form of {TEST2}.try.  It should show `x.e' etc instead
of `x.a' etc.
Problem Report Interactions
From:prestoat2000    Date:2012/07/31    Download   
Attachments for problem report #18284

Attachment: test.e     Size:108
Attachment: test1.e     Size:269
Attachment: test2.e     Size:133