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]

Re: [RFA]: Fix jmain.exp to xfail for break at main


Jeff Johnston wrote:
Michael Elizabeth Chastain wrote:

jj> Currently, the gdb.java/jmain.exp test has hard-coded line 6 as the
jj> expected line number for a break at jmain.main (java.lang.String[]).
jj> This occurs for gcc 3.3 and is incorrect. Line 6 is the end brace for
jj> the main routine. As of gcc 3.4, the line number is reported to be line
jj> 4. This also isn't what gdb wants as this points to the open brace.
jj> The desired result is that we point to line 5 which is the first line in
jj> main (return statement). That said, I have changed the expected line to
jj> be 5 and set the test as an XFAIL.


Dunno what Andrew will say about this patch but I don't think it's good.


I did talk to Andrew briefly about this.


XFAIL means 'external fail'.  If you add an XFAIL to the test suite, I
want to see more analysis about what the bug is -- the best thing is an
actual gcc PR number.  In the gcc PR is a copy of jmain.java and the
assembly language output and an explanation of why the assembly language
output is incorrect.

What does gcc HEAD do?


It gives line 4. I meant to imply that above when I said "since 3.4", but I'll clarify it here. For a similar C test case, it points to the return statement. It definitely should not be line 6 in any circumstance.


If gcc HEAD actually gives line 5, then I would do this in the test
script:

  # gcc HEAD 2004-07-05 marks the first line as 5, which is correct.
  # gcc 3.3.4 -gdwarf-2 marks the first line as line 6.
  # gcc 3.4.1 -gdwarf-2 marks the first line as line 4.
  set bpmain "Breakpoint .* file .*jmain.java, line 5\."

If gcc HEAD gives some other line, then I think you need to file
a PR against gcc.  It may be low priority and not fixed for years,
in which case you can XFAIL the test with that PR number.


Ok, I will create the PR and resubmit the patch.



See attached patch. Ok to commit?



Michael C

===

2004-07-07 Jeff Johnston <jjohnstn@redhat.com>

         * gdb.java/jmain.exp: Fix expected line number for main to
         break at.  Set XFAIL for break at main test since gcj does not
         provide line number info for first statement in main.



Index: gdb.java/jmain.exp
===================================================================
RCS file: /cvs/src/src/gdb/testsuite/gdb.java/jmain.exp,v
retrieving revision 1.1
diff -u -p -r1.1 jmain.exp
--- gdb.java/jmain.exp	27 Jun 2004 00:41:39 -0000	1.1
+++ gdb.java/jmain.exp	8 Jul 2004 18:16:45 -0000
@@ -48,7 +48,7 @@ gdb_test "set print sevenbit-strings" ".
 
 # Where the breakpoint should always land
 
-set bpmain "Breakpoint .* file .*jmain.java, line 6\."
+set bpmain "Breakpoint .* file .*jmain.java, line 5\."
 
 gdb_load "${binfile}"
 setup_kfail *-*-* java/1567
@@ -63,4 +63,5 @@ gdb_test "break jmain.main" "${bpmain}"
 
 # Check that a fully qualified "main" works.
 gdb_load "${binfile}"
+setup_xfail *-*-* gcc/16439
 gdb_test "break \'${testfile}.main(java.lang.String\[\])\'" "${bpmain}"

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