PR# 16921 Bogus VEVI on attribute in generic class with formal constrained by expanded type

Problem Report Summary
Submitter: prestoat2000
Category: Compiler
Priority: Low
Date: 2010/06/28
Class: Bug
Severity: Non-critical
Number: 16921
Release: 6.6.83355
Confidential: No
Status: Closed
Responsible:
Environment: Mozilla/5.0 (X11; U; SunOS sun4u; en-US; rv:1.9.0.10) Gecko/2009042715 Firefox/3.0.10 Solaris 10 on SPARC
Synopsis: Bogus VEVI on attribute in generic class with formal constrained by expanded type

Description
A generic class whose formal generic is constrained by an expanded type and
that has an attribute of the formal generic type is reported to violate VEVI on
`default_create'.  It seems to me that it should be valid, since the attribute has to
be of an expanded type.  If I'm confused, please correct the test.

Added eweasel test attach073 for this bug.
To Reproduce
Run eweasel test attach073.
Problem Report Interactions
From:alexk_es    Date:2010/06/29    Status: Closed    Download   
Fixed in rev#83741 of EiffelStudio 6.7 intermediate release.

From:prestoat2000    Date:2010/06/28    Download   
But the descendant of an expanded class does not conform to that
expanded class type (at least not in the current implementation).

I tried with a descendant of the expanded class and the compiler would
not accept it as actual generic.  So your implementation allows a
class to inherit from an expanded class but says that the type of this
descendant does not conform to the type of the expanded class from
which it inherited.


From:manus_eiffel    Date:2010/06/28    Status: Analyzed    Download   
The constraint says it is expanded, but you could in theory have a non-expanded descendant for the constraint. It is not exactly ECMA but during our discussions, we did not prevent inheritance from an expanded class.