jamescourtney / FlatSharp

Fast, idiomatic C# implementation of Flatbuffers

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Internal Null reference exception on models that work with flatc.exe

shadowbane1000 opened this issue · comments

Hi.

I have a very complicated schema represented in fbs files that works correctly when built with flatc. However, I get a Null Reference Exception when building with FlatSharp.Compiler.

The error message is quite long due to the complexity of the fbs file. Sorry for that. If I get time, I will try to work out a simplified example of an fbs that causes the error as I cannot submit the real fbs file. Hopefully the callstack will provide a clue.

System.NullReferenceException: Object reference not set to an instance of an object. at FlatSharp.TypeModel.NullableTypeModel.get_PhysicalLayout() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\NullableTypeModel.cs:line 43 at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 178 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at System.Linq.Enumerable.SelectArrayIterator2.ToArray()
at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source) at FlatSharp.TypeModel.UnionTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\UnionTypeModel.cs:line 266 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.NullableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\NullableTypeModel.cs:line 107 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at System.Linq.Enumerable.SelectArrayIterator2.ToArray() at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.UnionTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\UnionTypeModel.cs:line 266
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.Compiler.CloneMethodsGenerator.GenerateCloneMethodsForAssembly(CodeWriter writer, CompilerOptions options, Assembly assembly, TypeModelContainer container) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\CloneMethodsGenerator.cs:line 47
at FlatSharp.Compiler.SchemaModel.RootModel.WriteCode(CodeWriter writer, CompileContext context) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\SchemaModel\RootModel.cs:line 92
at FlatSharp.Compiler.FlatSharpCompiler.CreateCSharp(Byte[] bfbs, String inputHash, CompilerOptions options, String& csharp) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 462
at FlatSharp.Compiler.FlatSharpCompiler.RunCompiler(CompilerOptions options) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 108
at FlatSharp.Compiler.FlatSharpCompiler.<>c__DisplayClass3_0.

b__0(CompilerOptions x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 46
at CommandLine.ParserResultExtensions.WithParsed[T](ParserResult1 result, Action1 action)
at FlatSharp.Compiler.FlatSharpCompiler.Main(String[] args) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 43
Unhandled exception. System.NullReferenceException: Object reference not set to an instance of an object.
at FlatSharp.TypeModel.NullableTypeModel.get_PhysicalLayout() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\NullableTypeModel.cs:line 43
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 178
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at System.Linq.Enumerable.SelectArrayIterator2.ToArray() at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.UnionTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\UnionTypeModel.cs:line 266
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.NullableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\NullableTypeModel.cs:line 107
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at System.Linq.Enumerable.SelectArrayIterator2.ToArray()
at System.Linq.Enumerable.ToArray[TSource](IEnumerable1 source) at FlatSharp.TypeModel.UnionTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\UnionTypeModel.cs:line 266 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136 at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280 at FlatSharp.TypeModel.TableTypeModel.<Initialize>b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147
at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList() at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source)
at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.BaseVectorTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\Vectors\BaseVectorTypeModel.cs:line 211
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173
at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 136
at FlatSharp.TypeModel.TypeModelContainer.CreateTypeModel(Type type) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 280
at FlatSharp.TypeModel.TableTypeModel.b__43_2(<>f__AnonymousType02 x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 147 at System.Linq.Enumerable.WhereSelectEnumerableIterator2.ToList()
at System.Linq.Enumerable.ToList[TSource](IEnumerable1 source) at FlatSharp.TypeModel.TableTypeModel.Initialize() in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TableTypeModel.cs:line 140 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModelImpl(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 252 at FlatSharp.TypeModel.TypeModelContainer.TryCreateTypeModel(Type type, Boolean throwOnError, ITypeModel& typeModel) in D:\a\FlatSharp\FlatSharp\src\FlatSharp\TypeModel\TypeModelContainer.cs:line 173 at FlatSharp.Compiler.CloneMethodsGenerator.GenerateCloneMethodsForAssembly(CodeWriter writer, CompilerOptions options, Assembly assembly, TypeModelContainer container) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\CloneMethodsGenerator.cs:line 47 at FlatSharp.Compiler.SchemaModel.RootModel.WriteCode(CodeWriter writer, CompileContext context) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\SchemaModel\RootModel.cs:line 92 at FlatSharp.Compiler.FlatSharpCompiler.CreateCSharp(Byte[] bfbs, String inputHash, CompilerOptions options, String& csharp) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 462 at FlatSharp.Compiler.FlatSharpCompiler.RunCompiler(CompilerOptions options) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 108 at FlatSharp.Compiler.FlatSharpCompiler.<>c__DisplayClass3_0.<Main>b__0(CompilerOptions x) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 46 at CommandLine.ParserResultExtensions.WithParsed[T](ParserResult1 result, Action1 action) at FlatSharp.Compiler.FlatSharpCompiler.Main(String[] args) in D:\a\FlatSharp\FlatSharp\src\FlatSharp.Compiler\FlatSharpCompiler.cs:line 43

Below is the schema that I came up to cause this issue. Almost any change prevents the issue. Moving everything in "namespace a" (including the namespace declaration) under "namespace b" produces an error that a.UnionA is not defined, which is also incorrect (it's just defined after it's used).

`
namespace a;
union UnionA {
TableA,
}

table TableA {
union_a: UnionA;
}

namespace b;

union UnionB {
TableB,
}

table TableB {
junk: byte;
}

table TableThatStartsItAll {
union_a: a.UnionA;
union_b: UnionB;
}
`

Thanks for the level of detail here. I'll take a look this weekend. Can you also share the version of FlatSharp that you are using? I'll assume 6.3.1 for now.

Yes. It's 6.3.1

You should be able to work around this error by adding the required attribute on your union member:

namespace a;
union UnionA {
    TableA,
}

table TableA {
    union_a: UnionA (required);
}

namespace b;

table TableThatStartsItAll {
    union_a: a.UnionA (required);
}

The problem stems from the fact that UnionA is an optional (ie, nullable) field on these tables, which leads FlatSharp to not initialize the circular chain of dependencies correctly. I'll be working on a fix, but it's my hope that this at least unblocks you.

Addressed in #300, which should be published on NuGet sometime this week after I get some confidence with it.

Thanks for your quick attention to this. The workaround is working for me.

The fix for this is published in 6.3.2. Please let me know how it works for you!