[Mono-bugs] [Bug 692399] New: AvoidUnnecessarySpecializationRule enters infinite loop on specific code

bugzilla_noreply at novell.com bugzilla_noreply at novell.com
Fri May 6 18:49:58 EDT 2011


https://bugzilla.novell.com/show_bug.cgi?id=692399

https://bugzilla.novell.com/show_bug.cgi?id=692399#c0


           Summary: AvoidUnnecessarySpecializationRule enters infinite
                    loop on specific code
    Classification: Mono
           Product: Mono: Tools
           Version: 2.10.x
          Platform: x86
        OS/Version: Windows 7
            Status: NEW
          Severity: Major
          Priority: P5 - None
         Component: Gendarme
        AssignedTo: spouliot at novell.com
        ReportedBy: dumbass at wp.pl
         QAContact: mono-bugs at lists.ximian.com
          Found By: ---
           Blocker: ---


Gendarme (both wizard and command-line) freezes on this particular code:
    public class Class1
    {
        public class nauczyciel
        {
            public Guid Oid;
            public List<object> NoweGrupies = new List<object>();
        }
        public List<nauczyciel> nauczyciele = new List<nauczyciel>();
        public void WyslijMaile(List<Guid> ListIdJ, Guid idRok)
        {

            var cmd = from c in nauczyciele
                      where ListIdJ.Contains(c.Oid)
                      select c;
            foreach (var s in cmd)
            {
                try
                {
                    foreach (var grp in s.NoweGrupies) ;
                }
                catch (Exception ex)
                {
                }
            }
        }
    } 
I performed tests with windows binaries downloaded from github. I used VS 2008
to compile the code. The issue is 100% reproducible. I can provide binary file
if needed.

Debugger indicates that control never leaves the function:
Gendarme.Framework.Helpers.StackEntryAnalysis.FindLoad

-- 
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.


More information about the mono-bugs mailing list