PR# 16741 expanded generic class works for variable type but not as return type

Problem Report Summary
Submitter: soapy2357
Category: Compiler
Priority: Low
Date: 2010/05/05
Class: Bug
Severity: Serious
Number: 16741
Release: 6.4, 6.5, 6.6
Confidential: No
Status: Suspended
Responsible:
Environment: Win Vista, MVS 2008, ES 6.6
Synopsis: expanded generic class works for variable type but not as return type

Description
I would expect the code provided below to either work in both cases or not at all. It's kind of weird that it works only in one case.
To Reproduce
expanded class
	FOO [ G ]
end

class
	APPLICATION

create
	make

feature {NONE} -- Initialization

	make
		local
			t: FOO [FOO [INTEGER]] -- works
		do
		end

	doesnt_work: FOO [FOO [INTEGER]] -- doesn't work: Cycle in expanded client relation

end
Problem Report Interactions
From:manus_eiffel    Date:2010/05/05    Status: Suspended    Download   
This is expected as the current compiler behaves like ETL3. The new standard is more flexible about that I believe, but our compiler does not handle this because we are trying to optimize expanded types and when used as an attribute it prevents that optimization.