Hi All, This started out as the search for a fix to pr109948 and evolved to roll in 5 other prs. Basically parse_associate was far too clunky and, in anycase, existing functions in resolve.cc were well capable of doing the determination of the target expression rank. While I was checking the comments, the lightbulb flashed with respect to prs 102109/112/190 and the chunk dealing with function results of unknown type was born. Thanks to the changes in parse.cc, the problem in pr99326 migrated upstream to the resolution and the chunklet in resolve.cc was an obvious fix. I am minded to s/{ dg-do run}/{ dg-do compile } for all six testcases. At the testing stage, I wanted to check that the testcases actually did what they are supposed to do :-) Bootstraps and regtests OK - good for head? Paul PS I need to do some housekeeping on pr87477 now. Some of the blockers have "fixed themselves" and others are awaiting backporting. I think that there are only 4 or so left, of which 89645 and 99065 are the most difficult to deal with.