forked from dotnet/roslyn
-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
FI #6
Merged
Merged
FI #6
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Changed syntax model to reuse VariableDeclarationSyntax for out variable declarations.
Merge remote-tracking branch 'upstream/future' into 'upstream/features/outvar'
Adjusted behavior of CSharpSyntaxGenerator and added some explicitly written code to achieve the following for the Syntax Model: - Factory static ArgumentSyntax Argument(NameColonSyntax nameColon, SyntaxToken refOrOutKeyword, CSharpSyntaxNode expressionOrDeclaration) will be internal. - Factory static ArgumentSyntax Argument(CSharpSyntaxNode expressionOrDeclaration) will be internal. - There will be the following public factories: public static ArgumentSyntax Argument(NameColonSyntax nameColon, SyntaxToken refOrOutKeyword, ExpressionSyntax expression) public static ArgumentSyntax Argument(ExpressionSyntax expression) public static ArgumentSyntax Argument(NameColonSyntax nameColon, SyntaxToken outKeyword, VariableDeclarationSyntax declaration) public static ArgumentSyntax Argument(SyntaxToken outKeyword, VariableDeclarationSyntax declaration) - Update method ArgumentSyntax Update(NameColonSyntax nameColon, SyntaxToken refOrOutKeyword, CSharpSyntaxNode expressionOrDeclaration) will be internal. - There will be the following public update methods: public ArgumentSyntax Update(NameColonSyntax nameColon, SyntaxToken refOrOutKeyword, ExpressionSyntax expression) public ArgumentSyntax Update(NameColonSyntax nameColon, SyntaxToken outKeyword, VariableDeclarationSyntax declaration) - With method ArgumentSyntax WithExpressionOrDeclaration(CSharpSyntaxNode expressionOrDeclaration) will be internal. - There will be the following public With methods: public ArgumentSyntax WithNameColon(NameColonSyntax nameColon) public ArgumentSyntax WithRefOrOutKeyword(SyntaxToken refOrOutKeyword) public ArgumentSyntax WithExpression(ExpressionSyntax expression) public ArgumentSyntax WithDeclaration(VariableDeclarationSyntax declaration) - Property CSharpSyntaxNode ExpressionOrDeclaration will be internal. - Instead there will be the following public properties (one of them will return null depending on the value of ExpressionOrDeclaration): public ExpressionSyntax Expression public VariableDeclarationSyntax Declaration - Factory, Update and With methods should provide stronger validation: a) ExpressionOrDeclaration must either be an ExpressionSyntax, or a VariableDeclarationSyntax; b) Declaration must be combined with out keyword; c) Declaration must have single VariableDeclarator; d) VariableDeclarator must have null ArgumentList and null Initializer.
Finalizing Syntax Model for Out Variable Declarations.
Also, added tests for Out Variables Declarations within attribute applications.
Allowed Out Variables Declarations in constructor initializers.
Port CoreFX dependency changes to future-st
Porting CoreFX version variables from stabilization
Generalize the version update script, add support for LKG
This reverts commit 1de2ffb.
Build release
Updating the InteractiveWindow ClipboardTests to match the expected clipboard format in Update 3.
Report errors and exceptions from source generators
Expanded the Condition check to verify the input file is non-empty. Lacking this we get the following spurious entries in our MSBuild output files: ``` GenerateSyntaxModel: Skipping target "GenerateSyntaxModel" because it has no outputs. `` Adding the condition removes this entry and makes our build log files just a bit more readable.
Add check for empty/no change
Expand condition on our command line generator Tasks
…ed variable. Fixes #12266.
Add some unit-tests.
Ensure the right binder is used to bind initializer of implicitly typed variable.
Skipping the InteractiveWindow Clipboard UnitTests as they cannot run on VS2015.2
When present this option will clean out all of the NuGet caches before doing a restore. This is necessary to remove our hard coded dependencies on NuGet.exe in our official builds. Once they are removed we can switch to dowloading NuGet.exe on demand vs. checking it into the repo.
Move SourceGenerator to a feature branch
Add a /clean option to Restore.cmd
Download NuGet.exe instead of having it checked in
After extensive testing it appears the number of places that assume NuGet.exe is in the root is "at least one more." Need to unblock the signed build so putting it back in the root temporarily.
Move NuGet.exe restore location back to the root
* Merge pull request #12041 from heejaechang/buildsyncrace found one more case where documentId can be null * prevent VS from crashing if VS got shutdown while build error reporting is in progress. * Update our NuGet package version to 1.3.2 * Update Microsoft.DiaSymReader.Native to 1.4.0 RTM (#12141) * Enable building of release nuget packages. This commit makes it so that we will always try to generate release nugets except if they depend on prerelease packages. If one of our nuget packages happens to depend on prerelease packages, then when building release nugets, we will simply print a message in the build output and skip release nuget generation for that package (and allow the overall build to succeed). * Address code review feedback. * Simplify script to use nuget.exe for prerelease dependency validation instead of adding custom logic in the script for this. * Remove Microsoft.CodeAnalysis.EditorFeatures from list of prerelease nuget packages. * Change the name of the error log file to skipped_packages.txt. * fixed DifferenceViewer leak this leak was responsible for about 14% of managed memory in customer's dump. basically, in certain condition, if cancellation exception is thrown, we will not close difference viewer which cause all text views to leak. that cause all taggers and text buffers to leak and that cause our preview workspaces to alive. which in turn cause all solutions to alive and so on. all those objects (view, buffer, workspace, solution) are quite big graphs. so ends up eat up 14% of memory. added assert to make sure if we leak viewers again, we get some kind of notification.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
No description provided.