~vcs-imports-ii/dejagnu/master

« back to all changes in this revision

Viewing changes to runtest.exp

  • Committer: Jacob Bachmeyer
  • Date: 2023-11-08 03:08:04 UTC
  • Revision ID: git-v1:a877b418a00dcc3c5b4d7584e0d85949c843c4ed
Fix tests that attempt to determine if target_alias has been set

The problem with using [info exists target_alias] is that target_alias
is unconditionally initialized to the empty string and therefore always
exists.

Show diffs side-by-side

added added

removed removed

Lines of Context:
233
233
        if {[target_info exists target_install]} {
234
234
            set target_install [target_info target_install]
235
235
        }
236
 
        if {[info exists target_alias]} {
 
236
        if {$target_alias ne ""} {
237
237
            set tmp $target_alias-$name
238
238
        } elseif {[info exists target_install]} {
239
239
            if { [lsearch -exact $target_install $target_alias] >= 0 } {
242
242
                set tmp "[lindex $target_install 0]-$name"
243
243
            }
244
244
        }
 
245
        # There appears to be a possibility for tmp to be unset at this
 
246
        # point, which will cause a Tcl error, but this can only occur if
 
247
        # the init files invoke transform prior to defining target_alias,
 
248
        # since the target_alias will be defaulted to the value of
 
249
        # target_triplet before tests are run.  If target_triplet is also
 
250
        # empty, this point will not be reached; see test above.
245
251
        verbose "Transforming $name to $tmp"
246
252
        return $tmp
247
253
    }
890
896
#
891
897
# Default target_alias to target_triplet.
892
898
#
893
 
if {![info exists target_alias]} {
 
899
if {$target_alias eq ""} {
894
900
    set target_alias $target_triplet
895
901
}
896
902