/// tc: is our typecontainer (to resolve type references)
/// ig: is the code generator:
/// </remarks>
- public void ResolveMeta (ToplevelBlock toplevel, EmitContext ec, InternalParameters ip)
+ public void ResolveMeta (ToplevelBlock toplevel, EmitContext ec, Parameters ip)
{
bool old_unsafe = ec.InUnsafe;
// Warn if we detect unreachable code.
//
if (unreachable) {
+ if (s is EmptyStatement)
+ continue;
+
if (s is Block)
((Block) s).unreachable = true;
Parameters pars = t.Parameters;
par = pars.GetParameterByName (name, out idx);
if (par != null)
- return new ParameterReference (pars, this, idx, name, loc);
+ return new ParameterReference (par, this, idx, loc);
}
return null;
}
return this_variable == null || this_variable.IsThisAssigned (ec, loc);
}
- public bool ResolveMeta (EmitContext ec, InternalParameters ip)
+ public bool ResolveMeta (EmitContext ec, Parameters ip)
{
int errors = Report.Errors;
MethodInfo mi = null;
foreach (MethodInfo mk in ((MethodGroupExpr) ml).Methods) {
- if (TypeManager.GetArgumentTypes (mk).Length == 0) {
+ if (TypeManager.GetParameterData (mk).Count == 0) {
mi = mk;
break;
}
MethodInfo mi = null;
foreach (MethodInfo mk in ((MethodGroupExpr) ml).Methods) {
- if (TypeManager.GetArgumentTypes (mk).Length == 0) {
+ if (TypeManager.GetParameterData (mk).Count == 0) {
mi = mk;
break;
}
foreach (MemberInfo m in move_next_list){
MethodInfo mi = (MethodInfo) m;
- Type [] args;
- args = TypeManager.GetArgumentTypes (mi);
- if ((args != null) && (args.Length == 0) &&
+ if ((TypeManager.GetParameterData (mi).Count == 0) &&
TypeManager.TypeToCoreType (mi.ReturnType) == TypeManager.bool_type) {
move_next = mi;
return true;
foreach (MemberInfo m in dispose_list){
MethodInfo mi = (MethodInfo) m;
- Type [] args;
- args = TypeManager.GetArgumentTypes (mi);
- if (args != null && args.Length == 0){
+ if (TypeManager.GetParameterData (mi).Count == 0){
if (mi.ReturnType == TypeManager.void_type)
return mi;
}
return false;
foreach (MethodBase mb in mg.Methods) {
- Type [] args = TypeManager.GetArgumentTypes (mb);
- if (args != null && args.Length != 0)
+ if (TypeManager.GetParameterData (mb).Count != 0)
continue;
// Check whether GetEnumerator is public