PR# 16949 Incorrect VTMC(1) error when formal constrained by itself in void-safe system
Problem Report Summary
Submitter: prestoat2000
Category: Compiler
Priority: Medium
Date: 2010/07/06
Class: Bug
Severity: Serious
Number: 16949
Release: 6.6.83767
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: Incorrect VTMC(1) error when formal constrained by itself in void-safe system
Description
In a generic class class TEST1 [G -> {G, TEST2}] the compiler reports an incorrect VTMC(1) error on a call to a feature of class TEST2 on an entity of the formal generic type, but only if the system is compiled void-safe. The compiler seems to think that the type set is ANY, which is wrong. Switching the types in the constraint so that the class header is class TEST1 [G -> {TEST2, G}] causes the compiler to accept the classes and execution works as expected. Added eweasel test multicon054 for this bug. I believe this has the same underlying cause as bug #16948, but this one can be automated with an eweasel test.
To Reproduce
Run eweasel test multicon054.
Problem Report Interactions
Fixed in rev#84192 of EiffelStudio 6.7 intermediate release.