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.