System.InvalidOperationException: Sequence contains no matching element
at System.Linq.ThrowHelper.ThrowNoMatchException()
at System.Linq.Enumerable.Single[MetadataAssemblySymbol](IEnumerable`1 source, Func`2 predicate)
at Draco.Compiler.Internal.Symbols.WellKnownTypes.GetAssemblyWithNameAndToken(String name, Byte[] token)
at Draco.Compiler.Internal.Symbols.WellKnownTypes.<get_SystemRuntime>b__27_0()
at Draco.Compiler.Internal.InterlockedUtils.InitializeNull[MetadataAssemblySymbol](MetadataAssemblySymbol& field, Func`1 factory)
at Draco.Compiler.Internal.Symbols.WellKnownTypes.get_SystemRuntime()
at Draco.Compiler.Internal.Symbols.WellKnownTypes.<get_SystemChar>b__30_0()
at Draco.Compiler.Internal.InterlockedUtils.InitializeNull[MetadataTypeSymbol](MetadataTypeSymbol& field, Func`1 factory)
at Draco.Compiler.Internal.Symbols.WellKnownTypes.get_SystemChar()
at Draco.Compiler.Internal.Symbols.Synthetized.IntrinsicSymbols.get_Char()
at Draco.Compiler.Internal.Symbols.Synthetized.IntrinsicSymbols.GenerateIntrinsicSymbols()+MoveNext()
at System.Collections.Generic.LargeArrayBuilder`1[[Draco.Compiler.Internal.Symbols.Symbol, Draco.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].AddRange(IEnumerable`1 items)
at System.Collections.Generic.EnumerableHelpers.ToArray[Symbol](IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[Symbol](IEnumerable`1 source)
at System.Collections.Immutable.ImmutableArray.CreateRange[Symbol](IEnumerable`1 items)
at System.Collections.Immutable.ImmutableArray.ToImmutableArray[Symbol](IEnumerable`1 items)
at Draco.Compiler.Internal.Symbols.Synthetized.IntrinsicSymbols.BuildAllSymbols()
at Draco.Compiler.Internal.InterlockedUtils.InitializeDefault[Symbol](ImmutableArray`1& field, Func`1 factory)
at Draco.Compiler.Internal.Symbols.Synthetized.IntrinsicSymbols.get_AllSymbols()
at Draco.Compiler.Internal.Binding.IntrinsicsBinder.get_DeclaredSymbols()
at Draco.Compiler.Internal.Binding.IntrinsicsBinder.LookupLocal(LookupResult result, String name, LookupFlags& flags, Predicate`1 allowSymbol, SyntaxNode currentReference)
at Draco.Compiler.Internal.Binding.Binder.LookupInternal(String name, Predicate`1 allowSymbol, SyntaxNode reference)
at Draco.Compiler.Internal.Binding.Binder.LookupValueSymbol(String name, SyntaxNode reference, DiagnosticBag diagnostics)
at Draco.Compiler.Internal.Binding.ImportBinder.<BindImport>g__BindImportPath|14_0(ImportPathSyntax syntax, <>c__DisplayClass14_0& )
at Draco.Compiler.Internal.Binding.ImportBinder.<BindImport>g__BindImportPath|14_0(ImportPathSyntax syntax, <>c__DisplayClass14_0& )
at Draco.Compiler.Internal.Binding.ImportBinder.BindImport(ImportDeclarationSyntax syntax, DiagnosticBag diagnostics)
at Draco.Compiler.Internal.Binding.ImportBinder.BindImportItems(DiagnosticBag diagnostics)
at Draco.Compiler.Internal.Binding.ImportBinder.<get_ImportItems>b__4_0()
at Draco.Compiler.Internal.InterlockedUtils.InitializeDefault[ImportItem](ImmutableArray`1& field, Func`1 factory)
at Draco.Compiler.Internal.Binding.ImportBinder.get_ImportItems()
at Draco.Compiler.Api.Semantics.SemanticModel.GetDiagnostics(Nullable`1 span)
at Draco.Compiler.Api.Semantics.SemanticModel.<get_Diagnostics>b__4_0()
at Draco.Compiler.Internal.InterlockedUtils.InitializeDefault[Diagnostic](ImmutableArray`1& field, Func`1 factory)
at Draco.Compiler.Api.Semantics.SemanticModel.get_Diagnostics()
at Draco.Compiler.Api.Compilation.<>c.<get_Diagnostics>b__2_0(SemanticModel model)
at System.Linq.Enumerable.SelectManySingleSelectorIterator`2[[Draco.Compiler.Api.Semantics.SemanticModel, Draco.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null],[Draco.Compiler.Api.Diagnostics.Diagnostic, Draco.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
at System.Linq.Enumerable.ConcatIterator`1[[Draco.Compiler.Api.Diagnostics.Diagnostic, Draco.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].MoveNext()
at System.Collections.Generic.LargeArrayBuilder`1[[Draco.Compiler.Api.Diagnostics.Diagnostic, Draco.Compiler, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null]].AddRange(IEnumerable`1 items)
at System.Collections.Generic.EnumerableHelpers.ToArray[Diagnostic](IEnumerable`1 source)
at System.Linq.Enumerable.ToArray[Diagnostic](IEnumerable`1 source)
at System.Collections.Immutable.ImmutableArray.CreateRange[Diagnostic](IEnumerable`1 items)
at System.Collections.Immutable.ImmutableArray.ToImmutableArray[Diagnostic](IEnumerable`1 items)
at Draco.Compiler.Api.Compilation.get_Diagnostics()
at Draco.Compiler.Api.Compilation.Emit(Stream peStream, Stream pdbStream, Stream declarationTreeStream, Stream symbolTreeStream, Stream irStream)
at Draco.Editor.Web.Program.RunScript(Compilation compilation)
When it cannot locate the fundamental types.
We should throw an helpful error instead.
Currently the compiler throw an error like this:
When it cannot locate the fundamental types.
We should throw an helpful error instead.