This is the mail archive of the java@gcc.gnu.org mailing list for the Java 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: RFC: Multiple Java Source Files - Combine Inputs By Default


On Mon, 21 Jun 2004 10:55:06 +0100, Andrew Haley <aph@redhat.com> wrote:
> Ranjit Mathew writes:
>  >
>  > Per, is there any particular reason you added that extra
>  > check (shown above)?
> 
> So that we can do gcj -c foo.java bar.java baz.java and get foo.o,
> bar.o, and baz.o.

Sorry, I didn't fully understand this. Why would this be
affected?

If I use "-o" with "-c" like:

  gcj -c -o snafu foo.java bar.java baz.java

my understanding is that GCC will create file "snafu"
that contains *one* of what would have been "foo.o",
"bar.o" and "baz.o".

And my understanding of "combine inputs" in GCJ
is that it is merely a way of accepting multiple
source/class files in one invocation in the days before 
the "--combine" flag in GCC (for IMA?) came into being.

So they seem orthogonal to me, unless I'm missing
something (since I haven't read through the code
that properly).

Simply put, what I'm saying is that the effect of:

  gcj --main=Foo Foo.java Bar.java

and

  gcj -o snafu --main=Foo Foo.java Bar.java

can possibly be different currently (apart from "a.out" v/s 
"snafu" as the output file), and inconsistent even, leading to
the user getting confused.

A benign case is:

  http://gcc.gnu.org/ml/java-patches/2004-q2/msg00737.html

and (IIRC) a more malignant one is Jacks test 
8.1.1.1-default-abstract-9 (and others like it).

My first "almost successful" attempt at creating a patch for
the current ICE in PR 11117 in effect made GCJ completely
parse each input file before proceeding with the next. While
libjava compiled cleanly and the libjava testsuite passed
completely, there were a few failures (and some XPASSes)
in Jacks because of this - the above Jacks testcase is one
such one.

Thanks,
Ranjit.


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