dotnet/roslyn

SyntaxGenerator removes DisabledTextTrivia even with "KeepDirectives" is specified

Open

#21,122 opened on Jul 25, 2017

View on GitHub
 (1 comment) (0 reactions) (0 assignees)C# (20,414 stars) (4,257 forks)batch import
Area-IDEBughelp wanted

Description

Consider the following code:

#if SomethingNotSet
    this is disabled code
#endif

    SomeCode();

If you use SyntaxGenerator to remove the "SomeCode();" statement and you specify that you want to keep leading directives, you get the following:

#if SomethingNotSet
#endif

This seems pretty broken. Keeping directives is so that the directives will not be touched and the code will retain its meaning. Here though we remove the DisabledText breaking the intent.

Contributor guide

SyntaxGenerator removes DisabledTextTrivia even with "KeepDirectives" is specified · dotnet/roslyn#21122 | Good First Issue