1
1
/*
2
- * Copyright (c) 1997, 2023 , Oracle and/or its affiliates. All rights reserved.
2
+ * Copyright (c) 1997, 2024 , Oracle and/or its affiliates. All rights reserved.
3
3
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
4
*
5
5
* This code is free software; you can redistribute it and/or modify it
@@ -325,7 +325,7 @@ static Klass* basic_type_mirror_to_arrayklass(oop basic_type_mirror, TRAPS) {
325
325
assert (java_lang_Class::is_primitive (basic_type_mirror), " just checking" );
326
326
BasicType type = java_lang_Class::primitive_type (basic_type_mirror);
327
327
if (type == T_VOID) {
328
- THROW_0 (vmSymbols::java_lang_IllegalArgumentException ());
328
+ THROW_NULL (vmSymbols::java_lang_IllegalArgumentException ());
329
329
}
330
330
else {
331
331
return Universe::typeArrayKlass (type);
@@ -334,18 +334,18 @@ static Klass* basic_type_mirror_to_arrayklass(oop basic_type_mirror, TRAPS) {
334
334
335
335
arrayOop Reflection::reflect_new_array (oop element_mirror, jint length, TRAPS) {
336
336
if (element_mirror == nullptr ) {
337
- THROW_0 (vmSymbols::java_lang_NullPointerException ());
337
+ THROW_NULL (vmSymbols::java_lang_NullPointerException ());
338
338
}
339
339
if (length < 0 ) {
340
- THROW_MSG_0 (vmSymbols::java_lang_NegativeArraySizeException (), err_msg (" %d" , length));
340
+ THROW_MSG_NULL (vmSymbols::java_lang_NegativeArraySizeException (), err_msg (" %d" , length));
341
341
}
342
342
if (java_lang_Class::is_primitive (element_mirror)) {
343
343
Klass* tak = basic_type_mirror_to_arrayklass (element_mirror, CHECK_NULL);
344
344
return TypeArrayKlass::cast (tak)->allocate (length, THREAD);
345
345
} else {
346
346
Klass* k = java_lang_Class::as_Klass (element_mirror);
347
347
if (k->is_array_klass () && ArrayKlass::cast (k)->dimension () >= MAX_DIM) {
348
- THROW_0 (vmSymbols::java_lang_IllegalArgumentException ());
348
+ THROW_NULL (vmSymbols::java_lang_IllegalArgumentException ());
349
349
}
350
350
return oopFactory::new_objArray (k, length, THREAD);
351
351
}
@@ -357,19 +357,19 @@ arrayOop Reflection::reflect_new_multi_array(oop element_mirror, typeArrayOop di
357
357
assert (TypeArrayKlass::cast (dim_array->klass ())->element_type () == T_INT, " just checking" );
358
358
359
359
if (element_mirror == nullptr ) {
360
- THROW_0 (vmSymbols::java_lang_NullPointerException ());
360
+ THROW_NULL (vmSymbols::java_lang_NullPointerException ());
361
361
}
362
362
363
363
int len = dim_array->length ();
364
364
if (len <= 0 || len > MAX_DIM) {
365
- THROW_0 (vmSymbols::java_lang_IllegalArgumentException ());
365
+ THROW_NULL (vmSymbols::java_lang_IllegalArgumentException ());
366
366
}
367
367
368
368
jint dimensions[MAX_DIM]; // C array copy of intArrayOop
369
369
for (int i = 0 ; i < len; i++) {
370
370
int d = dim_array->int_at (i);
371
371
if (d < 0 ) {
372
- THROW_MSG_0 (vmSymbols::java_lang_NegativeArraySizeException (), err_msg (" %d" , d));
372
+ THROW_MSG_NULL (vmSymbols::java_lang_NegativeArraySizeException (), err_msg (" %d" , d));
373
373
}
374
374
dimensions[i] = d;
375
375
}
@@ -383,7 +383,7 @@ arrayOop Reflection::reflect_new_multi_array(oop element_mirror, typeArrayOop di
383
383
if (klass->is_array_klass ()) {
384
384
int k_dim = ArrayKlass::cast (klass)->dimension ();
385
385
if (k_dim + len > MAX_DIM) {
386
- THROW_0 (vmSymbols::java_lang_IllegalArgumentException ());
386
+ THROW_NULL (vmSymbols::java_lang_IllegalArgumentException ());
387
387
}
388
388
dim += k_dim;
389
389
}
@@ -977,11 +977,11 @@ static oop invoke(InstanceKlass* klass,
977
977
} else {
978
978
// check for null receiver
979
979
if (receiver.is_null ()) {
980
- THROW_0 (vmSymbols::java_lang_NullPointerException ());
980
+ THROW_NULL (vmSymbols::java_lang_NullPointerException ());
981
981
}
982
982
// Check class of receiver against class declaring method
983
983
if (!receiver->is_a (klass)) {
984
- THROW_MSG_0 (vmSymbols::java_lang_IllegalArgumentException (), " object is not an instance of declaring class" );
984
+ THROW_MSG_NULL (vmSymbols::java_lang_IllegalArgumentException (), " object is not an instance of declaring class" );
985
985
}
986
986
// target klass is receiver's klass
987
987
target_klass = receiver->klass ();
@@ -1047,15 +1047,15 @@ static oop invoke(InstanceKlass* klass,
1047
1047
reflected_method->name (),
1048
1048
reflected_method->signature ());
1049
1049
ss.print (" '" );
1050
- THROW_MSG_0 (vmSymbols::java_lang_NoSuchMethodError (), ss.as_string ());
1050
+ THROW_MSG_NULL (vmSymbols::java_lang_NoSuchMethodError (), ss.as_string ());
1051
1051
}
1052
1052
1053
1053
assert (ptypes->is_objArray (), " just checking" );
1054
1054
int args_len = args.is_null () ? 0 : args->length ();
1055
1055
// Check number of arguments
1056
1056
if (ptypes->length () != args_len) {
1057
- THROW_MSG_0 (vmSymbols::java_lang_IllegalArgumentException (),
1058
- " wrong number of arguments" );
1057
+ THROW_MSG_NULL (vmSymbols::java_lang_IllegalArgumentException (),
1058
+ " wrong number of arguments" );
1059
1059
}
1060
1060
1061
1061
// Create object to contain parameters for the JavaCall
@@ -1085,14 +1085,14 @@ static oop invoke(InstanceKlass* klass,
1085
1085
case T_FLOAT: java_args.push_float (value.f ); break ;
1086
1086
case T_DOUBLE: java_args.push_double (value.d ); break ;
1087
1087
default :
1088
- THROW_MSG_0 (vmSymbols::java_lang_IllegalArgumentException (), " argument type mismatch" );
1088
+ THROW_MSG_NULL (vmSymbols::java_lang_IllegalArgumentException (), " argument type mismatch" );
1089
1089
}
1090
1090
} else {
1091
1091
if (arg != nullptr ) {
1092
1092
Klass* k = java_lang_Class::as_Klass (type_mirror);
1093
1093
if (!arg->is_a (k)) {
1094
- THROW_MSG_0 (vmSymbols::java_lang_IllegalArgumentException (),
1095
- " argument type mismatch" );
1094
+ THROW_MSG_NULL (vmSymbols::java_lang_IllegalArgumentException (),
1095
+ " argument type mismatch" );
1096
1096
}
1097
1097
}
1098
1098
Handle arg_handle (THREAD, arg); // Create handle for argument
@@ -1148,7 +1148,7 @@ oop Reflection::invoke_method(oop method_mirror, Handle receiver, objArrayHandle
1148
1148
InstanceKlass* klass = InstanceKlass::cast (java_lang_Class::as_Klass (mirror));
1149
1149
Method* m = klass->method_with_idnum (slot);
1150
1150
if (m == nullptr ) {
1151
- THROW_MSG_0 (vmSymbols::java_lang_InternalError (), " invoke" );
1151
+ THROW_MSG_NULL (vmSymbols::java_lang_InternalError (), " invoke" );
1152
1152
}
1153
1153
methodHandle method (THREAD, m);
1154
1154
@@ -1165,7 +1165,7 @@ oop Reflection::invoke_constructor(oop constructor_mirror, objArrayHandle args,
1165
1165
InstanceKlass* klass = InstanceKlass::cast (java_lang_Class::as_Klass (mirror));
1166
1166
Method* m = klass->method_with_idnum (slot);
1167
1167
if (m == nullptr ) {
1168
- THROW_MSG_0 (vmSymbols::java_lang_InternalError (), " invoke" );
1168
+ THROW_MSG_NULL (vmSymbols::java_lang_InternalError (), " invoke" );
1169
1169
}
1170
1170
methodHandle method (THREAD, m);
1171
1171
assert (method->name () == vmSymbols::object_initializer_name (), " invalid constructor" );
0 commit comments