Skip to content

Conversation

jrose-apple
Copy link
Contributor

  • Clear up allowed changes for associated types.
  • Modifying a fixed_contents struct's properties' accessors isn't inherently ABI-breaking, just behavior-changing like any other inlineable thing.
  • Clarify what an "empty extension" is.

cc @dabrahams

@jrose-apple
Copy link
Contributor Author

@swift-ci Please smoke test

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't see how removing a default can be binary compatible.

Suppose version 2 adds an associated type with a default, and version 3 removes the default. A client compiled against version 1 will not have the associated type in its witness table.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oops, good point. Is it worth allowing the removal if the associated type has been around as long as the protocol, or should we just leave it out?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed.

- Clear up allowed changes for associated types.
- Modifying a fixed_contents struct's properties' accessors isn't inherently
  ABI-breaking, just behavior-changing like any other inlineable thing.
- Clarify what an "empty extension" is.
@jrose-apple jrose-apple force-pushed the Dave-on-LibraryEvolution branch from 508994a to 5895cb9 Compare October 5, 2016 02:46
@jrose-apple
Copy link
Contributor Author

@swift-ci Please smoke test

@jrose-apple
Copy link
Contributor Author

@shahmishal Here's one where it failed to detect the hash mismatch for some reason: https://ci.swift.org/view/Pull%20Request/job/swift-PR-Linux-smoke-test/1595/

@shahmishal
Copy link
Member

I might have to fetch/pull before checking sha

if git -C ${WORKSPACE}/swift cat-file -e ${ghprbActualCommit} 2> /dev/null ; then
   echo "--- Correct sha ${ghprbActualCommit}  ---" 
else    
   echo "--- Wrong sha ${ghprbActualCommit}  ---" 
   export new_ghprbActualCommit=$(git  -C ${WORKSPACE}/swift show-ref --hash refs/remotes/origin/pr/${ghprbPullId}/head)
   echo "ghprbActualCommit=${new_ghprbActualCommit}" > ${JOB_WORKSPACE}/re_build.properties
   echo "--- EXIT WRONG SHA ---"
   exit 1
fi

@shahmishal
Copy link
Member

@swift-ci Please smoke test Linux

@jrose-apple jrose-apple merged commit 9af74fe into swiftlang:master Oct 5, 2016
@jrose-apple jrose-apple deleted the Dave-on-LibraryEvolution branch October 5, 2016 15:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants