Author: martin
Date: 2005-04-15 04:51:20 -0400 (Fri, 15 Apr 2005)
New Revision: 43027
Modified:
trunk/mcs/gmcs/ChangeLog
trunk/mcs/gmcs/codegen.cs
trunk/mcs/gmcs/decl.cs
trunk/mcs/gmcs/delegate.cs
trunk/mcs/gmcs/parameter.cs
Log:
**** Merged r41383 from MCS ****
Modified: trunk/mcs/gmcs/ChangeLog
===================================================================
--- trunk/mcs/gmcs/ChangeLog 2005-04-15 08:50:43 UTC (rev 43026)
+++ trunk/mcs/gmcs/ChangeLog 2005-04-15 08:51:20 UTC (rev 43027)
@@ -1,3 +1,11 @@
+2005-03-03 Raja R Harinath <[EMAIL PROTECTED]>
+
+ * codegen.cs (EmitContext): Remove ResolvingTypeTree.
+ * parameters.cs (ComputeAndDefineParameters): Remove.
+ * decl.cs (ResolveBaseTypeExpr): Don't set ResolvingTypeTree.
+ * delegate.cs (Define): Don't invoke ComputeAndDefineParameters.
+ Use GetParameterInfo.
+
2005-03-02 Marek Safar <[EMAIL PROTECTED]>
* report.cs (StaticClass.DefineContainerMembers): Add warning 628.
Modified: trunk/mcs/gmcs/codegen.cs
===================================================================
--- trunk/mcs/gmcs/codegen.cs 2005-04-15 08:50:43 UTC (rev 43026)
+++ trunk/mcs/gmcs/codegen.cs 2005-04-15 08:51:20 UTC (rev 43027)
@@ -389,13 +389,6 @@
public Location loc;
/// <summary>
- /// Used to flag that it is ok to define types recursively,
as the
- /// expressions are being evaluated as part of the type lookup
- /// during the type resolution process
- /// </summary>
- public bool ResolvingTypeTree;
-
- /// <summary>
/// Inside an enum definition, we do not resolve enumeration
values
/// to their enumerations, but rather to the underlying
type/value
/// This is so EnumVal + EnumValB can be evaluated.
Modified: trunk/mcs/gmcs/decl.cs
===================================================================
--- trunk/mcs/gmcs/decl.cs 2005-04-15 08:50:43 UTC (rev 43026)
+++ trunk/mcs/gmcs/decl.cs 2005-04-15 08:51:20 UTC (rev 43027)
@@ -728,7 +728,6 @@
// However, if Parent ==
RootContext.Tree.Types, its NamespaceEntry will be null.
//
type_resolve_ec = new EmitContext (Parent,
this, loc, null, null, ModFlags, false);
- type_resolve_ec.ResolvingTypeTree = true;
}
type_resolve_ec.loc = loc;
if (this is GenericMethod)
Modified: trunk/mcs/gmcs/delegate.cs
===================================================================
--- trunk/mcs/gmcs/delegate.cs 2005-04-15 08:50:43 UTC (rev 43026)
+++ trunk/mcs/gmcs/delegate.cs 2005-04-15 08:51:20 UTC (rev 43027)
@@ -209,9 +209,6 @@
// First, call the `out of band' special method for
// defining recursively any types we need:
- if (!Parameters.ComputeAndDefineParameterTypes (ec))
- return false;
-
param_types = Parameters.GetParameterInfo (ec);
if (param_types == null)
return false;
@@ -360,10 +357,9 @@
Parameter.Modifier.NONE, null);
Parameters async_parameters = new Parameters
(async_params, null, Location);
- async_parameters.ComputeAndDefineParameterTypes (ec);
TypeManager.RegisterMethod (BeginInvokeBuilder,
- new InternalParameters
(async_param_types, async_parameters),
+ new InternalParameters
(async_parameters.GetParameterInfo (ec), async_parameters),
async_param_types);
//
@@ -404,11 +400,10 @@
}
Parameters end_parameters = new Parameters (end_params,
null, Location);
- end_parameters.ComputeAndDefineParameterTypes (ec);
TypeManager.RegisterMethod (
EndInvokeBuilder,
- new InternalParameters (end_param_types,
end_parameters),
+ new InternalParameters
(end_parameters.GetParameterInfo (ec), end_parameters),
end_param_types);
return true;
Modified: trunk/mcs/gmcs/parameter.cs
===================================================================
--- trunk/mcs/gmcs/parameter.cs 2005-04-15 08:50:43 UTC (rev 43026)
+++ trunk/mcs/gmcs/parameter.cs 2005-04-15 08:51:20 UTC (rev 43027)
@@ -533,19 +533,6 @@
return true;
}
-
- //
- // This variant is used by Delegates, because they need to
- // resolve/define names, instead of the plain LookupType
- //
- public bool ComputeAndDefineParameterTypes (EmitContext ec)
- {
- bool old_type_resolving = ec.ResolvingTypeTree;
- ec.ResolvingTypeTree = true;
- bool retval = ComputeParameterTypes (ec);
- ec.ResolvingTypeTree = old_type_resolving;
- return retval;
- }
/// <summary>
/// Returns the argument types as an array
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches