Copyright (C) 2000-2012 |
GNU Info (g77-300.info)Multiple Definitions of External NamesMultiple Definitions of External Names -------------------------------------- `g77' doesn't allow a common block and an external procedure or `BLOCK DATA' to have the same name. Some systems allow this, but `g77' does not, to be compatible with `f2c'. `g77' could special-case the way it handles `BLOCK DATA', since it is not compatible with `f2c' in this particular area (necessarily, since `g77' offers an important feature here), but it is likely that such special-casing would be very annoying to people with programs that use `EXTERNAL FOO', with no other mention of `FOO' in the same program unit, to refer to external procedures, since the result would be that `g77' would treat these references as requests to force-load BLOCK DATA program units. In that case, if `g77' modified names of `BLOCK DATA' so they could have the same names as `COMMON', users would find that their programs wouldn't link because the `FOO' procedure didn't have its name translated the same way. (Strictly speaking, `g77' could emit a null-but-externally-satisfying definition of `FOO' with its name transformed as if it had been a `BLOCK DATA', but that probably invites more trouble than it's worth.) automatically generated by info2www version 1.2.2.9 |