Bug 12842 - Last changes to sgen: f# crash
Summary: Last changes to sgen: f# crash
Status: RESOLVED INVALID
Alias: None
Product: Runtime
Classification: Mono
Component: GC ()
Version: unspecified
Hardware: PC Linux
: --- normal
Target Milestone: ---
Assignee: Bugzilla
URL:
Depends on:
Blocks:
 
Reported: 2013-06-24 02:19 UTC by Artyom Antyipin
Modified: 2015-09-10 15:34 UTC (History)
6 users (show)

Tags:
Is this bug a regression?: ---
Last known good build:

Notice (2018-05-24): bugzilla.xamarin.com is now in read-only mode.

Please join us on Visual Studio Developer Community and in the Xamarin and Mono organizations on GitHub to continue tracking issues. Bugzilla will remain available for reference in read-only mode. We will continue to work on open Bugzilla bugs, copy them to the new locations as needed for follow-up, and add the new items under Related Links.

Our sincere thanks to everyone who has contributed on this bug tracker over the years. Thanks also for your understanding as we make these adjustments and improvements for the future.


Please create a new report on GitHub or Developer Community with your current version information, steps to reproduce, and relevant error messages or log files if you are hitting an issue that looks similar to this resolved bug and you do not yet see a matching new report.

Related Links:
Status:
RESOLVED INVALID

