gcc/libjava/testsuite/libjava.jni/calls.java
Hans Boehm a6fdf2d3bf natMethod.cc (_Jv_CallAnyMethodA): Allocate a full jvalue for each argument.
* java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Allocate a full
        jvalue for each argument. Simplify.
	* testsuite/libjava.jni/calls.c (docall),
	testsuite/libjava.jni/calls.java (longpb_f): check for argument
	misalignment.

From-SVN: r63563
2003-02-28 17:26:29 +00:00

73 lines
958 B
Java

// Test a bunch of different calls.
class base
{
public int int_f ()
{
return 27;
}
}
public class calls extends base
{
static
{
System.loadLibrary ("calls");
}
public native int docall ();
public byte byte_f ()
{
return 23;
}
public char char_f (int z)
{
return (char) ('a' + z);
}
public int int_f ()
{
return 1023;
}
public static long long_f (long q)
{
return q + 2023;
}
public static long longpb_f (byte b1, long q1, byte b2, long q2,
byte b3, long q3)
{
return q1 + q2 + q3 + 3023;
}
public void void_f ()
{
System.out.println ("void");
}
public static short short_f ()
{
return 2;
}
public double double_f ()
{
return -1.0;
}
public float float_f ()
{
return (float) 1.0;
}
public static void main (String[] args)
{
calls c = new calls ();
if (c.docall () != 0)
System.out.println ("fail");
}
}