From 6ebb7eb6a3e66864df653ede68280a7a480dd6f7 Mon Sep 17 00:00:00 2001 From: rtrimana Date: Mon, 17 Jun 2019 12:48:44 -0700 Subject: [PATCH] Working example of class instantiation. --- .../gov/nasa/jpf/vm/JPF_java_lang_Class.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/peers/gov/nasa/jpf/vm/JPF_java_lang_Class.java b/src/peers/gov/nasa/jpf/vm/JPF_java_lang_Class.java index aac8d22..0d817c2 100644 --- a/src/peers/gov/nasa/jpf/vm/JPF_java_lang_Class.java +++ b/src/peers/gov/nasa/jpf/vm/JPF_java_lang_Class.java @@ -113,15 +113,15 @@ public class JPF_java_lang_Class extends NativePeer { // TODO: THIS NEEDS TO BE SUBSTITUTED BY THE PROPER METHODS! VERY DIRTY RIGHT NOW! @MJI public int getTypeParameters_____3Ljava_lang_reflect_TypeVariable_2 (MJIEnv env, int robj){ - ClassInfo ci = env.getReferredClassInfo( robj); - AnnotationInfo[] ai = ci.getAnnotations(); + ClassLoaderInfo cli = env.getSystemClassLoaderInfo(); + ClassInfo rci = cli.getResolvedClassInfo("sun.reflect.generics.reflectiveObjects.TypeVariableImpl"); + // TODO: Need to 1) Just create the object of TypeVariableImpl, 2) Declare class type and name only, 3) Return the + // object reference back to the caller + ClassInfo test = cli.getResolvedClassInfo("java.lang.Class"); + ClassInfo tci = env.getReferredClassInfo( robj); + int ei = env.newObject(test); - try { - return env.newAnnotationProxies(ai); - } catch (ClinitRequired x){ - env.handleClinitRequest(x.getRequiredClassInfo()); - return MJIEnv.NULL; - } + return MJIEnv.NULL; } @MJI -- 2.34.1