235
236 void Klass::check_valid_for_instantiation(bool throwError, TRAPS) {
237 ResourceMark rm(THREAD);
238 THROW_MSG(throwError ? vmSymbols::java_lang_InstantiationError()
239 : vmSymbols::java_lang_InstantiationException(), external_name());
240 }
241
242
243 void Klass::copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS) {
244 ResourceMark rm(THREAD);
245 assert(s != nullptr, "Throw NPE!");
246 THROW_MSG(vmSymbols::java_lang_ArrayStoreException(),
247 err_msg("arraycopy: source type %s is not an array", s->klass()->external_name()));
248 }
249
250
251 void Klass::initialize(TRAPS) {
252 ShouldNotReachHere();
253 }
254
255 Klass* Klass::find_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const {
256 #ifdef ASSERT
257 tty->print_cr("Error: find_field called on a klass oop."
258 " Likely error: reflection method does not correctly"
259 " wrap return value in a mirror object.");
260 #endif
261 ShouldNotReachHere();
262 return nullptr;
263 }
264
265 Method* Klass::uncached_lookup_method(const Symbol* name, const Symbol* signature,
266 OverpassLookupMode overpass_mode,
267 PrivateLookupMode private_mode) const {
268 #ifdef ASSERT
269 tty->print_cr("Error: uncached_lookup_method called on a klass oop."
270 " Likely error: reflection method does not correctly"
271 " wrap return value in a mirror object.");
272 #endif
273 ShouldNotReachHere();
274 return nullptr;
|
235
236 void Klass::check_valid_for_instantiation(bool throwError, TRAPS) {
237 ResourceMark rm(THREAD);
238 THROW_MSG(throwError ? vmSymbols::java_lang_InstantiationError()
239 : vmSymbols::java_lang_InstantiationException(), external_name());
240 }
241
242
243 void Klass::copy_array(arrayOop s, int src_pos, arrayOop d, int dst_pos, int length, TRAPS) {
244 ResourceMark rm(THREAD);
245 assert(s != nullptr, "Throw NPE!");
246 THROW_MSG(vmSymbols::java_lang_ArrayStoreException(),
247 err_msg("arraycopy: source type %s is not an array", s->klass()->external_name()));
248 }
249
250
251 void Klass::initialize(TRAPS) {
252 ShouldNotReachHere();
253 }
254
255 void Klass::initialize_preemptable(TRAPS) {
256 ShouldNotReachHere();
257 }
258
259 Klass* Klass::find_field(Symbol* name, Symbol* sig, fieldDescriptor* fd) const {
260 #ifdef ASSERT
261 tty->print_cr("Error: find_field called on a klass oop."
262 " Likely error: reflection method does not correctly"
263 " wrap return value in a mirror object.");
264 #endif
265 ShouldNotReachHere();
266 return nullptr;
267 }
268
269 Method* Klass::uncached_lookup_method(const Symbol* name, const Symbol* signature,
270 OverpassLookupMode overpass_mode,
271 PrivateLookupMode private_mode) const {
272 #ifdef ASSERT
273 tty->print_cr("Error: uncached_lookup_method called on a klass oop."
274 " Likely error: reflection method does not correctly"
275 " wrap return value in a mirror object.");
276 #endif
277 ShouldNotReachHere();
278 return nullptr;
|