PR# 3708 Wrong "Feature" in VTCG error message

Problem Report Summary
Submitter: gobobe
Category: Compiler
Priority: Medium
Date: 2004/03/20
Class: Bug
Severity: Non-critical
Number: 3708
Release: 5.5.0409
Confidential: No
Status: Open
Responsible:
Environment: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.0.2) Gecko/20030208 Netscape/7.02
Synopsis: Wrong "Feature" in VTCG error message

Description
ISE Eiffel 5.5.0409 (just to make sure the Eiffel version appears in the bug report).

This bug is related to [Compiler/3707].

Consider that we have the following expanded class:

-------------------------
expanded class B

inherit

	ANY
		redefine
			default_create
		end

create

	default_create,
	make_from_reference

--convert
--	make_from_reference ({reference B}),
--	to_reference: {reference B}

feature

	default_create is
			-- 
		do
			i := 45
		end

	make_from_reference (b: reference B) is
		do
			i := 46
		end

	to_reference: reference B is
		do
			create Result.default_create
		end

	i: INTEGER

end
-------------------------

Then when I try to compile:

-------------------------
class A

create

	make

feature

	make is
		do
			create l.make
		end

	l: LINKED_LIST [B]

end
-------------------------

I get the following error:

-------------------------------------------------------------------------------
Error code: VTCG
Error: actual generic parameter does not conform to constraint.
What to do: make sure that actual parameter is a type conforming to the
  constraint (the type appearing after `->' for the corresponding formal).

Class: A
Feature: invariant
In declaration: LINKED_LIST [B]

For type: LINKED_LIST [B]
Argument number: 1:
Actual generic parameter: B
Type to which it should conform: ANY
-------------------------------------------------------------------------------

This is what I already reported in [Compiler/3707], but what I wanted to point out here is that 'LINKED_LIST [B]' does not appear in the invariant as indicated in the error message above. There is no invariant in class A, and the type actually appears in feature `l'.
To Reproduce

										
Problem Report Interactions
From:gobobe    Date:2004/03/20    Download