PR gas/3918
* lib/gas-defs.exp (gas_started): New variable. Initialized to
0.
(gas_start): Set gas_started to 1.
(gas_finish): Skip if gas_started is 0. Reset gas_started to 0.
+2007-03-05 H.J. Lu <hongjiu.lu@intel.com>
+
+ PR gas/3918
+ * lib/gas-defs.exp (gas_started): New variable. Initialized to
+ 0.
+ (gas_start): Set gas_started to 1.
+ (gas_finish): Skip if gas_started is 0. Reset gas_started to 0.
+
2007-03-02 Paul Brook <paul@codesourcery.com>
* gas/arm/relax_branch_align.d: New test.
return 1
}
+# ${tool}_finish (gas_finish) will be called by runtest.exp. But
+# gas_finish should only be used with gas_start. We use gas_started
+# to tell gas_finish if gas_start has been called so that runtest.exp
+# can call gas_finish without closing the wrong fd.
+set gas_started 0
+
proc gas_start { prog as_opts } {
global AS
global ASFLAGS
global srcdir
global subdir
global spawn_id
+ global gas_started
+
+ set gas_started 1
verbose -log "Starting $AS $ASFLAGS $as_opts $prog" 2
catch {
proc gas_finish { } {
global spawn_id
+ global gas_started
- catch "close"
- catch "wait"
+ if { $gas_started == 1 } {
+ catch "close"
+ catch "wait"
+ set gas_started 0
+ }
}
proc want_no_output { testname } {