-
-
Notifications
You must be signed in to change notification settings - Fork 262
Closed
Labels
Description
With generated code, it's common to end up troubleshooting code such as
(apologies for bad formatting due to phone UI)
struct field1 { int i{ 4} ;};
struct field2 {double d{3.142};};
struct msg
{
field1 f1;
field2 f2;
field1& fielder() { return f1;}
field1 const& fielder() const { return f1;}
} ;
field1 getter( msg in)
{
return in. fielder() ;
}
int main()
{
msg m;
return getter) m) ;
}
Depending on exactly how everything gets cv a ualified, the results can be interesting, and difficult to reason about.
A great help would be to be able to see the types used by the compiler at each call point. Especially now with varying materialization fules depending on language version.