/* src/vm/resolve.cpp - resolving classes/interfaces/fields/methods
- Copyright (C) 1996-2005, 2006, 2007, 2008
+ Copyright (C) 1996-2011
CACAOVM - Verein zur Foerderung der freien virtuellen Maschine CACAO
This file is part of CACAO.
#include "vm/types.h"
-#include "mm/memory.h"
+#include "mm/memory.hpp"
#include "vm/access.hpp"
#include "vm/classcache.hpp"
/* have the method params already been parsed? no, do it. */
- if (!mi->parseddesc->params)
- if (!descriptor_params_from_paramtypes(mi->parseddesc, mi->flags))
- return resolveFailed;
+ descriptor_params_from_paramtypes(mi->parseddesc, mi->flags);
/* cache the result of the resolution */
/* have the method params already been parsed? no, do it. */
- if (!mi->parseddesc->params)
- if (!descriptor_params_from_paramtypes(mi->parseddesc, mi->flags))
- return false;
+ descriptor_params_from_paramtypes(mi->parseddesc, mi->flags);
/* cache the resolution */
iptr.............the INVOKE* instruction
RETURN VALUE:
- a pointer to a new unresolved_method struct, or
- NULL if an exception has been thrown
+ a pointer to a new unresolved_method struct
*******************************************************************************/
#endif
/* allocate params if necessary */
- if (!methodref->parseddesc.md->params)
- if (!descriptor_params_from_paramtypes(methodref->parseddesc.md,
- (invokestatic) ? ACC_STATIC : ACC_NONE))
- return NULL;
+ descriptor_params_from_paramtypes(
+ methodref->parseddesc.md,
+ (invokestatic) ? ACC_STATIC : ACC_NONE);
/* create the data structure */
ref = NEW(unresolved_method);