>> Thanks for the suggestions. The attached patch changes all "."-something
>> symbol names, which I found.
>>
>> Build and regtested on x86-64-gnu-linux.
>> OK for the trunk and 4.7? (".saved_dovar" also occurs in 4.6; we could also
>> backport that part to 4.6, but I am not sure whether it is needed.)
>
> I think at least for trunk it should be ok.

One more comment: Since its appearance is a bit scattered in the code,
how about using a small macro which prepends the "_F" prefix to a
given variable name?

Btw, note that we are using a double underscore scheme in other places
(like __class, __vtab, __vtype, etc). I have even used an '@' in one
place, namely (hidden) procedure pointer results ("ppr@"). Is there a
need to unify all those cases?

Cheers,
Janus



>> Am 04.10.2012 01:07, schrieb David Edelsohn:
>>
>>> For C and C++, identifiers beginning with underscore and upper case
>>> letter or with two underscores are reserve to the implementation.  C++
>>> uses _Z for mangling.
>>>
>>> Maybe Fortran could prepend "_F".  Something beginning with an
>>> underscore seems like a much better choice, given the rules about
>>> reserved identifiers.
>>>
>>> Thanks, David
>>>
>>> On Wed, Oct 3, 2012 at 5:00 PM, Tobias Burnus <bur...@net-b.de> wrote:
>>>>
>>>> David,
>>>>
>>>>
>>>> David Edelsohn wrote:
>>>>>
>>>>> I am not sure why you chose a period and how best to correct this.
>>>>
>>>>
>>>> Well, in principle any name which the user cannot enter would do. (Not
>>>> enter: At least not as valid Fortran identifier.)
>>>>
>>>> The reason for choosing "." is that <dot><var_name> is used elsewhere in
>>>> gfortran for such identifier for the string-length variable belonging to
>>>> <var_name>, e.g. "._result" in trans-decl.c. I assume the reason that it
>>>> didn't pop up with those is that those are local variables, but I
>>>> wouldn't
>>>> be surprised if it would break elsewhere.
>>>>
>>>> I wonder whether "@" would work, otherwise, one could also use "_". The
>>>> only
>>>> other problem is that it will break the ABI. On the other hand, it's a
>>>> rather new feature and if we bump the .mod version number, the chance
>>>> that
>>>> one effectively forces the user to re-compile is rather high. So far we
>>>> always bumped the .mod version number as something changed. There are
>>>> also
>>>> some other patches pending which effectively lead to a bump in the .mod
>>>> version.
>>>>
>>>> (The .mod version won't affect code which doesn't use modules such as
>>>> BLAS/LAPACK or any Fortran 66/77 code, but those won't be affected by the
>>>> ABI change anyway as there the name doesn't propagate as it does with
>>>> modules..)
>>>>
>>>>
>>>> Thanks for investigating the test-suite failure.
>>>>
>>>> Tobias
>>
>>

Reply via email to