This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch] In testsuite, make 'test_compiler_info' work like 'istarget'


The dejagnu procedure 'test_compiler_info' works in much the same way as the dejagnu procedure
''istarget': it takes a pattern as argument and tests that pattern against a magic string.  Unlike
'istarget', 'test_compiler_info' does not return the magic string if the argument is null.  This patch
fixes that.

With this patch, you can do this:

	switch -glob [test_compiler_info] {
		"gcc-1-*"	{ set gcc_compiled 1 }
		"gcc-2-*" 	{ set gcc_compiled 2 }
		"gcc-3-*"	{ set gcc_compiled 3 }
		"gcc-4-*"	{ set gcc_compiled 4 }
		"gcc-5-*"	{ set gcc_compiled 5 }
		"hpcc-*"	{ set hp_cc_compiler 1 }
		"hpacc-*"	{ set hp_aCC_compiler 1 }
                 default	{ warning "unknown compiler" }
	}

instead of this:

	if {[test_compiler_info "gcc-1-*"]}		then  { set gcc_compiled 1 
	} elseif {[test_compiler_info "gcc-2-*"]}	then  { set gcc_compiled 2 
	} elseif {[test_compiler_info "gcc-3-*"]}	then  { set gcc_compiled 3 
	} elseif {[test_compiler_info "gcc-4-*"]}	then  { set gcc_compiled 4 
	} elseif {[test_compiler_info "gcc-5-*" ]}	then  { set gcc_compiled 5 
	} elseif {[test_compiler_info "hpcc-*" ]}	then  { set hp_cc_compiler 1 
	} elseif {[test_compiler_info "hpacc-*"]}	then  { set hp_aCC_compiler 1 
        } else { warning "unknown compiler" }

Of course you could do the following, but that would be cheating, right?

        global compiler_info
	switch -glob $compiler_info {
		"gcc-1-*"	{ set gcc_compiled 1 }
		"gcc-2-*" 	{ set gcc_compiled 2 }
		"gcc-3-*"	{ set gcc_compiled 3 }
		"gcc-4-*"	{ set gcc_compiled 4 }
		"gcc-5-*"	{ set gcc_compiled 5 }
		"hpcc-*"	{ set hp_cc_compiler 1 }
		"hpacc-*"	{ set hp_aCC_compiler 1 }
                 default	{ warning "unknown compiler" }
	}

OK to commit?

-=# Paul #=-

--
2005-04-06  Paul Gilliam  <pgilliam@us.ibm.com>

	* testsuite/lib/gdb.exp: Make 'test_compiler_info' work like
        'istarget' - return compiler_info if null argument.

Index: lib/gdb.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/lib/gdb.exp,v
retrieving revision 1.58
diff -c -3 -p -r1.58 gdb.exp
*** lib/gdb.exp	10 Sep 2004 01:04:59 -0000	1.58
--- lib/gdb.exp	6 Apr 2005 20:38:35 -0000
*************** proc get_compiler_info {binfile args} {
*** 1293,1298 ****
--- 1293,1309 ----
  
  proc test_compiler_info { compiler } {
      global compiler_info
+ 
+     # if no arg, return the compiler_info string
+ 
+     if [string match "" $compiler] {
+         if [info exists compiler_info] {
+             return $compiler_info
+         } else {
+             perror "No compiler info found."
+         }
+     }
+ 
      return [string match $compiler $compiler_info]
  }
  


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]