Description Artyom Antyipin 2013-06-24 02:19:02 UTC
Trying to compile f# or run existing f# programs on mono trunk results in following crash:
Stacktrace:

  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) object.__icall_wrapper_mono_gc_alloc_obj (intptr,intptr) <0xffffffff>
  at (wrapper alloc) object.AllocSmall (intptr) <0xffffffff>
  at Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader.seekReadCustomAttrs (Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/ILReaderContext,Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/TaggedIndex`1<Microsoft.FSharp.Compiler.AbstractIL.Internal.BinaryConstants/HasCustomAttributeTag>) <0x00017>
  at Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader.seekReadTypeDef (Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/ILReaderContext,bool,int) <0x000e7>
  at Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/seekReadTopTypeDefs@1896.GenerateNext (System.Collections.Generic.IEnumerable`1<System.Tuple`4<Microsoft.FSharp.Collections.FSharpList`1<string>, string, Microsoft.FSharp.Compiler.AbstractIL.IL/ILAttributes, System.Lazy`1<Microsoft.FSharp.Compiler.AbstractIL.IL/ILTypeDef>>>&) <0x0010b>
  at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.MoveNextImpl () <0x00069>
  at Microsoft.FSharp.Core.CompilerServices.GeneratedSequenceBase`1.System-Collections-IEnumerator-MoveNext () <0x00017>
  at Microsoft.FSharp.Collections.SeqModule.ToList<T> (System.Collections.Generic.IEnumerable`1<T>) <0x00132>
  at Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader.seekReadTopTypeDefs (Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/ILReaderContext,Microsoft.FSharp.Core.Unit) <0x00053>
  at Microsoft.FSharp.Compiler.AbstractIL.ILBinaryReader/seekReadModule@1678.Invoke (Microsoft.FSharp.Core.Unit) <0x00017>
  at Microsoft.FSharp.Control.LazyExtensions/Create@5699.Invoke () <0x00019>
  at System.Lazy`1.InitValue () <0x003b8>
  at System.Lazy`1.get_Value () <0x00033>
  at Microsoft.FSharp.Compiler.AbstractIL.IL/lazyMap@56.Invoke (Microsoft.FSharp.Core.Unit) <0x00027>
  at Microsoft.FSharp.Control.LazyExtensions/Create@5699.Invoke () <0x00019>
  at System.Lazy`1.InitValue () <0x003b8>
  at System.Lazy`1.get_Value () <0x00033>
  at Microsoft.FSharp.Compiler.AbstractIL.IL/ILTypeDefs.get_AsListOfLazyTypeDefs () <0x0001b>
  at Microsoft.FSharp.Compiler.Import.ImportILTypeDefs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, Microsoft.FSharp.Compiler.Import/ImportMap>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.AbstractIL.IL/ILScopeRef,Microsoft.FSharp.Compiler.Tast/CompilationPath,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.AbstractIL.IL/ILTypeDef>,Microsoft.FSharp.Compiler.AbstractIL.IL/ILTypeDefs) <0x00077>
  at Microsoft.FSharp.Compiler.Import.ImportILAssemblyMainTypeDefs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, Microsoft.FSharp.Compiler.Import/ImportMap>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.AbstractIL.IL/ILScopeRef,Microsoft.FSharp.Compiler.AbstractIL.IL/ILModuleDef) <0x0005b>
  at Microsoft.FSharp.Compiler.Import.ImportILAssemblyTypeDefs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, Microsoft.FSharp.Compiler.Import/ImportMap>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.AbstractIL.IL/ILScopeRef, Microsoft.FSharp.Compiler.AbstractIL.IL/ILModuleDef>,Microsoft.FSharp.Compiler.AbstractIL.IL/ILAssemblyRef,Microsoft.FSharp.Compiler.AbstractIL.IL/ILModuleDef) <0x000bb>
  at Microsoft.FSharp.Compiler.Import.ImportILAssembly (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, Microsoft.FSharp.Compiler.Import/ImportMap>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.AbstractIL.IL/ILScopeRef, Microsoft.FSharp.Compiler.AbstractIL.IL/ILModuleDef>,Microsoft.FSharp.Compiler.AbstractIL.IL/ILScopeRef,string,Microsoft.FSharp.Core.FSharpOption`1<string>,Microsoft.FSharp.Compiler.AbstractIL.IL/ILModuleDef,Microsoft.FSharp.Control.IEvent`2<Microsoft.FSharp.Control.FSharpHandler`1<string>, string>) <0x0011b>
  at Microsoft.FSharp.Compiler.Build/TcImports.PrepareToImportReferencedIlDll<c> (Microsoft.FSharp.Core.FSharpRef`1<c>,Microsoft.FSharp.Compiler.Range/range,string,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,Microsoft.FSharp.Compiler.Build/ImportedBinary) <0x0023b>
  at Microsoft.FSharp.Compiler.Build/TcImports.RegisterAndPrepareToImportReferencedDll<a> (Microsoft.FSharp.Core.FSharpRef`1<a>,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,Microsoft.FSharp.Compiler.Build/AssemblyResolution) <0x005bb>
  at Microsoft.FSharp.Compiler.Build/RegisterAndImportReferencedAssemblies@4005.Invoke (Microsoft.FSharp.Compiler.Build/AssemblyResolution) <0x0004f>
  at Microsoft.FSharp.Primitives.Basics.List.map<T, TResult> (Microsoft.FSharp.Core.FSharpFunc`2<T, TResult>,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x00054>
  at Microsoft.FSharp.Collections.ListModule.Map<T, TResult> (Microsoft.FSharp.Core.FSharpFunc`2<T, TResult>,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x0002f>
  at Microsoft.FSharp.Compiler.Build/TcImports.RegisterAndImportReferencedAssemblies (Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Build/AssemblyResolution>) <0x000bf>
  at Microsoft.FSharp.Compiler.Build/TcImports.BuildFrameworkTcImports (Microsoft.FSharp.Compiler.Build/TcConfigProvider,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Build/AssemblyResolution>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Build/AssemblyResolution>) <0x0010b>
  at Microsoft.FSharp.Compiler.Driver.getTcImportsFromCommandLine$cont@322 (Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,Microsoft.FSharp.Compiler.Lexhelp/LexResourceManager,Microsoft.FSharp.Collections.FSharpList`1<string>,string,Microsoft.FSharp.Compiler.Build/TcConfig,Microsoft.FSharp.Compiler.ErrorLogger/ErrorLogger,Microsoft.FSharp.Core.Unit) <0x0023b>
  at Microsoft.FSharp.Compiler.Driver.getTcImportsFromCommandLine (Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,string[],string,string,Microsoft.FSharp.Core.FSharpOption`1<int>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Core.Unit>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Core.Unit>,bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Compiler.ErrorLogger/ErrorLogger>) <0x00e0f>
  at Microsoft.FSharp.Compiler.Driver.main1 (string[],bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Compiler.ErrorLogger/ErrorLogger>) <0x00263>
  at Microsoft.FSharp.Compiler.Driver.mainCompile (string[],bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Compiler.ErrorLogger/ErrorLogger>) <0x0002b>
  at Microsoft.FSharp.Compiler.CommandLineMain/Driver.main (string[]) <0x002f3>
  at Microsoft.FSharp.Compiler.CommandLineMain.main (string[]) <0x000d3>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_int_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

	mono-sgen() [0x4e19a1]
	mono-sgen() [0x54700f]
	mono-sgen() [0x452f07]
	/lib/x86_64-linux-gnu/libpthread.so.0(+0xfcb0) [0x2ab5cf6a7cb0]
	mono-sgen() [0x60df48]
	mono-sgen() [0x610cb2]
	mono-sgen() [0x61551b]
	mono-sgen() [0x615fd8]
	mono-sgen() [0x62c2fa]
	mono-sgen() [0x62c5f5]
	[0x4144644d]

Debug info from gdb:

Mono support loaded.
Traceback (most recent call last):
  File "/usr/lib/debug/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.17-gdb.py", line 62, in <module>
    from libstdcxx.v6.printers import register_libstdcxx_printers
ImportError: No module named libstdcxx.v6.printers
[New LWP 7990]
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
0x00002ab5cf6a788d in __libc_waitpid (pid=<optimized out>, pid@entry=7991, stat_loc=<optimized out>, stat_loc@entry=0x2aaaacb7719c, options=<optimized out>, options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41
41	../sysdeps/unix/sysv/linux/waitpid.c: Nincs ilyen fájl vagy könyvtár.
  Id   Target Id         Frame 
  2    Thread 0x2aaaacd78700 (LWP 7990) "mono-sgen" 0x00002ab5cfb027a4 in do_sigsuspend (set=0x1709c00 <suspend_signal_mask>) at ../sysdeps/unix/sysv/linux/sigsuspend.c:63
* 1    Thread 0x2ab5cfe8c840 (LWP 7989) "mono-sgen" 0x00002ab5cf6a788d in __libc_waitpid (pid=<optimized out>, pid@entry=7991, stat_loc=<optimized out>, stat_loc@entry=0x2aaaacb7719c, options=<optimized out>, options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41

Thread 2 (Thread 0x2aaaacd78700 (LWP 7990)):
#0  0x00002ab5cfb027a4 in do_sigsuspend (set=0x1709c00 <suspend_signal_mask>) at ../sysdeps/unix/sysv/linux/sigsuspend.c:63
#1  __GI___sigsuspend (set=<optimized out>, set@entry=0x1709c00 <suspend_signal_mask>) at ../sysdeps/unix/sysv/linux/sigsuspend.c:78
#2  0x000000000060b77c in suspend_thread (info=0x2aaab00008c0, context=context@entry=0x2aaaacd77780) at sgen-os-posix.c:113
#3  0x000000000060b8e5 in suspend_handler (sig=<optimized out>, siginfo=<optimized out>, context=0x2aaaacd77780) at sgen-os-posix.c:134
#4  <signal handler called>
#5  sem_wait () at ../nptl/sysdeps/unix/sysv/linux/x86_64/sem_wait.S:85
#6  0x00000000006679b8 in mono_sem_wait (sem=sem@entry=0x17096a0 <finalizer_sem>, alertable=alertable@entry=1) at mono-semaphore.c:116
#7  0x00000000005e4155 in finalizer_thread (unused=unused@entry=0x0) at gc.c:1073
#8  0x00000000005c7da2 in start_wrapper_internal (data=0x37302b0) at threads.c:608
#9  start_wrapper (data=0x37302b0) at threads.c:653
#10 0x000000000065c341 in thread_start_routine (args=args@entry=0x36b9e90) at wthreads.c:294
#11 0x000000000066c1d0 in inner_start_thread (arg=0x3734280) at mono-threads-posix.c:49
#12 0x00002ab5cf69fe9a in start_thread (arg=0x2aaaacd78700) at pthread_create.c:308
#13 0x00002ab5cfbbfccd in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#14 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x2ab5cfe8c840 (LWP 7989)):
#0  0x00002ab5cf6a788d in __libc_waitpid (pid=<optimized out>, pid@entry=7991, stat_loc=<optimized out>, stat_loc@entry=0x2aaaacb7719c, options=<optimized out>, options@entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41
#1  0x00000000004e1ab8 in mono_handle_native_sigsegv (signal=signal@entry=11, ctx=ctx@entry=0x2aaaacb77ac0) at mini-exceptions.c:2344
#2  0x000000000054700f in mono_arch_handle_altstack_exception (sigctx=sigctx@entry=0x2aaaacb77ac0, fault_addr=<optimized out>, stack_ovf=stack_ovf@entry=0) at exceptions-amd64.c:884
#3  0x0000000000452f07 in mono_sigsegv_signal_handler (_dummy=11, info=0x2aaaacb77bf0, context=0x2aaaacb77ac0) at mini.c:6555
#4  <signal handler called>
#5  sgen_par_object_get_size (o=0x2aaaab437ca0, vtable=<error reading variable: Cannot access memory at address 0x53004600000014>) at ../../mono/metadata/sgen-gc.h:732
#6  sgen_safe_object_get_size (obj=0x2aaaab437ca0) at ../../mono/metadata/sgen-gc.h:764
#7  pin_objects_from_addresses (section=section@entry=0x2aaaab3a8010, start=<optimized out>, end=0x2aaaacb6c360, start_nursery=<optimized out>, end_nursery=<optimized out>, ctx=...) at sgen-gc.c:1268
#8  0x0000000000610cb2 in sgen_pin_objects_in_section (section=0x2aaaab3a8010, ctx=...) at sgen-gc.c:1333
#9  0x000000000061551b in collect_nursery (finish_up_concurrent_mark=0, unpin_queue=0x0) at sgen-gc.c:2567
#10 collect_nursery (unpin_queue=0x0, finish_up_concurrent_mark=0) at sgen-gc.c:2475
#11 0x0000000000615fd8 in sgen_perform_collection (requested_size=4096, generation_to_collect=0, reason=<optimized out>, wait_to_finish=<optimized out>) at sgen-gc.c:3429
#12 0x000000000062c2fa in mono_gc_alloc_obj_nolock (vtable=vtable@entry=vtable("seekReadCustomAttrs@2640"), size=size@entry=32) at sgen-alloc.c:288
#13 0x000000000062c5f5 in mono_gc_alloc_obj (size=32, vtable=vtable("seekReadCustomAttrs@2640")) at sgen-alloc.c:446
#14 mono_gc_alloc_obj (vtable=vtable("seekReadCustomAttrs@2640"), size=32) at sgen-alloc.c:432
#15 0x000000004144644d in ?? ()
#16 0x0000000003727d70 in ?? ()
#17 0x00002aaaab7fff88 in ?? ()
#18 0x00002aaaab7f6358 in ?? ()
#19 0x0000000000000000 in ?? ()
Comment 1 Rodrigo Kumpera 2013-06-26 21:03:32 UTC
Fixed in 8b787777c44b0c14f6cd1cdf3c71b6f6f084a6e0
Comment 2 evolvedmicrobe 2014-10-16 00:21:16 UTC
The commit that fixed this error has now been reverted by a more recent commit and we appear to be getting a similar error now in version 3.10 that we did not get before this "reversion" commit 

new commit: https://github.com/mono/mono/commit/b0cff959e47c3d9955e6675364bf71404cd74bac

old commit: https://github.com/mono/mono/commit/8b787777c44b0c14f6cd1cdf3c71b6f6f084a6e0

Are their dueling bugs?

The stack trace of our error from the new error generated when compiling with FSC is shown below.


Stacktrace:

  at <unknown> <0xffffffff>
  at (wrapper managed-to-native) object.__icall_wrapper_mono_gc_alloc_obj (intptr,intptr) <0xffffffff>
  at (wrapper alloc) object.AllocSmall (intptr) <0xffffffff>
  at Microsoft.FSharp.Compiler.Patcompile/CompileSimultaneousSet@935-1.Invoke (Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Test>,Microsoft.FSharp.Compiler.Patcompile/EdgeDiscrim) <0x003ab>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, V>>,T,TResult) <0x00060>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/List.mapFold<a, b, c> (Microsoft.FSharp.Core.FSharpFunc`2<a, Microsoft.FSharp.Core.FSharpFunc`2<b, System.Tuple`2<c, a>>>,a,Microsoft.FSharp.Collections.FSharpList`1<b>) <0x00113>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/List.collectFold<a, b, c> (Microsoft.FSharp.Core.FSharpFunc`2<a, Microsoft.FSharp.Core.FSharpFunc`2<b, System.Tuple`2<Microsoft.FSharp.Collections.FSharpList`1<c>, a>>>,a,Microsoft.FSharp.Collections.FSharpList`1<b>) <0x00037>
  at Microsoft.FSharp.Compiler.Patcompile.CompileSimultaneousSet@933 (Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.Tastops/DisplayEnv,Microsoft.FSharp.Compiler.Import/ImportMap,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,bool,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tastops/MatchBuilder,Microsoft.FSharp.Core.FSharpRef`1<Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>>,Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause[],int,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Patcompile/Pattern, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Test>>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Patcompile/SubExprOfInput, Microsoft.FSharp.Compiler.Tast/Expr>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/Frontier>,Microsoft.FSharp.Compiler.Patcompile/Path,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/RefutedSet>,Microsoft.FSharp.Compiler.Patcompile/SubExprOfInput,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/EdgeDiscrim>,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Expr>) <0x0010b>
  at Microsoft.FSharp.Compiler.Patcompile.InvestigateFrontiers@771 (Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.Tastops/DisplayEnv,Microsoft.FSharp.Compiler.Import/ImportMap,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,bool,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tastops/MatchBuilder,Microsoft.FSharp.Core.FSharpRef`1<Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>>,Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause[],int,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Patcompile/Pattern, Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Test>>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Patcompile/SubExprOfInput, Microsoft.FSharp.Compiler.Tast/Expr>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/RefutedSet>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/Frontier>) <0x00397>
  at Microsoft.FSharp.Compiler.Patcompile.CompilePatternBasic (Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.Tastops/DisplayEnv,Microsoft.FSharp.Compiler.Import/ImportMap,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,bool,bool,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType) <0x004cf>
  at Microsoft.FSharp.Compiler.Patcompile.doGroupWithAtMostOnePartial@1263 (Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.Tastops/DisplayEnv,Microsoft.FSharp.Compiler.Import/ImportMap,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>) <0x001a7>
  at Microsoft.FSharp.Compiler.Patcompile.atMostOnePartialAtATime@1254 (Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.Tastops/DisplayEnv,Microsoft.FSharp.Compiler.Import/ImportMap,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>) <0x000ff>
  at Microsoft.FSharp.Compiler.TypeChecker.CompilePatternForMatch (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,bool,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/Val,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.CompilePatternForMatchClauses (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,bool,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Patcompile/TypedMatchClause>) <0x0026f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcAndPatternCompileMatchClauses (Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Patcompile/ActionOnFailure,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynMatchClause>) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0091f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00483>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0078b>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCantBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0005f>
  at Microsoft.FSharp.Compiler.TypeChecker/tc@9441-1.Invoke (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X, Y> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, Microsoft.FSharp.Core.FSharpFunc`2<X, Y>>>>>,T,TResult,V,W,X) <0x00098>
  at Microsoft.FSharp.Compiler.TypeChecker.TcNormalizedBinding (Microsoft.FSharp.Compiler.TypeChecker/DeclKind,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Val>,Microsoft.FSharp.Compiler.TypeChecker/SafeInitData,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.TypeChecker/ExplicitTyparInfo,Microsoft.FSharp.Compiler.TypeChecker/NormalizedBinding) <0x0114f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLetrecBinding (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/TType>,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/PostGeneralizationRecursiveBinding>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/PreGeneralizationRecursiveBinding>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpMap`2<long, Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding>,Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding) <0x00333>
  at Microsoft.FSharp.Compiler.TypeChecker/TcLetrec@10740-1.Invoke (Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding) <0x00077>
  at Microsoft.FSharp.Core.OptimizedClosures/Adapt@3034.Invoke (T1,T2) <0x00034>
  at Microsoft.FSharp.Collections.ListModule.loop@142-20<T, TState> (Microsoft.FSharp.Core.OptimizedClosures/FSharpFunc`3<TState, T, TState>,TState,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x0004e>
  at Microsoft.FSharp.Collections.ListModule.Fold<T, TState> (Microsoft.FSharp.Core.FSharpFunc`2<TState, Microsoft.FSharp.Core.FSharpFunc`2<T, TState>>,TState,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x00073>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLetrec (Microsoft.FSharp.Compiler.TypeChecker/OverridesOK,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/RecursiveBindingDefnInfo>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range) <0x0019f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x00143>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00483>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0078b>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCantBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0005f>
  at Microsoft.FSharp.Compiler.TypeChecker/tc@9441-1.Invoke (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X, Y> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, Microsoft.FSharp.Core.FSharpFunc`2<X, Y>>>>>,T,TResult,V,W,X) <0x00098>
  at Microsoft.FSharp.Compiler.TypeChecker.TcNormalizedBinding (Microsoft.FSharp.Compiler.TypeChecker/DeclKind,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Val>,Microsoft.FSharp.Compiler.TypeChecker/SafeInitData,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.TypeChecker/ExplicitTyparInfo,Microsoft.FSharp.Compiler.TypeChecker/NormalizedBinding) <0x0114f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcNonRecursiveBinding (Microsoft.FSharp.Compiler.TypeChecker/DeclKind,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.Ast/SynBinding) <0x000a7>
  at Microsoft.FSharp.Compiler.TypeChecker/TcLetBinding@9713.Invoke (Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynBinding) <0x0005b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, V>>,T,TResult) <0x00060>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/List.mapFold<a, b, c> (Microsoft.FSharp.Core.FSharpFunc`2<a, Microsoft.FSharp.Core.FSharpFunc`2<b, System.Tuple`2<c, a>>>,a,Microsoft.FSharp.Collections.FSharpList`1<b>) <0x00113>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLetBinding (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/ContainerInfo,Microsoft.FSharp.Compiler.TypeChecker/DeclKind,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcExprUndelayed@5367-10.Invoke (Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, X>>>>,T,TResult,V,W) <0x0007d>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x0017f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcExprUndelayed@5367-10.Invoke (Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, X>>>>,T,TResult,V,W) <0x0007d>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x0017f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcExprUndelayed@5367-10.Invoke (Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, X>>>>,T,TResult,V,W) <0x0007d>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x0017f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearSeqs@5408<o> (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>, o>) <0x00143>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03d0f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcExprUndelayed@5367-10.Invoke (Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, X>>>>,T,TResult,V,W) <0x0007d>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x00417>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x040db>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCanBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0006f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcExprUndelayed@5367-10.Invoke (Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, X>>>>,T,TResult,V,W) <0x0007d>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLinearLetExprs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Tast/TType, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/TcEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv, Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Ast/SynExpr, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv>>>>>,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpFunc`2<System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>, System.Tuple`2<Microsoft.FSharp.Compiler.Tast/Expr, Microsoft.FSharp.Compiler.Tast/TType>>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,bool,bool,bool,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/SynBinding>,Microsoft.FSharp.Compiler.Ast/SynExpr,Microsoft.FSharp.Compiler.Range/range) <0x00417>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x03333>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00483>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcIteratedLambdas (Microsoft.FSharp.Compiler.TypeChecker/cenv,bool,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Collections.FSharpSet`1<string>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x002a3>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprUndelayed (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0078b>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprNoRecover (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00083>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExpr (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x00093>
  at Microsoft.FSharp.Compiler.TypeChecker.TcExprThatCantBeCtorBody (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0005f>
  at Microsoft.FSharp.Compiler.TypeChecker/tc@9441-1.Invoke (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Ast/SynExpr) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V, W, X, Y> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, Microsoft.FSharp.Core.FSharpFunc`2<V, Microsoft.FSharp.Core.FSharpFunc`2<W, Microsoft.FSharp.Core.FSharpFunc`2<X, Y>>>>>,T,TResult,V,W,X) <0x00098>
  at Microsoft.FSharp.Compiler.TypeChecker.TcNormalizedBinding (Microsoft.FSharp.Compiler.TypeChecker/DeclKind,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Compiler.Tast/TType,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/Val>,Microsoft.FSharp.Compiler.TypeChecker/SafeInitData,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Compiler.TypeChecker/ExplicitTyparInfo,Microsoft.FSharp.Compiler.TypeChecker/NormalizedBinding) <0x0114f>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLetrecBinding (Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Tast/Typar>,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Compiler.Tast/TType>,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/PostGeneralizationRecursiveBinding>,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/PreGeneralizationRecursiveBinding>,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpMap`2<long, Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding>,Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding) <0x00333>
  at Microsoft.FSharp.Compiler.TypeChecker/TcLetrec@10740-1.Invoke (Microsoft.FSharp.Compiler.TypeChecker/PreCheckingRecursiveBinding) <0x00077>
  at Microsoft.FSharp.Core.OptimizedClosures/Adapt@3034.Invoke (T1,T2) <0x00034>
  at Microsoft.FSharp.Collections.ListModule.loop@142-20<T, TState> (Microsoft.FSharp.Core.OptimizedClosures/FSharpFunc`3<TState, T, TState>,TState,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x0004e>
  at Microsoft.FSharp.Collections.ListModule.Fold<T, TState> (Microsoft.FSharp.Core.FSharpFunc`2<TState, Microsoft.FSharp.Core.FSharpFunc`2<T, TState>>,TState,Microsoft.FSharp.Collections.FSharpList`1<T>) <0x00073>
  at Microsoft.FSharp.Compiler.TypeChecker.TcLetrec (Microsoft.FSharp.Compiler.TypeChecker/OverridesOK,Microsoft.FSharp.Compiler.TypeChecker/cenv,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Compiler.TypeChecker/SyntacticUnscopedTyparEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.TypeChecker/RecursiveBindingDefnInfo>,Microsoft.FSharp.Compiler.Range/range,Microsoft.FSharp.Compiler.Range/range) <0x0019f>
  at Microsoft.FSharp.Compiler.TypeChecker/TcModuleOrNamespaceElement@14982-1.Invoke (Microsoft.FSharp.Core.Unit) <0x00c7b>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/delay@638.Invoke (Microsoft.FSharp.Core.Unit) <0x00019>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/catch@632.Invoke (Microsoft.FSharp.Core.Unit) <0x00049>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/catch@632.Invoke (Microsoft.FSharp.Core.Unit) <0x00049>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/catch@632.Invoke (Microsoft.FSharp.Core.Unit) <0x00049>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/catch@632.Invoke (Microsoft.FSharp.Core.Unit) <0x00049>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule/bind@623.Invoke (Microsoft.FSharp.Core.Unit) <0x00026>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule.forceWhile<a> (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, bool>,Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/Eventually`1<a>) <0x00090>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/EventuallyModule.force<a> (Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/Eventually`1<a>) <0x00047>
  at Microsoft.FSharp.Compiler.Build.TypecheckOneInput (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, bool>,Microsoft.FSharp.Compiler.Build/TcConfig,Microsoft.FSharp.Compiler.Build/TcImports,Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/Ident>>,Microsoft.FSharp.Compiler.Build/TcState,Microsoft.FSharp.Compiler.Ast/ParsedInput) <0x00157>
  at Microsoft.FSharp.Compiler.Build/TypecheckMultipleInputs@5197.Invoke (Microsoft.FSharp.Compiler.Build/TcState,Microsoft.FSharp.Compiler.Ast/ParsedInput) <0x0003b>
  at Microsoft.FSharp.Core.FSharpFunc`2.InvokeFast<V> (Microsoft.FSharp.Core.FSharpFunc`2<T, Microsoft.FSharp.Core.FSharpFunc`2<TResult, V>>,T,TResult) <0x00060>
  at Microsoft.FSharp.Compiler.AbstractIL.Internal.Library/List.mapFold<a, b, c> (Microsoft.FSharp.Core.FSharpFunc`2<a, Microsoft.FSharp.Core.FSharpFunc`2<b, System.Tuple`2<c, a>>>,a,Microsoft.FSharp.Collections.FSharpList`1<b>) <0x00113>
  at Microsoft.FSharp.Compiler.Build.TypecheckMultipleInputs (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, bool>,Microsoft.FSharp.Compiler.Build/TcConfig,Microsoft.FSharp.Compiler.Build/TcImports,Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/Ident>>,Microsoft.FSharp.Compiler.Build/TcState,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/ParsedInput>) <0x00063>
  at Microsoft.FSharp.Compiler.Build.TypecheckClosedInputSet (Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Core.Unit, bool>,Microsoft.FSharp.Compiler.Build/TcConfig,Microsoft.FSharp.Compiler.Build/TcImports,Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/Ident>>,Microsoft.FSharp.Compiler.Build/TcState,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/ParsedInput>) <0x00047>
  at Microsoft.FSharp.Compiler.Driver.TypeCheck (Microsoft.FSharp.Compiler.Build/TcConfig,Microsoft.FSharp.Compiler.Build/TcImports,Microsoft.FSharp.Compiler.Env/TcGlobals,Microsoft.FSharp.Compiler.ErrorLogger/ErrorLogger,string,Microsoft.FSharp.Compiler.Ast/NiceNameGenerator,Microsoft.FSharp.Compiler.TypeChecker/TcEnv,Microsoft.FSharp.Collections.FSharpList`1<Microsoft.FSharp.Compiler.Ast/ParsedInput>,Microsoft.FSharp.Compiler.ErrorLogger/Exiter) <0x00173>
  at Microsoft.FSharp.Compiler.Driver.getTcImportsFromCommandLine (Microsoft.FSharp.Core.FSharpOption`1<Microsoft.FSharp.Core.FSharpFunc`2<string, Microsoft.FSharp.Core.Unit>>,string[],string,string,Microsoft.FSharp.Core.FSharpOption`1<int>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Core.Unit>,Microsoft.FSharp.Core.FSharpFunc`2<Microsoft.FSharp.Compiler.Build/TcConfigBuilder, Microsoft.FSharp.Core.Unit>,bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Compiler.Driver/ErrorLoggerProvider,Microsoft.FSharp.Compiler.Driver/DelayedDisposables) <0x017ab>
  at Microsoft.FSharp.Compiler.Driver.main0 (string[],bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Compiler.Driver/ErrorLoggerProvider,Microsoft.FSharp.Compiler.Driver/DelayedDisposables) <0x0021b>
  at Microsoft.FSharp.Compiler.Driver.typecheckAndCompile (string[],bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter,Microsoft.FSharp.Compiler.Driver/ErrorLoggerProvider) <0x00083>
  at Microsoft.FSharp.Compiler.Driver.mainCompile (string[],bool,Microsoft.FSharp.Compiler.ErrorLogger/Exiter) <0x00037>
  at Microsoft.FSharp.Compiler.CommandLineMain.runMain (string[]) <0x002ef>
  at Microsoft.FSharp.Compiler.CommandLineMain.main (string[]) <0x000cf>
  at (wrapper runtime-invoke) <Module>.runtime_invoke_int_object (object,intptr,intptr,intptr) <0xffffffff>

Native stacktrace:

	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x4a46b5]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x50069f]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x4161b9]
	/lib/libpthread.so.0(+0xf8f0) [0x2af1c6c8c8f0]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x5e463a]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x5cb12e]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x5cc1d8]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x5e96a0]
	prebuilt.out/mono_fsharp/mono-3.10.0_fsharp-3.1.1.26/common/bin/mono-sgen() [0x5e9ab4]
	[0x4046ce08]

Debug info from gdb:

Mono support loaded.
[Thread debugging using libthread_db enabled]
[New Thread 0x2aaaac4f2700 (LWP 1780)]
0x00002af1c6c8c48d in waitpid () from /lib/libpthread.so.0
  2 Thread 0x2aaaac4f2700 (LWP 1780)  0x00002af1c6ecebf4 in sigsuspend ()
   from /lib/libc.so.6
* 1 Thread 0x2af1c7224ba0 (LWP 1777)  0x00002af1c6c8c48d in waitpid ()
   from /lib/libpthread.so.0

Thread 2 (Thread 0x2aaaac4f2700 (LWP 1780)):
#0  0x00002af1c6ecebf4 in sigsuspend () from /lib/libc.so.6
#1  0x00000000005c2fa4 in suspend_thread (sig=<value optimized out>, 
    siginfo=<value optimized out>, context=0x2aaaac4f18c0)
    at sgen-os-posix.c:113
