diff -r e27564cd10e3 -r 08a5148e7c4e src/hotspot/share/oops/method.hpp --- a/src/hotspot/share/oops/method.hpp Mon Sep 23 14:39:11 2019 -0400 +++ b/src/hotspot/share/oops/method.hpp Mon Sep 23 14:49:04 2019 -0400 @@ -603,7 +603,7 @@ void compute_size_of_parameters(Thread *thread); // word size of parameters (receiver if any + arguments) Symbol* klass_name() const; // returns the name of the method holder BasicType result_type() const; // type of the method result - bool is_returning_oop() const { BasicType r = result_type(); return (r == T_OBJECT || r == T_ARRAY); } + bool is_returning_oop() const { BasicType r = result_type(); return is_reference_type(r); } bool is_returning_fp() const { BasicType r = result_type(); return (r == T_FLOAT || r == T_DOUBLE); } // Checked exceptions thrown by this method (resolved to mirrors)