Cannot convert from type T to type T?
A strange error here using static factory pattern. What am I missing?  Here is the code:

    class subclass<T> extends immutablestruct<T>{
	private immutablestruct f;
	private T x;
	
        //constructor
	<T> subclass(T y, immutablestruct<T> f ){
		this.x = y;  //this is there the error is
		this.f = f;
	}
Cannot convert from type T to type T?
===

A strange error here using static factory pattern. What am I missing?  Here is the code:

    class subclass<T> extends immutablestruct<T>{
	private immutablestruct f;
	private T x;
	
        //constructor
	<T> subclass(T y, immutablestruct<T> f ){
		this.x = y;  //this is there the error is
		this.f = f;
	}