-
Notifications
You must be signed in to change notification settings - Fork 157
Fix compiler crash building APINotesYAMLCompiler in swift-clang with MSVC #68
Conversation
|
The proper process is to put all LLVM/Clang changes into upstream-with-swift first and then cherry-pick them to the necessary release branches. Rereading the original commit, I think probably the LLVM definition of |
|
Umm, that is the definition of
|
|
Yes, I know. :-) I'm wondering if it's wrong, and if so if fixing it makes the error go away. |
|
Haha, maybe I misunderstood your comment - you said "it should be ....`, but it already is! |
|
I see now - I'm looking upstream rather than in swift-llvm! https://github.com/apple/swift-llvm/blob/swift-4.0-branch/include/llvm/ADT/None.h#L23 |
|
Yeah, back in #45 it used a funny self-referential thing. I'm not sure why ours is different. |
|
I was under the impression everything was reset to upstream in the swift-4.0-branch. If this hasn't been updated, what else hasn't? |
|
Either this just came in recently, or it's something we changed in upstream-with-swift. Let's see…looks like it is very recent. llvm-mirror/llvm@cf890be |
|
Okay, should I cherry-pick that commit to upstream-with-swift as well as swift-4.0-branch |
|
upstream-with-swift really is an "upstream"; it gets automerged frequently. This release with swift-4.0-branch is a little special in that we're also automerging from LLVM's release branch (coincidentally also version 4, I think). So if this does fix the problem, then ideally someone would cherry-pick it upstream. (I think there'll be a Swift blog post about this soon, but there was at least a message on swift-dev.) |
|
Awesome. All the upstream/stable/swift-x.y-branch stuff can get a little confusing :D. I assume we close this until upstream-with-swift, followed by stable, followed by swift-x.y-branch (not necessarily in that order) auto updates? |
|
Last piece of the puzzle: "stable" is basically an alias for "the current release branch" to make cherry-picking easy. If we ever have a period where something goes into the next release but not this one, "stable" is where it would go, but so far that hasn't happened since the LLVM/Clang branches are prepared well before the Swift branches. |
|
Thanks for filling me in on this, appreciate it. Wonderfully complicated stuff... |
This seems to have been reset in stable/swift-4.0-branch after the update to LLVM 4.0
This is a port of #45 (the other stuff seems to still be there with MSVC).
This fixes an MSVC crash,
@jrose-apple, please let me know what other branch this should go to. Do I submit another duplicate PR for stable or upstream-with-swift?