1. 01 2月, 2015 4 次提交
    • J
      Treat static properties and fields like extension methods and search from... · bf3bb3ce
      jmarolf 提交于
      Treat static properties and fields like extension methods and search from namespaces that would resolve cases where the compiler partially binds to the wrong type.
      
      Note: this does not happen in VB.  If VB cannot bind the return type of a property it does not attempt to bind inside the property. (changeset 1408173)
      bf3bb3ce
    • H
      rolling back changeset # 1401724 to see whether this is the one caused VM regression. · 5c989919
      heejaechang 提交于
      "When a file is replaced on disk its timestamp should be set to the most recent of its creation time and last write time. Also updating FileKey to use last-write-time, since that's what it's comment explicitly calls for." (changeset 1408149)
      5c989919
    • M
      Bug-1116460 : Renaming the scripting assemblies and namespaces. Making... · 747d1a15
      ManishJ 提交于
      Bug-1116460 : Renaming the scripting assemblies and namespaces. Making corresponding changes in InstallDogfood and RoslynBuildAndTtest to account for new names (changeset 1408119)
      747d1a15
    • H
      reduce allocation on tree serialization · df3e25fb
      heejaechang 提交于
           recent perf regression shows that we are allocating too much memory on one particular spot in the tree serialization.
      
           this change is to remove that bottleneck. basically, rather than creating temporary array just to pass it in to the serializer, it will iterate through elements itself and serialize each element. (changeset 1408094)
      df3e25fb
  2. 31 1月, 2015 31 次提交
    • R
      Merge remote-tracking branch 'origin/master' · 1d0b2f2f
      RoslynTeam 提交于
      1d0b2f2f
    • B
      9fbef0c6
    • R
      Interactive window insertion to VS · 8e667daf
      RoslynTeam 提交于
            Build new VSIX which contains just the interactive window
            Rename interactive window assemblies
            Include new VSIX in the list of files to be inserted
      
           Public API cleanups
            Move command constants into commands namespace
            Move operations onto IInteractiveWindowOperations interface
            move IContentTypeMetadata to internal class
            Make InteractiveContentTypeNames internal, move constants to InteractiveConstants
            Make RestoreHistoryEditTag internal
            Make CommandIds internal
            Make Guids internal
            Fix AV when opening interactive window (changeset 1408072)
      8e667daf
    • P
      Wrap parallel code in the compilers with guards that propagate the UI culture of the main thread. · c3beadd7
      pgavlin 提交于
      This is necessary in order to present strings that originate from external APIs (e.g. the System.XML) with proper localization when they are embedded in diagnostics.
      ***NO_CI***
       (changeset 1408070)
      c3beadd7
    • V
      Fix a typo in the test SaneHashCode (changeset 1408025) · ad32270a
      vladres 提交于
      ad32270a
    • S
      Remove IVT from workspaces to the Roslyn analyzers (srivatsn) · 9b2b97f2
      srivatsn 提交于
      This one was straightforward. There were just a couple of transgressions - both easily fixed. (changeset 1408016)
      9b2b97f2
    • R
      rolling back (changeset 1408003) · 40f2ce12
      RoslynTeam 提交于
      40f2ce12
    • M
    • R
      Interactive window insertion to VS · 23ff962b
      RoslynTeam 提交于
            Build new VSIX which contains just the interactive window
            Rename interactive window assemblies
            Include new VSIX in the list of files to be inserted
      
           Public API cleanups
            Move command constants into commands namespace
            Move operations onto IInteractiveWindowOperations interface
            move IContentTypeMetadata to internal class
            Make InteractiveContentTypeNames internal, move constants to InteractiveConstants
            Make RestoreHistoryEditTag internal
            Make CommandIds internal
            Make Guids internal
            Fix AV when opening interactive window (changeset 1407986)
      23ff962b
    • M
      3988815f
    • J
    • S
      Removing IVT from workspaces to FxCop analyzers · b42117c3
      srivatsn 提交于
      Now that Matt has gone through the fxcop fixers and switched them to use SyntaxGenerator, we can remove IVT from workspaces - i just needed to add a few simple helpers - nothing unreasonable. (changeset 1407864)
      b42117c3
    • R
      Interactive window insertion to VS · 8e6daed7
      RoslynTeam 提交于
            Build new VSIX which contains just the interactive window
            Rename interactive window assemblies
            Include new VSIX in the list of files to be inserted
      
           Public API cleanups
            Move command constants into commands namespace
            Move operations onto IInteractiveWindowOperations interface
            move IContentTypeMetadata to internal class
            Make InteractiveContentTypeNames internal, move constants to InteractiveConstants
            Make RestoreHistoryEditTag internal
            Make CommandIds internal
            Make Guids internal
            Fix AV when opening interactive window
       (changeset 1407857)
      8e6daed7
    • V
    • K
      Make default implementation of GetRootAsync return the root node synchronously... · af1b89e8
      Kevin_H 提交于
      Make default implementation of GetRootAsync return the root node synchronously (rather than calling Task.Factory.StartNew).  SyntaxTree implementions that want to schedule work concurrently, etc, should override GetRootAsync.
      
      Calling Task.Factory.StartNew with an arbitrary (current) scheduler may cause deadlocks.
      
      Consider the case where some code calls GetRootAsync, and that method returns before the Task returned by StartNew is actually scheduled/executed.  If the caller subsequently calls Task.Wait, and the scheduler decides to "inline" the execution of the Task (execute on the same thread), then there will be a deadlock. (changeset 1407810)
      af1b89e8
    • M
      Add a Roslyn diagnostic for C# and VB code analysis projects to verify that... · d43e0e62
      manishv 提交于
      Add a Roslyn diagnostic for C# and VB code analysis projects to verify that all of the expected source symbol types have some code path that generates a SymbolDeclaredEvent. This will hopefully avoid bugs such as 1111667 (Cannot develop VB analyzer when field does not have an initializer) in future. (changeset 1407683)
      d43e0e62
    • T
      Fixes bad cref in a comment. (changeset 1407407) · 4f6e43fa
      TomasMatousek 提交于
      4f6e43fa
    • J
    • J
      This particular exception in Dispose is masking a real failure in our suite... · 944d489e
      jaredpar 提交于
      This particular exception in Dispose is masking a real failure in our suite runs.   This particular scenario can only happen, based on my code reading, if an exception happens trying to create the RuntimeAssemblyManager instance.  In that case domain != null && assemblyManager == null.   That exception propagates out the calling code which has HostedRuntimeEnvironment in a using block hence it goes to Dispose.  The Dispose method thinks this combination is invalid and throws a new exception thus hiding the real and original problem.
      
           Removing the check in Dispose so the real exception will make it into our xUnit logs and we can track down the flaky behavior. (changeset 1407359)
      944d489e
    • J
      3d47c50d
    • T
      EnC support for lambdas & closures in C# compiler · ebc795d4
      TomasMatousek 提交于
      1) Change MethdCompiler.BindMethodBody to associate correct syntax with BoundBlocks it creates when binding constructor with constructor initializer call (two bound blocks are created – outer one defines a closure scope for constructor parameters, the inner one defines a closure scope for variables in the body).
      2) Introduce MethodDebugId – a method ordinal and generation ordinal pair
      3) Introduce LamdbaDebugInfo and ClosureDebugInfo to represent information (syntax offset) we use to figure out how to map lambdas and closures to the previous generation.
      4) Adds a new PDB CDI record (#7) to store lambda and closure debug info.
      5) Generalizes CalculateLocalSyntaxOffset to handle positions in field/property initializers and constructor initializers. Use it to calculate syntax offsets of lambdas and closure scopes. (TODO: rename CalculateLocalSyntaxOffset to CalculateSyntaxOffset).
      6) Replace lambda and scope ordinal dispenser integers with array builders that collect LambdaDebugInfo and ClosureDebugInfo.
      7) Use TryGet- pattern for all VariableSlotAllocator APIs.
      8) Implements mapping of lambda method and display class names to previous generation via VariableSlotAllocator.
       (changeset 1407240)
      ebc795d4
    • T
      If an assembly has "global" alias don't qualify namespace name in PDB with an... · e14d07c9
      TomasMatousek 提交于
      If an assembly has "global" alias don't qualify namespace name in PDB with an extern alias. (changeset 1407218)
      e14d07c9
    • P
      Reduce allocations in CommandLineParser.CondenseDoubledBackslashes · 1b134bcc
      Pharring 提交于
      Remove unused CommandLineSplitter class and update unit tests. (changeset 1407192)
      1b134bcc
    • B
      Ignore assembly names when resolving symbols in Peek. · a7e4c1ec
      BalajiKris 提交于
      This is because peek uses symbolkeys to resolve symbols between compilations which could potentially be from different frameworks but symbolkeys do not contain enough information to deal with typeforwarding situations. E.g: a portable project and a non-portable project may both resolve the same Int32 symbol to System.Runtime and mscorlib.
      
      Other features such as Metadata as source, Find References already do this. This change updates Peek to do the same thing. (changeset 1407182)
      a7e4c1ec
    • J
      Fixed the suites that I broke. · 491deef8
      jaredpar 提交于
      Don't worry, the Squirrel of Chain is already in my possession.   (changeset 1407173)
      491deef8
    • J
      Add an analyzer to force passing TaskSchedulers when creating Tasks. · b92db562
      jasonmalinowski 提交于
      If you call Task.Factory.StartNew and use one of the overloads that doesn't take TaskScheduler, the resulting task is scheduled onto TaskScheduler.Current. This is very dangerous in a free-threaded library like Roslyn: if the function runs on the UI thread it's possible the resulting Task will be scheduled on the UI thread accidentally. If later UI code were to wait on that task or a continuation of it, we might deadlock.
      
      The solution is just to ban the APIs -- if somebody wishes to schedule to the current thread, it's up to them to be explicit. Otherwise, TaskScheduler.Default should be used. (changeset 1407143)
      b92db562
    • P
      The C# compiler was not using the correct syntax node to verify whether or not... · 4b039cb7
      pgavlin 提交于
      The C# compiler was not using the correct syntax node to verify whether or not the expression body of an expression-bodied lambda or member was classified as a statement expression. This caused code to unexpectedly succeed to compile in certain cases (e.g. when the expression body was a parenthesized-expression that wrapped a valid statement expression), which broke conversions to void-returning delegates (and thus overload resolution, as in the original repro). This change adjusts the check to use the correct syntax node.
      ***NO_CI***
       (changeset 1406995)
      4b039cb7
    • J
      Part 1 of moving Visual Studio to Open · 5c7b91c9
      jaredpar 提交于
      Background:
      
      As discussed in the dev team all hands all code under the GitHub dotnet foundation is using a single process for contribution, API review, infrastructure and coding style. The idea is to present a unified view to our customer and give them a single story for contributing to any project under the dotnet foundation.
      
      https://github.com/dotnet/corefx/wiki/Contributing#c-coding-style
      
      The coding style transition is automated using a Roslyn based rewrite tool:
      
      https://github.com/dotnet/codeformatter
      
      This will be applied in stages across our developer tree. Right now the focus is on the Open directory as this is what is being presented on github. Code owners will be contacted before the transition happens.
      
      Note: this is a soft style requirement. There are no build errors that come from this change. (changeset 1406961)
      5c7b91c9
    • A
    • C
      Allow async taggers to specify what sort of tracking span behavior they want. · ec999eb0
      cyrusn 提交于
      This affects what happens to tags for previous text snapshot versions that are mapped forward (in the interim period before we get the new up to date tags).
      
      Most features just have EdgeExclusive behavior.  However, some features, like TypeScript classification, want EdgeInclusive behavior so that if you type at the edge of an existing tag, the next text gets the old classification and does not flash.
      ***NO_CI***
       (changeset 1406469)
      ec999eb0
    • K
      Rollback SkipApplyOptimizations change for Features and BasicEditorFeatures... · 23e01f11
      Kevin_H 提交于
      Rollback SkipApplyOptimizations change for Features and BasicEditorFeatures (to see if issue with ibcmerge has been fixed)...
      ***NO_CI***
       (changeset 1406462)
      23e01f11
  3. 30 1月, 2015 2 次提交
  4. 29 1月, 2015 3 次提交