diff --git a/src/symtable.xsl b/src/symtable.xsl index 74008297..228efadf 100644 --- a/src/symtable.xsl +++ b/src/symtable.xsl @@ -63,6 +63,8 @@ @emph{unless} another duplicate symbol of the same@tie{}@code{@@name} is found with a different @code{@@src}, in which case all symbols will be returned. + An exception to this rule is made when both symbols lack a @code{@@src}, + meaning that they are both defined in the same package. This allows sloppy comparison on concatenated symbol tables before tidying it up. @@ -94,7 +96,11 @@ + if ( ( $srcs[ 1 ] = '.' ) + and ( count( current-group() ) gt 1 ) ) then + current-group() + else + ()" /> diff --git a/test/symtable.xspec b/test/symtable.xspec index dec07263..25efa1e8 100644 --- a/test/symtable.xspec +++ b/test/symtable.xspec @@ -74,12 +74,20 @@ symbol --> - - + - + + + +