Global variable type does not match previous declaration

Jacob Carlborg doob at me.com
Thu Dec 14 10:25:06 UTC 2017


On 2017-12-13 22:38, Satoshi wrote:
> What means this error and how to solve it?
> 
> object.d-mixin-1072(1112): Error: Global variable type does not match 
> previous declaration with same mangled name: _D10TypeInfo_m6__initZ
> 
> Actually, I'm working on OS with minimal D runtime and I'm unable to 
> compile object.d
> 
> source code:
> https://github.com/Rikarin/Trinix/blob/a42a6e1fb4b87374b3e5ad8b9be501b080655ccd/Kernel/object.d 

I think this can occur with LDC when the compiler sees multiple symbols 
that it think it should have the same mangled name but they don't. Or 
the opposite, multiple symbols that should have different mangled names 
but have the same. This is pretty easy to simulate with pragma(mangle).

-- 
/Jacob Carlborg


More information about the Digitalmars-d-learn mailing list