1. 09 12月, 2016 1 次提交
    • J
      Remove EmitContext from ITypeReference.TypeCode · 3f3510dd
      Jared Parsons 提交于
      This parameter is no longer necessary for any implementation of ITypeReference.  The presence of this parameter cause the compiler team to spend a considerable amount of time digging down a wrong path in a watson bug.  Removing because it's dead code and makes the calling code cleaner to process.
      3f3510dd
  2. 13 8月, 2016 1 次提交
    • T
      Removes IModule, IAssembly interfaces (#12984) · 19dac14a
      Tomáš Matoušek 提交于
      * CommonPEModuleBuilder refactoring
      
      * Renames
      
      * Use CommonPEModuleBuilder instead of IModule
      
      * Remove IModule
      
      * Move GetFiles to module builder
      
      * Remove IAssembly
      
      * Add comments, PR feedback
      
      * Resolve merge conflicts
      19dac14a
  3. 24 7月, 2016 1 次提交
  4. 21 7月, 2016 1 次提交
    • A
      Support tuples in interface implementations (#12611) · d6025731
      Andy Gocke 提交于
      Currently, if you implement an interface with a tuple type as a
      substituted type argument that will be accurately represented in source,
      but the names will be lost when emitted to metadata.
      
      This PR implements roundtripping for tuples as generic type arguments to
      interface implementations in metadata. This is done by adding support
      for emitting attributes on interface implementations to Emit. We now
      emit the same attribute on interface implementations that we would
      on other areas where types may contain nested tuples. Completes the
      interface implementation work referenced in #12347.
      d6025731
  5. 09 7月, 2016 1 次提交
  6. 28 4月, 2016 1 次提交
  7. 20 4月, 2016 1 次提交
  8. 19 4月, 2016 1 次提交
  9. 16 4月, 2016 1 次提交
  10. 15 4月, 2016 1 次提交
  11. 08 4月, 2016 2 次提交
  12. 07 4月, 2016 1 次提交
  13. 30 3月, 2016 1 次提交
  14. 29 3月, 2016 1 次提交
  15. 28 3月, 2016 2 次提交
  16. 25 3月, 2016 2 次提交
  17. 24 3月, 2016 1 次提交
  18. 26 3月, 2015 2 次提交
    • V
      Moved MangleForTypeNameIfNeeded to MetadataHelpers · 0d09712c
      VSadov 提交于
      0d09712c
    • V
      Changed generation of PrivateImplementationDetails to append module name only... · 5841b3b3
      VSadov 提交于
      Changed generation of PrivateImplementationDetails to append module name only when dealing with netmudules.
      
      The goal of module name apending is to avoid clashes when combining multiple netmodules into multifile assembly. When building a regular assembly, appending module name is not serving any purpose and just causes unnecessary metadata differences.
      
      Also in this change - when we do apend the module name, replace '.' with '_' when that happens. For example when we build a netmodule and its name is Foo.Bar.dll
      More complicated name mangling schemes were discussed, but at this point we will do a simple '.' --> '_' as the least destabilizing change which is still sufficient in the most common case of having dots in the module name.
      
      Fixes #1430
      5841b3b3
  19. 17 3月, 2015 2 次提交
  20. 15 3月, 2015 1 次提交
  21. 14 3月, 2015 1 次提交
  22. 13 3月, 2015 2 次提交
  23. 28 2月, 2015 1 次提交
    • B
      Code formatter run · ae1aeb41
      beep boop 提交于
      Been almost a month since the code formatter was run so this change was
      a bit larger than would be expected for a normal (weekly) update.  Diffs
      mostly around:
      
      - Whitespace changes
      - Missing copyright headers
      - Missing visibility modifiers
      ae1aeb41
  24. 20 2月, 2015 1 次提交
  25. 25 1月, 2015 1 次提交
    • J
      Change the file encoding of many files back to UTF-8. · cfdd6068
      jaredpar 提交于
      These were accidentally changed to UTF-16LE during a recent scripted change.  This went unnoticed because the encoding change didn't register in CodeFlow (indeed if you view a shelve of this change in CodeFlow it will report no changes).  UTF-16 does not work well with Git as it is often interpreted as a binary file.  Moving back to UTF-8 so our GitHub experience works well for customers.
      
      closes #66 (changeset 1403787)
      cfdd6068
  26. 24 1月, 2015 1 次提交
    • B
      First step in moving the compiler code base to the .Net Foundation coding style. · 16512b64
      beep boop 提交于
      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 1403394)
      16512b64
  27. 15 1月, 2015 1 次提交
  28. 14 1月, 2015 1 次提交
  29. 17 10月, 2014 1 次提交
  30. 15 8月, 2014 2 次提交
    • N
      77d5993c
    • N
      Toward deterministic compilation (via Lance Collins) · f780692f
      nmgafter 提交于
      Ported changes from Lance Collins for improving the determinism of the compiler:
           1. Use deterministic name (hash of contents) for mapped fields for array initializers.
           2. Visit references from IL with ReferenceIndexer as the IL is serialized (which happens in a deterministic order) rather than based on the order of module.ReferencesInIL which is nondeterministic due to parallel method body compilation.
           3. Sort assembly attributes to account for attributes coming from multiple files in nondeterministic order.
      
      Remaining issue of deterministic signature(Guid) for PDB is not addressed here. See 900646.
      Compiler still does not produce deterministic MVID or timestamp by default. (changeset 1314700)
      f780692f
  31. 24 6月, 2014 1 次提交
    • V
      Replacing IMethodImplementation with a struct. · 722a7757
      VSadov 提交于
      We have two identical and trivial implementations of IMethodImplementation which are basically a tuple of implemented and implementing methods.. We could just make this a struct.
       (changeset 1283966)
      722a7757
  32. 20 6月, 2014 2 次提交
    • 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
    • T
      The current implementation was unnecessarily complicated and confusing. · 1c5188aa
      TomasMatousek 提交于
      Removes IFieldDefinition.FieldMapping that returned ISectionBlock -- the only section the writer is writing data into is .text, so it suffice to return ImmutableArray<byte> containing the data.
      Deletes ISectionBlock since it hasn't been used elsewhere.
      Reduces the amount of state stored on PEWriter. (changeset 1277226)
      1c5188aa