Thread overview
[Issue 24333] Inline ClassInfo with the vtbl
Jan 11, 2024
Walter Bright
Jan 12, 2024
Walter Bright
Jan 12, 2024
ZombineDev
Jan 16, 2024
Walter Bright
Jan 16, 2024
Richard Cattermole
January 11, 2024
https://issues.dlang.org/show_bug.cgi?id=24333

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |industry, performance

--
January 12, 2024
https://issues.dlang.org/show_bug.cgi?id=24333

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=24336

--
January 12, 2024
https://issues.dlang.org/show_bug.cgi?id=24333

ZombineDev <petar.p.kirov@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |petar.p.kirov@gmail.com

--
January 16, 2024
https://issues.dlang.org/show_bug.cgi?id=24333

--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> ---
This is a challenging problem because the ClassInfo is of variable size. Embedding it with the vtbl[] would mean the variable parts would then have to be indirect.

--
January 16, 2024
https://issues.dlang.org/show_bug.cgi?id=24333

Richard Cattermole <alphaglosined@gmail.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |alphaglosined@gmail.com

--- Comment #2 from Richard Cattermole <alphaglosined@gmail.com> ---
Not necessarily.

You could reverse ClassInfo members, so that the fixed header goes after the variable length members.

It is the reverse of how you would normally want to work, where you increment the pointer, whereas this would decrement instead.

--