Le 15/07/2023 à 12:08, Mikael Morin a écrit :
Le 15/07/2023 à 08:11, Paul Richard Thomas via Fortran a écrit :
That said, this is a big improvement to the finalization of variable
expressions. I can also confirm that the composite patch applies
cleanly and regtests without problems. Please either remove or
uncomment the line:
// gcc_assert (se.pre.head == NULL_TREE && se.post.head == NULL_TREE);
I presume that it reflects some case where the assertion failed? If
so, it might be prudent to retain the assertion especially in light
of:
gcc_assert (tmp_se.post.head == NULL_TREE); a bit further down.
Honestly, I can't really say. I just carried it around unchanged, as it
was originally, in patch 3/14. By the way, this makes me notice that
the variable name should have been changed from se to tmp_se.
As both pre and post blocks are copied to the final code block, I think
the assertions are not useful and can just be removed.
I have had a more in detail look at this commented assert, and it
appears that you are actually the person who commented it out, in
revision r13-6747-gd7caf313525a46f200d7f5db1ba893f853774aee from last march.
Don't you remember any detail about it?
Before that, the assert was present from the start, when the function
was introduced.
Uncommenting it doesn't seem to bring any new testsuite failure, but
again I don't really see what it would protect against.