@@ -46,6 +46,7 @@ string Agent::fieldTypeToString(const enum MethodReturnType &type) {
4646 case JBOOLEAN:
4747 return " JBOOLEAN" ;
4848 }
49+ throw std::runtime_error (" Unsupported field type in fieldTypeToString" );
4950}
5051
5152jlong Agent::getIntegerTypesAsLong (const jvalue &value,
@@ -190,6 +191,7 @@ jobject Agent::createObject(const jvalue &value, const MethodReturnType &type) {
190191 case JVOID:
191192 return nullptr ;
192193 }
194+ throw std::runtime_error (" Unsupported type in createObject" );
193195}
194196
195197jstring Agent::createNewString (const string &str) const {
@@ -403,6 +405,7 @@ jvalue Agent::getInstancePrimitiveField(jobject instance,
403405 value.l = nullptr ;
404406 return value;
405407 }
408+ throw std::runtime_error (" Unsupported field type in getInstancePrimitiveField" );
406409}
407410
408411Agent::MethodReturnType Agent::getFieldType (const string &fieldDescriptor) {
@@ -414,6 +417,7 @@ Agent::MethodReturnType Agent::getFieldType(const string &fieldDescriptor) {
414417 JAVA_OBJECT_CREATION_TYPE_
415418#undef ENTRY
416419 }
420+ throw std::runtime_error (" Unsupported single-character field descriptor" );
417421 } else if (fieldDescriptor == " Ljava/lang/String;" ) {
418422 return Agent::MethodReturnType::JSTRING;
419423 } else {
@@ -440,6 +444,7 @@ Agent::MethodReturnType Agent::getFieldType(jvmtiPrimitiveType type) {
440444 case jvmtiPrimitiveType::JVMTI_PRIMITIVE_TYPE_DOUBLE:
441445 return Agent::MethodReturnType::JDOUBLE;
442446 }
447+ throw std::runtime_error (" Unsupported jvmti primitive type" );
443448}
444449
445450bool Agent::isFieldArrayType (MethodReturnType type) {
0 commit comments