Skip to content
Permalink
Branch: master
Commits on May 15, 2019
  1. Merge pull request #24804 from brentdax/erroneously-mangled-error-man…

    brentdax committed May 15, 2019
    …glings
    
    [ASTMangler] Mangle nested imported error structs correctly
  2. [ASTMangler] Mangle nested imported error structs correctly

    brentdax committed May 15, 2019
    Error structs synthesized by ClangImporter can be renamed using SWIFT_NAME() to syntactically appear anywhere in the type hierarchy with any name, but they should always be mangled as `__C_Synthesized.related decl ‘e’ of <Objective-C enum name>`. Unforunately, when SWIFT_NAME() was used to nest the error struct inside another type, an ASTMangler bug would cause it to be mangled as `<parent type>.related decl ‘e’ of <Objective-C enum name>`, and an ASTDemangler bug would also require a valid parent type. This created a mismatch between the compiler’s and runtime’s manglings which caused crashes when you tried to match the imported error struct in a `catch`.
    
    This PR corrects the compiler bugs so that it generates the mangling the runtime expects. This is theoretically ABI-breaking, but as far as I can determine nobody has shipped the incorrectly mangled names, presumably because they crash when you try to use them.
    
    Fixes <rdar://problem/48040880>.
  3. Merge pull request #24802 from apple/revert-24498-nsvalue-availability

    brentdax committed May 15, 2019
    Revert "[Foundation] Fix availability of NSValue.value(of:)"
  4. Revert "[Foundation] Fix availability of NSValue.value(of:)"

    brentdax committed May 15, 2019
  5. Merge pull request #24464 from brentdax/charmed-interpolations

    brentdax committed May 15, 2019
    [Parse][Sema] Improve interpolation parsing and construction
Commits on May 14, 2019
  1. Merge pull request #24752 from Rostepher/swiftlang-module-install-nam…

    brentdax committed May 14, 2019
    …e-dir
    
    [Build System: CMake] Set the install_name_dir to @rpath for the SwiftLang module in SourceKit.
Commits on May 11, 2019
  1. Merge pull request #24707 from brentdax/xfail-textformatting-more

    brentdax committed May 11, 2019
    Disable Prototypes/TextFormatting everywhere
  2. Merge pull request #24699 from mikeash/fix-isa-mask-assert

    brentdax committed May 11, 2019
    [Runtime] In the assert for SWIFT_ISA_MASK, tolerate it if objc_debug_isa_class_mask is not available.
Commits on May 10, 2019
  1. Merge pull request #24698 from brentdax/xfail-textformatting

    brentdax committed May 10, 2019
    Disable Prototypes/TextFormatting in 32-bit
  2. Disable Prototypes/TextFormatting in 32-bit

    brentdax committed May 10, 2019
    The new ImmutableAddressUseVerifier asserts when it tries to compile it. rdar://problem/50676315
  3. Merge pull request #24690 from slavapestov/archive-attributes-arclite…

    brentdax committed May 10, 2019
    …-ancient-argument
    
    Fix archive_attributes test to work on macOS 10.9
  4. Merge pull request #24669 from brentdax/unsanitary-overlays

    brentdax committed May 10, 2019
    XFAIL ParsableInterface/verify_all_overlays.py
  5. XFAIL ParsableInterface/verify_all_overlays.py

    brentdax committed May 10, 2019
    rdar://problem/50648519
Commits on May 9, 2019
  1. [AST] Give appendInterpolation refs a SourceLoc

    brentdax committed May 6, 2019
    This change permits UnresolvedDotExpr to have both a name and a base that are implicit, but a valid DotLoc, and to treat that DotLoc as the node’s location. It then changes the generation of string interpolation code so that `$stringInterpolation.appendInterpolation` references have a DotLoc corresponding to the backslash in the string literal.
    
    This makes it possible for `ExprContextAnalyzer` in IDE to correctly detect when you are code-completing in a string interpolation and treat it as an `appendInterpolation` call.
  2. [Parse] Parse string interpolations as args

    brentdax committed May 6, 2019
    Now that we manipulate the argument list to correct strange interpolations in Sema, we can parse interpolations directly as argument lists, simplifying the parser.
    
    By itself, this refactoring causes a code completion regression; a subsequent commit will fix that.
  3. Move strange interpolation fix to PreCheckExpression

    brentdax committed May 3, 2019
    This defers diagnosis until a stage where #if conditions have definitely been evaluated, at the cost of a slightly more complex implementation. We’ll gain some of that complexity back in a subsequent refactoring. Fixes SR-9937.
Commits on May 8, 2019
  1. Merge pull request #24611 from nathawes/disable-test-interpreter-subc…

    brentdax committed May 8, 2019
    …lass-existentials-to-unblock-ci
    
    [test] Disable test/Interpreter/subclass_existentials.swift to unblock CI
Commits on May 6, 2019
  1. Merge pull request #24334 from brentdax/wherefore-art-thou-api

    brentdax committed May 6, 2019
     [TypeChecker] Rephrase platforms in availability diagnostics
Commits on May 4, 2019
  1. Improve strange-interpolation test

    brentdax committed May 2, 2019
    There were a number of mistakes in this test:
    
    • The whole thing was indented one space.
    • Some fix-it tests were malformed and therefore not being tested.
    • The output checking could in theory allow content before or after the intended content.
You can’t perform that action at this time.