On Mon, Dec 10, 2012 at 10:54 AM, Jakub Jelinek <ja...@redhat.com> wrote: > On Mon, Dec 10, 2012 at 10:49:57AM -0500, David Edelsohn wrote: >> On Mon, Dec 10, 2012 at 5:05 AM, Jakub Jelinek <ja...@redhat.com> wrote: >> > On Mon, Dec 10, 2012 at 10:56:58AM +0100, Janus Weil wrote: >> >> > For C and C++, identifiers beginning with underscore and upper case >> >> > letter or with two underscores are reserve to the implementation. >> >> >> >> See the previous discussion in this thread ... >> > >> > That's true, but the implementation isn't just GCC, it is also C libraries >> > which aren't provided by GCC. Including a character (if possible) that >> > will make it unaccessible from C/C++ is desirable. And, not changing the >> > names of non-TREE_STATIC vars is also desirable, those I'm afraid show up >> > in the debug info from time to time, so making them unnecessarily larger >> > results in .debug_info size increases. >> >> An earlier suggestion was "_F." . Maybe gfortran.h should follow the >> same logic as gcc/defaults.h and gcc/cp/cp-tree.h: >> >> #ifndef NO_DOT_IN_LABEL >> "_F." >> #else >> #ifndef NO_DOLLAR_IN_LABEL >> "_F$" >> #else >> "_F_" >> #endif >> #endif > > Sure, we my > http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55636 > comment.
Yes, I agree with the intention. The remaining question is if this concept should be applied to all of the mangling with the new macro in gfortran.h. - David