#2  suspend_handler (sig=<value optimized out>, 
    siginfo=<value optimized out>, context=0x2aaaac4f18c0)
    at sgen-os-posix.c:140
#3  <signal handler called>
#4  0x00002af1c6c8ab4e in sem_wait () from /lib/libpthread.so.0
#5  0x00000000006251a8 in mono_sem_wait (sem=0x972c40, alertable=1)
    at mono-semaphore.c:101
#6  0x000000000059e85d in finalizer_thread (unused=<value optimized out>)
    at gc.c:1077
#7  0x000000000057dc07 in start_wrapper_internal (data=<value optimized out>)
    at threads.c:660
#8  start_wrapper (data=<value optimized out>) at threads.c:707
#9  0x000000000062a6e6 in inner_start_thread (arg=<value optimized out>)
    at mono-threads-posix.c:84
#10 0x00002af1c6c839ca in start_thread () from /lib/libpthread.so.0
#11 0x00002af1c6f8643d in clone () from /lib/libc.so.6
#12 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x2af1c7224ba0 (LWP 1777)):
#0  0x00002af1c6c8c48d in waitpid () from /lib/libpthread.so.0
#1  0x00000000004a4748 in mono_handle_native_sigsegv (
    signal=<value optimized out>, ctx=<value optimized out>)
    at mini-exceptions.c:2323
