Sorry, I made few mistakes, let me be more clear:Can the reflexpr operator in #2 "see" members of class X before reflexpr usage like decltype ?consteval auto get_member_types(info classtype) {auto result = members_of(classtype); // #1 members_of can see incomplete class members ?for (auto &info : result) {info = type_of(info); // I suppose this line converts 'int X::*' to 'int'}return result;};struct X {int a;bool b;char c;// so far we have 3 members...std::variant< typename( get_member_types( reflexpr (X) ) ) > d; // #2 can reflexpr see previous 3 members ? ( goto #1 )};Is the type of d "variant<int, bool, char>" ? Is this illegal ?