diff options
| author | green <green@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-14 14:57:37 +0000 |
|---|---|---|
| committer | green <green@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-02-14 14:57:37 +0000 |
| commit | e826e8575ddc88d96c9098f6d0b09f7baf7a5b6d (patch) | |
| tree | 8f2311990fa1769a62f318958162b80d0cdcfcd5 /libjava/testsuite/libjava.jni/PR18116.c | |
| parent | f98505bb95692460e618f6822045d523e4323ea0 (diff) | |
| download | ppe42-gcc-e826e8575ddc88d96c9098f6d0b09f7baf7a5b6d.tar.gz ppe42-gcc-e826e8575ddc88d96c9098f6d0b09f7baf7a5b6d.zip | |
2005-02-14 Anthony Green <green@redhat.com>
PR libgcj/18116
* testsuite/libjava.jni/PR18116.c: New file.
* testsuite/libjava.jni/PR18116.java: New file.
* testsuite/libjava.jni/PR18116.out: New file.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@95014 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libjava/testsuite/libjava.jni/PR18116.c')
| -rw-r--r-- | libjava/testsuite/libjava.jni/PR18116.c | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/libjava/testsuite/libjava.jni/PR18116.c b/libjava/testsuite/libjava.jni/PR18116.c new file mode 100644 index 00000000000..bcd14331e61 --- /dev/null +++ b/libjava/testsuite/libjava.jni/PR18116.c @@ -0,0 +1,35 @@ +#include <stdlib.h> +#include <assert.h> +#include <PR18116.h> + +// The purpose of this test is to ensure that signatures with non-top +// level class arguments work. + +static jint +some_random_name (JNIEnv *env, jclass k, jobject v) +{ + return 555; +} + +JNIEXPORT jint JNICALL +JNI_OnLoad (JavaVM *vm, void *nothing) +{ + JNIEnv *env; + JNINativeMethod meth; + jclass k; + jint r; + + r = (*vm)->GetEnv (vm, (void **) &env, JNI_VERSION_1_2); + assert (r == JNI_OK); + k = (*env)->FindClass (env, "PR18116"); + assert (k != NULL); + + meth.name = "doit"; + meth.signature = "(Ljava/lang/String;)I"; + meth.fnPtr = some_random_name; + + r = (*env)->RegisterNatives (env, k, &meth, 1); + assert (r == JNI_OK); + + return JNI_VERSION_1_2; +} |

