Closed AndreyG closed 2 years ago
There is an extra member in this structure known as the 'elaboration' (what the placeholder was deduced to). This elaboration
field appears after basis
and is a TypeIndex
.
cc @GabrielDosReis
@cdacamar, thanks. Do I understand correctly, that elaboration
could be null for dependent (1) or undeducible (2) type?
template<typename T>
/* #1 */ auto f() { return T::foo(); }
/* #2 */ auto g(); // #2
In both cases the elaboration
field would be null.
According to the definition of
placeholder-type-structure
(sec:ifc:TypeSort:Placeholder) itssizeof
should be equal 8, butentry_size
in the partition "type.placeholder" produced by MSVC (IFC-version 0.40) is equal to 12.