Warning: session_start(): open(/var/lib/php/sessions/sess_aqlea4gd4kov33407q7smoa3f7, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
sbool newPreciseCall_debug;
sO newPreciseCall(O o, S method, O... args) ctex {
if (o == null) null;
bool staticCall = o instanceof Class;
Class c = staticCall ? (Class) o : o.getClass();
O target = staticCall ? null : o;
_MethodCache cache = callOpt_getCache(c);
L methods = cache.cache.get(method);
Method best = null;
int bestScore = Int.MAX_VALUE;
bool widening;
if (methods != null) for (Method m : methods) {
if (staticCall && !isStaticMethod(m)) continue;
int score = methodApplicabilityScore_withPrimitiveWidening(m, args);
if (abs(score) < bestScore) {
if (newPreciseCall_debug)
print("Method score: " + m + " " + score);
best = abs(score);
widening = score < 0;
}
}
if (best != null)
if (widening)
ret invokeMethodWithWidening(best, target, args);
else
ret invokeMethod(best, target, args);
ret callWithVarargs(target, method, args); // TODO: make this precise too
}