#2  0x000000000050069f in mono_arch_handle_altstack_exception (sigctx=
    0x2aaaaababc40, fault_addr=<value optimized out>, stack_ovf=0)
    at exceptions-amd64.c:902
#3  0x00000000004161b9 in mono_sigsegv_signal_handler (_dummy=11, info=
    0x2aaaaababd70, context=0x2aaaaababc40) at mini.c:6861
#4  <signal handler called>
#5  sgen_optimize_pin_queue (start_slot=<value optimized out>)
    at sgen-pinning.c:159
#6  0x00000000005cb12e in collect_nursery (unpin_queue=0x0, 
    finish_up_concurrent_mark=0) at sgen-gc.c:2302
#7  0x00000000005cc1d8 in sgen_perform_collection (requested_size=4096, 
    generation_to_collect=0, reason=0x700433 "Nursery full", 
    wait_to_finish=<value optimized out>) at sgen-gc.c:3196
#8  0x00000000005e96a0 in mono_gc_alloc_obj_nolock (vtable=0x2b86cc0
0x1ace960
0x2b86cc0
0x1ace950
vtable(%s), size=<value optimized out>) at sgen-alloc.c:315
#9  0x00000000005e9ab4 in mono_gc_alloc_obj (vtable=0x2b86cc0
0x1ace960
0x2b86cc0
0x1ace950
vtable(%s), size=32) at sgen-alloc.c:491
#10 0x000000004046ce08 in ?? ()
#11 0x00002aaaaaff9418 in ?? ()
#12 0x00002aaaaaff93f8 in ?? ()
#13 0x00002af1c7224b80 in ?? ()
#14 0x0000000000000020 in ?? ()
#15 0x000000000329aa68 in ?? ()
#16 0x0000000001222140 in ?? ()
#17 0x00002aaaaf5ad988 in ?? ()
#18 0x00007fffb61b6650 in ?? ()
#19 0x00007fffb61b63c0 in ?? ()
#20 0x000000004046ab18 in ?? ()
#21 0x00002aaaaade9c88 in ?? ()
#22 0x00002aaaaace9e90 in ?? ()
#23 0x00002aaaaace9f30 in ?? ()
#24 0x00002aaaaf5ad988 in ?? ()
#25 0x00002aaaaade9cc8 in ?? ()
#26 0x0000000040807d1c in ?? ()
#27 0x00002aaaaea56458 in ?? ()
#28 0x00002aaaaacea418 in ?? ()
#29 0x00002aaaadac09e8 in ?? ()
#30 0x00002aaaaac5b168 in ?? ()
#31 0x00002aaaaae7bb88 in ?? ()
#32 0x00002aaaaae7bc58 in ?? ()
#33 0x00002aaaaac5c1f8 in ?? ()
#34 0x0000000000000003 in ?? ()
#35 0x00002aaaaac5c278 in ?? ()
#36 0x00002aaaaac5c248 in ?? ()
#37 0x00002aaaaeb6c678 in ?? ()
#38 0x00002aaaaaff6d08 in ?? ()
#39 0x00002aaaaac5bf40 in ?? ()
#40 0x00002aaaaace9db0 in ?? ()
#41 0x00002aaaaea56458 in ?? ()
#42 0x00002aaaaacea418 in ?? ()
#43 0x00002aaaadac09e8 in ?? ()
#44 0x00002aaaaac5b168 in ?? ()
#45 0x00002aaaaae7bb88 in ?? ()
#46 0x00002aaaaae7bc58 in ?? ()
#47 0x00002aaaaac5c1f8 in ?? ()
#48 0x0000000000000000 in ?? ()

