Bug 3806 – TypeInfo_Const has member base in object_.d and member next in object.di

Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P2
Component
druntime
Product
D
Version
D2
Platform
Other
OS
Windows
Creation time
2010-02-15T20:52:00Z
Last change time
2015-08-21T13:52:55Z
Assigned to
bugzilla
Creator
y0uf00bar

Comments

Comment #0 by y0uf00bar — 2010-02-15T20:52:55Z
TypeInfo_Const in object_.d inherits function next(). It has a member, TypeInfo base. This is useful for unwrapping Invariant and Const types. But object.di TypeInfo_Const has no member base but has member next, which would occupy same memory layout as the member base in object.d. Trying to access TypeInfo_Const next, confuses with inherited next, which returns base.next. Would like direct access to the member base please (rename from next in object.di), just like in TypeInfo_Typedef. Workaround is just to fix it, edit object.di, TypeInfo_Const, and change name of member next to base.
Comment #1 by sean — 2010-06-08T13:08:01Z
There appears to be little consistency with this field for TypeInfo. Some have a "next" member, some have a "base" member, and some have an "m_next" member. I'm afraid I'll break something if I change this, so I'm reassigning to Walter. Ideally, all TypeInfo classes will use the same name (like "base") for the member variable and override next() appropriately.
Comment #2 by slavo5150 — 2015-08-21T13:05:16Z
Since object.di has been removed (https://github.com/D-Programming-Language/druntime/pull/1260), is this issue still relevant?
Comment #3 by schveiguy — 2015-08-21T13:52:55Z
(In reply to Mike from comment #2) > Since object.di has been removed > (https://github.com/D-Programming-Language/druntime/pull/1260), is this > issue still relevant? No, closing.