1. 19 5月, 2017 1 次提交
    • O
      Generate readonlyattribute if it does not exist (#18715) · d63f0384
      Omar Tawfik 提交于
      * Call this.DeclaringCompilation.EnsureReadOnlyAttributeExists() when needed
      
      * Promote EmbeddedAttribute to be used by both compilers
      
      * Generate Embedded attributes on PE Module Builder
      
      * Thread PEModuleBuilder through Symbol.AddSynthesizedAttributes()
      
      * Fix failing tests
      
      * Base case passing
      
      * Refactor ReadOnlyAttribute to IsReadOnlyAttribute
      
      * Fix build break
      
      * More Tests
      
      * Clean up
      
      * PR Comments #1
      
      PR Comments #3
      
      PR Comments #4
      
      PR Comments #5
      
      PR Comments #6
      
      PR Comments # 7
      
      * Handle NoPIA
      
      Added more tests
      
      * Lambdas and Local functions no longer generate attributes in symbols
      
      Added tests for constructors and operators
      
      Signal need for synthesized attributes in local rewriter for lambdas an local functions
      
      Clean up
      
      * Clean up
      
      * More PR Feedback
      
      * Adding more tests
      
      * More PR Comments
      
      * More tests for explicit interface implementations
      
      * Latest PR Comments
      
      * Moved EnsureIsReadOnlyAttributeExists to AfterAddingTypeMembersChecks
      
      * Fix failing tests
      d63f0384
  2. 15 8月, 2016 1 次提交
  3. 15 1月, 2015 1 次提交
  4. 14 1月, 2015 1 次提交
  5. 20 6月, 2014 1 次提交
    • T
      Splits Microsoft.CodeAnalysis, Microsoft.CodeAnalysis.CSharp and... · fc3b332f
      TomasMatousek 提交于
      Splits Microsoft.CodeAnalysis, Microsoft.CodeAnalysis.CSharp and Microsoft.CodeAnalysis.VisualBasic into portable and desktop assemblies.
      
      Existing Core\Source, CSharp\Source and VisualBasic\Source directories are renamed to Core\Portable, CSharp\Portable and VisualBasic\Portable.
      New sibling Desktop folders are added and non-portable source is moved there.
      "System.Runtime" references has to be removed in order for the portable project system magic to automatically add facade references.
       (changeset 1281686)
      fc3b332f
  6. 03 5月, 2014 1 次提交
    • T
      In C# lowering of async method stored the state machine type on... · 073242b0
      TomasMatousek 提交于
      In C# lowering of async method stored the state machine type on SourceMethodSymbol so it can later be used when emitting synthesized attributes of the method. This may cause issues when emitting the same compilation twice with different options that affect the state machine type.
           Instead we should store the state machine type to the current PEModuleBuilder. Rather then actually storing it there and adding a dependency on PEModuleBuilder to the attribute generation this change introduces ModuleCompilationState (similar to TypeCompilationState) and threads that one.
           This type is designed to be mutable during compilation (lowering) and immutable during emit. The idea is that all data currently stored in PEModuleBuilder that are produced during compilation and only read in emit could be moved there. Only emit specific data would remain on PEModuleBuilder.
      
           Also refactors Compilation.Compile to remove some duplication and make it cleaner.
       (changeset 1249664)
      073242b0
  7. 19 3月, 2014 1 次提交