[patch,gfortran] Fix PR17917 - module equivalences (redux)

Paul Thomas paulthomas2@wanadoo.fr
Tue Aug 9 17:15:00 GMT 2005


Tobi,

>I couldn't see how uniqueness is important, the code only depends on == / !=
>NULL, so I think you should just use
>+ 	    e->module = gfc_get_string(module_name);
>  
>
Not so, e->module is used to name the union and is mangled to provide 
the external symbol for the loader.  Since the module can have more than 
one equivalence, they, at very least, have to be numbered.  Ideally, I 
would use a character as a separator that is not legal in fortran 
names.  Each that I tried does strange things to the assembler; eg "#" 
is really wonderful for the pyrotechnics that it causes.

>Since the prerequisite patch is not yet ready, you'll have to queue this patch
>until the other issue's worked out.  This patch by itself is ok modulo my
>remark from above.
>  
>
Fine.  I have just spent more time than I should on responding to FX's 
excellent remark; turns out that I had the solution in minutes but that 
the test case was wrong.  It's just now regtesting.

>(who promises to dedicate every moment of boredom at the office to gfortran)
>  
>
Reading Dilbert cartoons is pretty good too.

Paul



More information about the Fortran mailing list