I'm pretty sure this cannot be done in VHDL 2008. I wondered if it will be possible in VHDL 2019.
I want to provide an initial value to a generic where the type is a generic type in the same interface list.
generic (
type some_type;
G_INIT : some_type; --I want this to default to the initial value of some_type
)
...
signal s : some_type := G_INIT;
Ideally, I would want it to simply default to the initial value of the type, But the user could override it if they wish. You cannot use any of the standard attributes because you don't know if some_type will be a scalar, discrete or composite type. In the above with 2008, The only option appears to be to force the user to provide a value for G_INIT every time.
Ideally, there would be an attribute such as T'INITIAL_VAL to cover this.