Please do not reply to this email- if you want to comment on the bug, go to the URL shown below and enter your comments there.
Changed by [EMAIL PROTECTED] http://bugzilla.ximian.com/show_bug.cgi?id=80715 --- shadow/80715 2007-02-03 14:52:20.000000000 -0500 +++ shadow/80715.tmp.28947 2007-02-03 14:52:20.000000000 -0500 @@ -0,0 +1,74 @@ +Bug#: 80715 +Product: Mono: Compilers +Version: 1.2 +OS: +OS Details: XP SP2 +Status: NEW +Resolution: +Severity: +Priority: Normal +Component: C# +AssignedTo: [EMAIL PROTECTED] +ReportedBy: [EMAIL PROTECTED] +QAContact: [EMAIL PROTECTED] +TargetMilestone: --- +URL: +Cc: +Summary: mcs NRE in Mono.CSharp.FlowBranching.MergeChild + +Find below a .cs source file that causes a fatal exception when compiling +with mcs. (gmcs does not fail). mcs's output is: + +------------------ +C:\>mono --debug "D:\Program Files\Mono-1.2.2.1\lib\mono\1.0\mcs.exe" +McsNreRepro.cs +McsNreRepro.cs(6,21): warning CS0162: Unreachable code detected +McsNreRepro.cs(9,25): error CS0117: `System.Net.Sockets.SocketException' +does not contain a definition for `SocketErrorCode' +Exception caught by the compiler while compiling: + Block that caused the problem begin at: McsNreRepro.cs(4,10): + Block being compiled: [McsNreRepro.cs +(5,5):,McsNreRepro.cs(12,5):] +System.NullReferenceException: Object reference not set to an instance of +an object + +Unhandled Exception: System.NullReferenceException: Object reference not +set toan instance of an object + at Mono.CSharp.FlowBranching.MergeChild (Mono.CSharp.FlowBranching +child) [0x00000] in C:\cygwin\tmp\scratch\mono-1.2.2.1 +\mcs\mcs\flowanalysis.cs:631 + at Mono.CSharp.EmitContext.DoEndFlowBranching () [0x00018] in +C:\cygwin\tmp\scratch\mono-1.2.2.1\mcs\mcs\codegen.cs:592 + at Mono.CSharp.Block.Resolve (Mono.CSharp.EmitContext ec) [0x001b2] in +C:\cygwin\tmp\scratch\mono-1.2.2.1\mcs\mcs\statement.cs:2152 + at Mono.CSharp.EmitContext.ResolveTopBlock (Mono.CSharp.EmitContext +anonymous_method_host, Mono.CSharp.ToplevelBlock block, +Mono.CSharp.Parameters ip, IMethod +Data md, System.Boolean& unreachable) [0x000ae] in +C:\cygwin\tmp\scratch\mono-1.2.2.1\mcs\mcs\codegen.cs:686 +------------------ + +gmsc is ok; command: [gmcs McsNreRepro.cs -target:library]. msc fails; +command: [mcs McsNreRepro.cs -target:library] Both Mono-1.2.2.1 and +locally built mcs fail. + +The code is: +------------------ +class McsNreRepro +{ + + void aaaa() + { + if (1 == 0) { + try { + } catch (System.Net.Sockets.SocketException sex) { + int x = (int)sex.SocketErrorCode; + } + }//if + } + +} +------------------ + +The fault seems dependent on the untaken 'if' in combination with the +unknown property. _______________________________________________ mono-bugs maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-bugs
