dotnet/roslyn

NullReferenceException when calling SyntaxFactory.ParseArgumentList

Open

#58,668 opened on Jan 6, 2022

View on GitHub
 (0 comments) (1 reaction) (1 assignee)C# (4,257 forks)batch import
Area-CompilersBugLanguage-VBhelp wanted

Repository metrics

Stars
 (20,414 stars)
PR merge metrics
 (Avg merge 6d 17h) (256 merged PRs in 30d)

Description

Version Used: Nuget Microsoft.CodeAnalysis.VisualBasic Versions=4.0.1, 3.11.0

What are we trying to do? Parse an argument list (and recieving an unexpected exception (presumably because the input is invalid).)

  1. Reference Microsoft.CodeAnalysis.VisualBasic package in a project
  2. Call SyntaxFactory.ParseArgumentList("42")

Expected Behavior: Correct parsing of the argument. At least a more understandable exception like ArgumentException or similar, but not a direct bubbling of an internal exception.

Actual Behavior: NullReferenceExceptionwhen calling a static method.


The current implementation is quite misleading. As soon as one changes the passed string to contain parenthesis (turn "42" into "(42)") the parsing works. Which could be acceptable behavior. But simply passing on the internal exception is not. It should be something else.

Contributor guide