• Russ Cox's avatar
    eliminate the package global name space assumption in object files · 758f2bc5
    Russ Cox authored
    5g/6g/8g: add import statements to export metadata, mapping package path to package name.
    	recognize "" as the path of the package in export metadata.
    	use "" as the path of the package in object symbol names.
    
    5c/6c/8c, 5a/6a/8a: rewrite leading . to "". so that ·Sin means Sin in this package.
    
    5l/6l/8l: rewrite "" in symbol names as object files are read.
    
    gotest: handle new symbol names.
    
    gopack: handle new import lines in export metadata.
    
    Collectively, these changes eliminate the assumption of a global
    name space in the object file formats.  Higher level pieces such as
    reflect and the computation of type hashes still depend on the
    assumption; we're not done yet.
    
    R=ken2, r, ken3
    CC=golang-dev
    https://golang.org/cl/186263
    758f2bc5
reg.c 24.5 KB