public inbox for java-prs@sourceware.org
help / color / mirror / Atom feed
* [Bug libgcj/23739] New: IsAssignableFrom reverses arguments
@ 2005-09-05 18:51 fitzsim at redhat dot com
  2005-09-05 18:54 ` [Bug libgcj/23739] " fitzsim at redhat dot com
                   ` (6 more replies)
  0 siblings, 7 replies; 8+ messages in thread
From: fitzsim at redhat dot com @ 2005-09-05 18:51 UTC (permalink / raw)
  To: java-prs

libgcj's IsAssignableFrom returns results opposite to those returned by Sun. 
This seems to be a simple mix-up of the meanings of the function's two arguments.

-- 
           Summary: IsAssignableFrom reverses arguments
           Product: gcc
           Version: 4.1.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P2
         Component: libgcj
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: fitzsim at redhat dot com
                CC: gcc-bugs at gcc dot gnu dot org,java-prs at gcc dot gnu
                    dot org


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
@ 2005-09-05 18:54 ` fitzsim at redhat dot com
  2005-09-05 21:24 ` tromey at gcc dot gnu dot org
                   ` (5 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: fitzsim at redhat dot com @ 2005-09-05 18:54 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From fitzsim at redhat dot com  2005-09-05 18:54 -------
Created an attachment (id=9669)
 --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=9669&action=view)
test case demonstrating incorrect IsAssignableFrom results

To build the test case, run "make" in the iaf directory.

$ make JAVA=gij run
LD_LIBRARY_PATH=. $JAVA iaf
B extends A
isAssignableFrom (A, B): 1
isAssignableFrom (B, A): 0

$ make JAVA=/usr/java/jdk1.5.0_01/bin/java run
LD_LIBRARY_PATH=. $JAVA iaf
B extends A
isAssignableFrom (A, B): 0
isAssignableFrom (B, A): 1


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
  2005-09-05 18:54 ` [Bug libgcj/23739] " fitzsim at redhat dot com
@ 2005-09-05 21:24 ` tromey at gcc dot gnu dot org
  2005-09-05 21:31 ` tromey at gcc dot gnu dot org
                   ` (4 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-09-05 21:24 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From tromey at gcc dot gnu dot org  2005-09-05 21:24 -------
How embarrassing.

One question is whether we ought to change CNI to conform.
I suspect the answer is 'yes', for clarity's sake.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
   Last reconfirmed|0000-00-00 00:00:00         |2005-09-05 21:24:23
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
  2005-09-05 18:54 ` [Bug libgcj/23739] " fitzsim at redhat dot com
  2005-09-05 21:24 ` tromey at gcc dot gnu dot org
@ 2005-09-05 21:31 ` tromey at gcc dot gnu dot org
  2005-09-05 22:20 ` [Bug libgcj/23739] JNI: " mckinlay at redhat dot com
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-09-05 21:31 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From tromey at gcc dot gnu dot org  2005-09-05 21:31 -------
I'm testing a patch


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
         AssignedTo|unassigned at gcc dot gnu   |tromey at gcc dot gnu dot
                   |dot org                     |org
             Status|NEW                         |ASSIGNED
   Last reconfirmed|2005-09-05 21:24:23         |2005-09-05 21:31:13
               date|                            |


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] JNI: IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
                   ` (2 preceding siblings ...)
  2005-09-05 21:31 ` tromey at gcc dot gnu dot org
@ 2005-09-05 22:20 ` mckinlay at redhat dot com
  2005-09-06 16:01 ` cvs-commit at gcc dot gnu dot org
                   ` (2 subsequent siblings)
  6 siblings, 0 replies; 8+ messages in thread
From: mckinlay at redhat dot com @ 2005-09-05 22:20 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From mckinlay at redhat dot com  2005-09-05 22:20 -------
IMO Sun actually got it wrong here ;-) Reading function arguments from
left-to-right, I'd expect the first argument to be the context ("Is") and the
second to be the class refered to in (the "From").

Having said that, it is rather confusing that the order is reversed between JNI
and libgcj's internal function. I agree we should fix it, though there are a lot
of callers to update. It is not an issue for CNI, because IsAssignableFrom is
not exposed as a public CNI function.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|IsAssignableFrom reverses   |JNI: IsAssignableFrom
                   |arguments                   |reverses arguments


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] JNI: IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
                   ` (3 preceding siblings ...)
  2005-09-05 22:20 ` [Bug libgcj/23739] JNI: " mckinlay at redhat dot com
