This repository was archived by the owner on Apr 14, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 133
This repository was archived by the owner on Apr 14, 2022. It is now read-only.
ArgumentNullException in GetConstantValueAsString crashes process #353
Copy link
Copy link
Closed
Milestone
Description
Having exactly this in a file causes the language server to crash until VSC gives up trying to restart it:
from typing import TypeVar
def cla
_ = TypeVar()Found while making minimal examples for generics.
Assertion Failed
System.ArgumentNullException: Value cannot be null.
Parameter name: source
at System.Linq.Enumerable.Select[TSource,TResult](IEnumerable`1 source, Func`2 selector)
at Microsoft.PythonTools.Analysis.AnalysisValueSetExtensions.GetConstantValueAsString(IAnalysisSet values) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\AnalysisValueSetExtensions.cs:line 246
at Microsoft.PythonTools.Analysis.Values.TypingModuleInfo.<>c__DisplayClass6_0.<NewType_Call>b__0(Node n) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Values\TypingModuleInfo.cs:line 56
at Microsoft.PythonTools.Analysis.Analyzer.InterpreterScope.GetOrMakeNodeValue(Node node, NodeValueKind kind, Func`2 maker) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\InterpreterScope.cs:line 381
at Microsoft.PythonTools.Analysis.Values.TypingModuleInfo.NewType_Call(Node node, AnalysisUnit unit, IAnalysisSet[] args, NameExpression[] keywordArgNames) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Values\TypingModuleInfo.cs:line 55
at Microsoft.PythonTools.Analysis.Values.SpecializedCallable.Call(Node node, AnalysisUnit unit, IAnalysisSet[] args, NameExpression[] keywordArgNames) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Values\SpecializedCallable.cs:line 49
at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.EvaluateCall(ExpressionEvaluator ee, Node node) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\ExpressionEvaluator.cs:line 378
at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.EvaluateWorker(Node node) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\ExpressionEvaluator.cs:line 211
at Microsoft.PythonTools.Analysis.Analyzer.ExpressionEvaluator.Evaluate(Expression node) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\ExpressionEvaluator.cs:line 55
at Microsoft.PythonTools.Analysis.Analyzer.DDG.Walk(AssignmentStatement node) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\DDG.cs:line 137
at Microsoft.PythonTools.Parsing.Ast.AssignmentStatement.Walk(PythonWalker walker) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Parsing\Ast\AssignmentStatement.cs:line 41
at Microsoft.PythonTools.Analysis.Analyzer.DDG.Walk(SuiteStatement node) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\DDG.cs:line 665
at Microsoft.PythonTools.Parsing.Ast.SuiteStatement.Walk(PythonWalker walker) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Parsing\Ast\SuiteStatement.cs:line 34
at Microsoft.PythonTools.Parsing.Ast.PythonAst.Walk(PythonWalker walker) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Parsing\Ast\PythonAst.cs:line 92
at Microsoft.PythonTools.Analysis.AnalysisUnit.AnalyzeWorker(DDG ddg, CancellationToken cancel) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\AnalysisUnit.cs:line 154
at Microsoft.PythonTools.Analysis.AnalysisUnit.Analyze(DDG ddg, CancellationToken cancel) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\AnalysisUnit.cs:line 139
at Microsoft.PythonTools.Analysis.Analyzer.DDG.Analyze(Deque`1 queue, CancellationToken cancel, Action`1 reportQueueSize, Int32 reportQueueInterval) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Analyzer\DDG.cs:line 75
at Microsoft.PythonTools.Analysis.PythonAnalyzer.AnalyzeQueuedEntries(CancellationToken cancel) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\PythonAnalyzer.cs:line 907
at Microsoft.PythonTools.Intellisense.AnalysisQueue.GroupAnalysis.Analyze(CancellationToken cancel) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Intellisense\AnalysisQueue.cs:line 229
at Microsoft.PythonTools.Intellisense.AnalysisQueue.HandleAnalyzable(IAnalyzable item, AnalysisPriority priority, CancellationToken cancellationToken) in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Intellisense\AnalysisQueue.cs:line 152
at Microsoft.PythonTools.Intellisense.AnalysisQueue.ConsumerLoop() in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Intellisense\AnalysisQueue.cs:line 64
at Microsoft.Python.LanguageServer.Implementation.Server.Analysis_UnhandledException(Object sender, UnhandledExceptionEventArgs e) in C:\Users\jabaile\python-language-server\src\LanguageServer\Impl\Implementation\Server.cs:line 116
at Microsoft.PythonTools.Intellisense.AnalysisQueue.ConsumerLoop() in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Intellisense\AnalysisQueue.cs:line 64
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext()
at System.Threading.Tasks.AwaitTaskContinuation.RunOrScheduleAction(IAsyncStateMachineBox box, Boolean allowInlining)
at System.Threading.Tasks.Task.RunContinuations(Object continuationObject)
at System.Threading.Tasks.Task`1.TrySetResult(TResult result)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetExistingTaskResult(TResult result)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.SetResult(TResult result)
at Microsoft.PythonTools.Intellisense.AnalysisQueue.ConsumeAsync() in C:\Users\jabaile\python-language-server\src\Analysis\Engine\Impl\Intellisense\AnalysisQueue.cs:line 89
at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
at System.Runtime.CompilerServices.AsyncTaskMethodBuilder`1.AsyncStateMachineBox`1.MoveNext()
at System.Threading.ThreadPoolWorkQueue.Dispatch()
Metadata
Metadata
Assignees
Labels
No labels