if (size != -1)
classdef.AddLayoutInfo (pack, size);
+ if (impl_list != null) {
+ foreach (IClassRef impl in impl_list) {
+ impl.Resolve (code_gen);
+ classdef.AddImplementedInterface (impl.PeapiClass);
+ }
+ }
+
if (typar_list != null) {
short index = 0;
foreach (GenericInfo gi in typar_list) {
}
foreach (MethodDef methoddef in method_table.Values) {
- methoddef.Define (code_gen, classdef);
+ methoddef.Define (code_gen, this);
}
if (event_list != null) {
{
MethodDef methoddef = (MethodDef) method_table[signature];
+ if (methoddef == null) {
+ code_gen.Report.Error ("Unable to resolve method: " + signature);
+ Environment.Exit (1);
+ }
+
return methoddef.Resolve (code_gen, classdef);
}
CodeGen code_gen, PEAPI.Type[] opt)
{
MethodDef methoddef = (MethodDef) method_table[signature];
- methoddef.Resolve (code_gen, classdef);
+ if (methoddef == null) {
+ code_gen.Report.Error ("Unable to resolve method: " + signature);
+ Environment.Exit (1);
+ }
+
+ methoddef.Resolve (code_gen, classdef);
return methoddef.GetVarargSig (opt);
}