public inbox for java-prs@sourceware.org
help / color / mirror / Atom feed
* Re: java/6823: "internal error: Segmentation fault" on -O2 compilation to machine code
@ 2003-05-13  6:26 steven
  0 siblings, 0 replies; 2+ messages in thread
From: steven @ 2003-05-13  6:26 UTC (permalink / raw)
  To: gcc-bugs, gcc-prs, java-prs, nobody, oskar

Synopsis: "internal error: Segmentation fault" on -O2 compilation to machine code

State-Changed-From-To: open->closed
State-Changed-By: steven
State-Changed-When: Tue May 13 06:26:18 2003
State-Changed-Why:
    Reported fixed

http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=6823


^ permalink raw reply	[flat|nested] 2+ messages in thread

* java/6823: "internal error: Segmentation fault" on -O2 compilation to machine code
@ 2002-05-26 12:26 Oskar Liljeblad
  0 siblings, 0 replies; 2+ messages in thread
From: Oskar Liljeblad @ 2002-05-26 12:26 UTC (permalink / raw)
  To: gcc-gnats


>Number:         6823
>Category:       java
>Synopsis:       "internal error: Segmentation fault" on -O2 compilation to machine code
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun May 26 12:26:00 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Oskar Liljeblad <oskar@osk.mine.nu>
>Release:        3.1
>Organization:
>Environment:
Linux/x86
>Description:
Compile this with "gcj -c -O2 Demo.java":

  class Demo
  {
    final synchronized void foo() { return; }
    void bar()
    {
      foo();
      synchronized (this) { return; }
    }
  }

The result is:

  Demo.java: In class `Demo':
  Demo.java: In method `Demo.bar()':
  Demo.java:9: internal error: Segmentation fault
  Please submit a full bug report,
  with preprocessed source if appropriate.
  See <URL:http://www.gnu.org/software/gcc/bugs.html> for
  instructions.

It will work fine if you do one of:

  * Remove the "return;" in foo()

  * Remove "syncronized" in foo's prototype.

  * Remove "final" in foo's prototype.

  * Remove the call "foo()" in bar.

  * Remove the "return;" in the synchronized block in bar.

  * Remove the synchronized block in bar
    (keeping the "return" statement).

  * Put the "foo" method after "bar" instead of before.

  * Compile into java bytecode instead of machine code.

  * Don't compile the program with -O2.

I'm sorry - it is easy to find bugs but harder to fix them :( Unfortunately I know too little about GCC to help out.

Oskar Liljeblad (oskar@osk.mine.nu)

>How-To-Repeat:

>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2003-05-13  6:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-05-13  6:26 java/6823: "internal error: Segmentation fault" on -O2 compilation to machine code steven
  -- strict thread matches above, loose matches on Subject: below --
2002-05-26 12:26 Oskar Liljeblad

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).