Bug 323017 (MONO80326) - Microsoft F# compiler crashes under Mono/MacOS X
Summary: Microsoft F# compiler crashes under Mono/MacOS X
Status: RESOLVED DUPLICATE of bug 476785
Alias: MONO80326
Product: Mono: Runtime
Classification: Mono
Component: misc (show other bugs)
Version: 1.2
Hardware: Other Other
: P3 - Medium : Normal
Target Milestone: ---
Assignee: Mono Bugs
QA Contact: Mono Bugs
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2006-12-20 14:22 UTC by Konrad Hinsen
Modified: 2010-10-04 20:35 UTC (History)
0 users

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Thomas Wiest 2007-09-15 20:20:26 UTC


---- Reported by hinsen@cnrs-orleans.fr 2006-12-20 07:22:01 MST ----

Please fill in this template when reporting a bug, unless you know what you are doing.
Description of Problem:


Steps to reproduce the problem:
1. Download F# 1.1.13.8, unzip, and change to directory FSharp-1.1.13.8

2. Execute the following commands:
     gacutil -i bin/fslib.dll
     gacutil -i bin/fslib10.dll
     gacutil -i bin/mllib.dll
     gacutil -i bin/mllib10.dll
     gacutil -i bin/FSharp.Compiler.dll
     gacutil -i bin/FSharp.Compiler10.dll

3. Run "mono bin/fscp10.exe"


Actual Results:

A crash:

Unhandled Exception: System.TypeInitializationException: An exception was thrown by the type 
initializer for <StartupCode>.Microsoft.FSharp.Compiler.Ast ---> 
System.NullReferenceException: Object reference not set to an instance of an object
  at Microsoft.FSharp.Collections.RawSetOps.height@476 (Microsoft.FSharp.Collections.SetTree t) 
[0x00000]
  at Microsoft.FSharp.Collections.RawSetOps.mk@503 (Microsoft.FSharp.Collections.SetTree l, 
System.Object k, Microsoft.FSharp.Collections.SetTree r) [0x00000]
  at Microsoft.FSharp.Collections.RawSetOps.add@543 (IComparer cf, System.Object k, 
Microsoft.FSharp.Collections.SetTree t) [0x00000]
  at Microsoft.FSharp.Collections.Tagged.Set.Add (System.Object x) [0x00000]
  at Microsoft.AbstractIL.Internal.Zset+addL@19.Invoke (Microsoft.FSharp.Collections.Tagged.Set 
a, System.Object x) [0x00000]
  at Microsoft.AbstractIL.Internal.Zset+addL@19.Invoke (System.Object , System.Object ) 
[0x00000]
  at Microsoft.FSharp.Core.FastFunc.InvokeFast2 (Microsoft.FSharp.Core.FastFunc f, 
System.Object t, System.Object u) [0x00000]
  at Microsoft.FSharp.Primitives.Basics+List.fold_left (Microsoft.FSharp.Core.FastFunc f, 
System.Object acc, Microsoft.FSharp.Collections.List l) [0x00000]
  at Microsoft.AbstractIL.Internal.Zset.addL (Microsoft.FSharp.Collections.List xs, 
Microsoft.FSharp.Collections.Tagged.Set a) [0x00000]
  at <StartupCode>.Microsoft.FSharp.Compiler.Ast..cctor () [0x00000] --- End of inner exception 
stack trace ---

  at <0x00000> <unknown method>
  at <StartupCode>.Microsoft.FSharp.Compiler.CommandLineMain._main () [0x00000]
  at <StartupCode>.Microsoft.FSharp.Compiler.CommandLineMain._main () [0x00000]



Expected Results:

No crash!

How often does this happen? 

Every time I try, on two different machines.

Additional Information:

I also reported this problem to the F# development team, as I cannot judge who is responsible. 
Apparently the executable fscp10.exe works fine under .NET.



---- Additional Comments From vaughan2@seas.upenn.edu 2007-04-17 10:48:30 MST ----

I've encountered this bug also, and I emailed the F# team.  They
believe that the call stack indicates that "Mono does not implement
tailcalls correctly on OS X".


Unknown bug field "cf_op_sys_details" encountered while moving bug
   <cf_op_sys_details>MacOS X 10.4.8, PPC (G4)</cf_op_sys_details>
Unknown bug field "cf_version_details" encountered while moving bug
   <cf_version_details>1.2.2.1 (binary downloaded a few days ago)</cf_version_details>
Unknown operating system unknown. Setting to default OS "Other".

Comment 1 Rodrigo Kumpera 2010-10-04 20:35:51 UTC
We'll track all issues around mono lack of tailcall support under a single bug report.

*** This bug has been marked as a duplicate of bug 476785 ***