------- Comment #3 from pault at gcc dot gnu dot org 2006-10-18 10:08 ------- (In reply to comment #2) > Thank you, Richard - thanks to your splendid analysis, I was able to go > straight to the source of the problem: > trans-types.c(gfc_get_nodesc_array_type):1038 sets GFC_TYPE_ARRAY_LBOUND to > NULL_TREE if the arrayspec lower is not constant. It then feeds through to > the > interfacery that cannot cope with this and the ICE ensues. There is no reason > why GFC_TYPE_ARRAY_LBOUND cannot be set; being fortran, gfc_index_one_node is > an OK choice, although zero does OK too. This is regtesting as I write. If > all is well, I will submit before going to bed.
Hah! Famous last words... There is one g77 testcase that does not like this approach: g77/19981119-0.f Jumping past the offending build2 works fine; in fact the interface is not used at all, so I am wondering if there is not a cleaner way to do this. I will find a fix that I understand today. Paul Setting -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29490