On Thu, Oct 16, 2014, at 22:21, Dave Horsfall wrote:
On Thu, 16 Oct 2014, Mark Longridge wrote:
It seems like early cc could only use variable
and function names up to
8 characters.
In those days it took only the first seven and ignored the rest,
prepending an underscore as you discovered. I don't remember when longer
names were recognised; for all I know it could've been around when
pathnames could be longer than 14 chars (which I think may have been a
BSDism).
For externals, it's a limitation of the PDP-11 a.out format. Other
systems may or may not have had the same limit or a different limit.
For VAX, 4BSD appears to use an "index into file string table", whereas
3BSD still has an 8-character string. I don't see any provision in the
4BSD linker for loading 3BSD binaries.
Filenames over 14 characters appear to have been introduced in 4.1BSD.