depgen: Remove lax symbol concept

I had to dig through the old repository (prior to extracting into this one)
to see why this was introduced.  It seems that it was for the linker, and
TAMER's linker has no concept of lax symbols, so this is not used.

To make matters worse, the code I modified here could not have worked (in
depgen) because `$syms/@name` _will always have a value_.

Anyway, removing this has no effect on the compiled packages.

DEV-15114
main
Mike Gerwitz 2023-10-19 09:18:07 -04:00
parent b3f92e0678
commit f415e05f31
2 changed files with 5 additions and 29 deletions

View File

@ -319,7 +319,7 @@
<template match="lvm:pass[ root(.)/@lvmc:type = 'retmap' ]"
mode="preproc:depgen" priority="6">
<preproc:sym-dep name=":retmap:{@name}">
<preproc:sym-ref name="{@name}" lax="true" />
<preproc:sym-ref name="{@name}" />
</preproc:sym-dep>
</template>
@ -378,7 +378,7 @@
and root(.)/@lvmc:type = 'retmap' ]"
mode="preproc:depgen" priority="6">
<preproc:sym-dep name=":retmap:{@to}">
<preproc:sym-ref name="{@from}" lax="true" />
<preproc:sym-ref name="{@from}" />
</preproc:sym-dep>
</template>
@ -596,7 +596,7 @@
mode="preproc:depgen" priority="6">
<preproc:sym-dep name=":retmap:{@to}">
<for-each select=".//lvm:from">
<preproc:sym-ref name="{@name}" lax="true" />
<preproc:sym-ref name="{@name}" />
</for-each>
</preproc:sym-dep>
</template>

View File

@ -149,7 +149,7 @@
select="$symtable-map( $name )" />
<!-- we should never have this problem. -->
<if test="not( $sym ) and not( @lax='true' )">
<if test="not( $sym )">
<message terminate="yes">
<text>[depgen] internal error: </text>
<text>could not locate dependency symbol `</text>
@ -159,12 +159,8 @@
</message>
</if>
<!-- copy and augment (we set @name because $sym/@name may not exist
if @lax) -->
<preproc:sym name="{@name}">
<if test="$sym">
<sequence select="$sym/@*" />
</if>
<sequence select="$sym/@*" />
<preproc:meta>
<!-- retain type -->
@ -178,27 +174,7 @@
</for-each>
</variable>
<!-- only applicable if the symbol is @lax and the symbol was not
found in the local symbol table -->
<variable name="lax" select="
$uniq[
@lax='true'
and not( @name=$syms/@name )
]
" />
<preproc:sym-dep name="{@name}">
<!-- process symbols that have not been found in the local symbol
table (only applicable when cursym is @lax) -->
<for-each select="$lax">
<!-- the @lax flag here is simply to denote that this symbol may not
actually exist and that ignoring the check was explicitly
requested (and not a bug in the depgen process) -->
<preproc:sym-ref name="{@name}" lax="true">
<sequence select="preproc:meta/@*" />
</preproc:sym-ref>
</for-each>
<!-- @tex provided an non-empty, or function -->
<for-each select="$syms">
<preproc:sym-ref>