[Mono-bugs] [Bug 568955] System.InvalidOperationException: List has changed. from gmcs while compiling.
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Apr 20 19:28:36 EDT 2010
http://bugzilla.novell.com/show_bug.cgi?id=568955
http://bugzilla.novell.com/show_bug.cgi?id=568955#c7
--- Comment #7 from Pablo Ruiz <pruiz at netway.org> 2010-04-20 23:28:35 UTC ---
I'm trying to find the point in svn at which things started to fail.. at
r105893 the problem it's still reproducible, but the error is somewhat
different:
Example code and compiler output:
---------------
using System;
using System.Linq;
using System.Linq.Expressions;
using System.Diagnostics;
namespace Test
{
public class Specification
{
public Expression<Func<int, bool>> expression;
public Specification(Expression<Func<int, bool>> predicate)
{
this.expression = predicate;
}
}
public class IntSpec : Specification
{
public IntSpec(int id)
: base(x => x == id)
{
}
}
public class Program
{
static void Main()
{
var obj = 1;
var s1 = new IntSpec(1);
var s2 = new IntSpec(2);
var fn1 = s1.expression.Compile();
var fn2 = s2.expression.Compile();
Debug.Assert(fn1.Invoke(obj) == true);
Debug.Assert(fn2.Invoke(obj) == false);
}
}
}
[root at Marge tmp]# mono /usr/src/mono.svn/mcs/mcs/gmcs.exe /target:exe -debug+
/d:DEBUG /out:n.exe p5.cs && mono --debug n.exe
p5.cs(21,27): error CS1502: The best overloaded method match for
`Test.Specification.Specification(System.Linq.Expressions.Expression<System.Func<int,bool>>)'
has some invalid arguments
p5.cs(12,24): (Location of the symbol related to previous error)
p5.cs(21,27): error CS1503: Argument 1: Cannot convert type `lambda expression'
to `System.Linq.Expressions.Expression<System.Func<int,bool>>'
Compilation failed: 2 error(s), 0 warnings
---------------
--
Configure bugmail: http://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list