=================================================================
Got a SIGSEGV while executing native code. This usually indicates
a fatal error in the mono runtime or one of the native libraries 
used by your application.
=================================================================
Comment 3 Rodrigo Kumpera 2014-10-16 11:22:23 UTC
We'll work on this ASAP.
Comment 4 Alexis Christoforides 2014-10-23 19:27:00 UTC
Hi evolvedmicrobe, I haven't been able to reproduce this (or any) crashewhen compiling the latest F# (e30b237b582a3f14a6c74a53f429168e0ae01949) with the latest mono (e1da8e304d3b330a968de9c14305632e9285e5ca), or compiling some test F# code. I've tried the 3.10 branch also, on Linux and OS X, 64-bit builds.

Could you give us a bit more info on the bug? Does it always happen? What is your environment? Do you have a test case? Have you tried reverting the commit and seeing if the issue is gone? I cannot help more unless I'm able to reproduce it.

Could you also try updating to the commit that I'm testing on, and seeing if the issue has resolved? There have been a few destabilizing commits on master that should have been resolved now.
Comment 5 evolvedmicrobe 2014-10-23 19:47:32 UTC
Hi alexis, I'll pull the latest git and see if I can generate the bug with that soon.
Comment 6 Alexis Christoforides 2014-10-27 14:06:49 UTC
Hi again, any luck?
Comment 7 evolvedmicrobe 2014-10-29 02:29:06 UTC
Hi Alexis, I ran into problems building the latest git (it hung on aclocal or some such thing), am going to try again on Thursday.
Comment 8 Mark Probst 2014-10-30 16:26:54 UTC
I can't reproduce this.  Building fsharp (05f426cee85609f2fe51b71473b07d7928bb01c8) on mono (f269254917ea7362bf8248e121303b4756ed6834) works on OSX.
Comment 9 Alexis Christoforides 2015-09-10 15:34:06 UTC
Closing this stale bug.