protected override Expression DoResolve (ResolveContext ec)
{
+ spec.MemberDefinition.SetIsUsed ();
+
return DoResolve (ec, null);
}
{
bool is_volatile = (spec.Modifiers & Modifiers.VOLATILE) != 0;
- spec.MemberDefinition.SetIsUsed ();
-
if (IsStatic){
if (is_volatile)
ec.Emit (OpCodes.Volatile);
--- /dev/null
+// Compiler options: -warnaserror
+
+using System;
+using System.Linq.Expressions;
+
+class Repro
+{
+ int i = 2;
+
+ void UseField ()
+ {
+ TakeExpression (() => Console.Write (i));
+ }
+
+ void TakeExpression (Expression<Action> expr)
+ {
+ }
+
+ public static void Main ()
+ {
+ }
+}
</method>\r
</type>\r
</test>\r
+ <test name="gtest-etree-28.cs">\r
+ <type name="Repro">\r
+ <method name="Void UseField()" attrs="129">\r
+ <size>70</size>\r
+ </method>\r
+ <method name="Void TakeExpression(System.Linq.Expressions.Expression`1[System.Action])" attrs="129">\r
+ <size>2</size>\r
+ </method>\r
+ <method name="Void Main()" attrs="150">\r
+ <size>2</size>\r
+ </method>\r
+ <method name="Void .ctor()" attrs="6278">\r
+ <size>14</size>\r
+ </method>\r
+ </type>\r
+ </test>\r
<test name="gtest-exmethod-01.cs">\r
<type name="SimpleTest">\r
<method name="System.String Prefix(System.String, System.String)" attrs="150">\r