This is the mail archive of the gdb-patches@sourceware.org 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]

RE: PING : [PING] [RFC-v2] Use untested for macscp.exp if no macro information generated


Thanks, Tom.

Patch applied.


Pierre

For the record, here is what I checked in:


ChangeLog entry:

2009-05-30  Pierre Muller  <muller@ics.u-strasbg.fr>

	* gdb.base/macscp.exp (info_macro): Return undefined if undefined.
	(check_macro): Return 1 if undefined.
	If first test fails, check if macro debug information is available,
	and report unsupported test if no macro information is found.


Index: gdb.base/macscp.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.base/macscp.exp,v
retrieving revision 1.21
diff -u -p -r1.21 macscp.exp
--- gdb.base/macscp.exp	29 Apr 2009 07:51:33 -0000	1.21
+++ gdb.base/macscp.exp	30 May 2009 07:54:43 -0000
@@ -155,7 +155,7 @@ proc info_macro {macro} {
     switch -exact -- $definition {
         no-macro-info { return no-macro-info }
         timeout { return timeout }
-        undefined -
+        undefined { return undefined }
         default {
             if {[llength $location] >= 1} {
                 return [concat $location [list $definition]]
@@ -181,6 +181,10 @@ proc check_macro {macro expected where} 
                 xfail "executable includes no macro debugging information"
                 return 1
             }
+	    undefined {
+		fail "info macro $macro $where (undefined)"
+		return 1
+	    }
             timeout {
                 fail "info macro $macro $where (timeout)"
             }
@@ -202,8 +206,28 @@ proc list_and_check_macro {func macro ex
 
 
 if {[list_and_check_macro main WHERE {macscp1.c {before macscp1_3}}]} {
-    return 0
+    global verbose
+    set macro_support "unknown"
+    send_gdb "info source\n"
+    gdb_test_multiple "info source" "Test macro information"  {
+	-re "Includes preprocessor macro info\..*$gdb_prompt $" {
+	    set macro_support 1
+	    verbose "Source has macro information"
+	}
+	-re "Does not include preprocessor macro info\..*$gdb_prompt $" {
+	    set macro_support 0
+	    verbose "Source has no macro information"
+	}
+	default {
+	    warning "couldn't check macro support (no valid response)."
+	}
+    }
+    if {$macro_support == 0} {
+	unsupported "Skipping test because debug information does not
include macro information."
+	return 0
+    }
 }
+ 
 list_and_check_macro macscp2_2 WHERE {macscp2.h macscp1.c {before
macscp2_2}}
 list_and_check_macro macscp3_2 WHERE {macscp3.h macscp1.c {before
macscp3_2}}
 


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