@ 2005-09-06 16:01 ` cvs-commit at gcc dot gnu dot org
  2005-09-06 16:03 ` cvs-commit at gcc dot gnu dot org
  2005-09-06 16:04 ` tromey at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-06 16:01 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-09-06 16:01 -------
Subject: Bug 23739

CVSROOT:	/cvs/gcc
Module name:	gcc
Changes by:	tromey@gcc.gnu.org	2005-09-06 16:01:32

Modified files:
	libjava        : ChangeLog jni.cc link.cc prims.cc 
	libjava/java/lang: natClass.cc 
	libjava/java/lang/reflect: natMethod.cc 
	libjava/testsuite: Makefile.in 
Added files:
	libjava/testsuite/libjava.jni: pr23739.c pr23739.java 
	                               pr23739.out 

Log message:
	PR libgcj/23739:
	* testsuite/libjava.jni/pr23739.c: New file.
	* testsuite/libjava.jni/pr23739.java: New file.
	* testsuite/libjava.jni/pr23739.out: New file.
	* jni.cc (_Jv_JNI_IsAssignableFrom): Reversed arguments.
	* java/lang/reflect/natMethod.cc (invoke): Updated.
	* java/lang/natClass.cc (isAssignableFrom): Updated.
	(isInstance): Likewise.
	(_Jv_IsAssignableFrom): Reversed arguments.
	(_Jv_IsInstanceOf): Updated.
	(_Jv_CheckCast): Likewise.
	(_Jv_CheckArrayStore): Likewise.
	(_Jv_IsAssignableFromSlow): Reversed arguments.
	(_Jv_InterfaceAssignableFrom): Likewise.
	* link.cc (verify_type_assertions): Updated.
	* prims.cc (_Jv_CheckAccess): Updated.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&r1=1.3733&r2=1.3734
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/jni.cc.diff?cvsroot=gcc&r1=1.99&r2=1.100
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/link.cc.diff?cvsroot=gcc&r1=1.17&r2=1.18
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/prims.cc.diff?cvsroot=gcc&r1=1.112&r2=1.113
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/natClass.cc.diff?cvsroot=gcc&r1=1.89&r2=1.90
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/java/lang/reflect/natMethod.cc.diff?cvsroot=gcc&r1=1.46&r2=1.47
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/Makefile.in.diff?cvsroot=gcc&r1=1.86&r2=1.87
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.jni/pr23739.c.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.jni/pr23739.java.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/testsuite/libjava.jni/pr23739.out.diff?cvsroot=gcc&r1=NONE&r2=1.1



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] JNI: IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
                   ` (4 preceding siblings ...)
  2005-09-06 16:01 ` cvs-commit at gcc dot gnu dot org
@ 2005-09-06 16:03 ` cvs-commit at gcc dot gnu dot org
  2005-09-06 16:04 ` tromey at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: cvs-commit at gcc dot gnu dot org @ 2005-09-06 16:03 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From cvs-commit at gcc dot gnu dot org  2005-09-06 16:03 -------
Subject: Bug 23739

CVSROOT:	/cvs/gcc
Module name:	gcc
Branch: 	gcc-4_0-branch
Changes by:	tromey@gcc.gnu.org	2005-09-06 16:03:12

Modified files:
	libjava        : ChangeLog jni.cc 

Log message:
	PR libgcj/23739:
	* jni.cc (_Jv_JNI_IsAssignableFrom): Reversed arguments.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/ChangeLog.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.3391.2.94&r2=1.3391.2.95
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libjava/jni.cc.diff?cvsroot=gcc&only_with_tag=gcc-4_0-branch&r1=1.95.2.1&r2=1.95.2.2



-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

* [Bug libgcj/23739] JNI: IsAssignableFrom reverses arguments
  2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
                   ` (5 preceding siblings ...)
  2005-09-06 16:03 ` cvs-commit at gcc dot gnu dot org
@ 2005-09-06 16:04 ` tromey at gcc dot gnu dot org
  6 siblings, 0 replies; 8+ messages in thread
From: tromey at gcc dot gnu dot org @ 2005-09-06 16:04 UTC (permalink / raw)
  To: java-prs


------- Additional Comments From tromey at gcc dot gnu dot org  2005-09-06 16:04 -------
Fix checked in.


-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|                            |FIXED
   Target Milestone|---                         |4.0.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23739


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

end of thread, other threads:[~2005-09-06 16:04 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2005-09-05 18:51 [Bug libgcj/23739] New: IsAssignableFrom reverses arguments fitzsim at redhat dot com
2005-09-05 18:54 ` [Bug libgcj/23739] " fitzsim at redhat dot com
2005-09-05 21:24 ` tromey at gcc dot gnu dot org
2005-09-05 21:31 ` tromey at gcc dot gnu dot org
2005-09-05 22:20 ` [Bug libgcj/23739] JNI: " mckinlay at redhat dot com
2005-09-06 16:01 ` cvs-commit at gcc dot gnu dot org
2005-09-06 16:03 ` cvs-commit at gcc dot gnu dot org
2005-09-06 16:04 ` tromey at gcc dot gnu dot org

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).