Uh oh!
There was an error while loading. Please reload this page.
Rollup of 4 pull requests - #41305
Conversation
frewsxcv
commented
Apr 14, 2017
- Successful merges: Implement global_asm!() (RFC 1548) #40702, Fix rustdoc infinitely recursing when an external crate reexports itself #41172, Fix invalid associated type rendering in rustdoc #41249, Compile WASM as WASM instead of asm.js #41303
- Failed merges:
Previously, rustdoc's LibEmbargoVisitor unconditionally visited the child modules of an external crate. If a module re-exported its parent via 'pub use super::*', rustdoc would re-walk the parent, leading to infinite recursion. This commit makes LibEmbargoVisitor store already visited modules in an FxHashSet, ensuring that each module is only walked once. Fixesrust-lang#40936
Travis failures indicated the OuterVisitor#visit_item method caused a panic. The Visitor's inner visitor actually relies on the visitor visiting every item's NodeId. I forgot to perform that call in the ItemGlobalAsm match arm, leading to build breakage. The fix is simple: call visit_id(...) for ItemGlobalAsm
Windows builder croaked. This change tries to fix that by actually calling the global_asm-defined function so the symbol doesn't get optimized away, if that is in fact what was happening. Additionally, we provide an empty main() for non-x86 arches.
Looks like the LinkerFlavor change introduced in rust-lang#40018 accidentally uses GCC for the WebAssembly target, causing Rust to never actually pass the post link args to emscripten. This then causes the code to be compiled as asm.js instead of WebAssembly, because the Binaryen tools never run due to the missing linker argument.
Implement global_asm!() (RFC 1548) This is a first attempt. ~~One (potential) problem I haven't solved is how to handle multiple usages of `global_asm!` in a module/crate. It looks like `LLVMSetModuleInlineAsm` overwrites module asm, and `LLVMAppendModuleInlineAsm` is not provided in LLVM C headers 😦~~ I can provide more detail as needed, but honestly, there's not a lot going on here. r? @eddyb CC @Amanieu@jackpot51 Tracking issue: rust-lang#35119
Fix rustdoc infinitely recursing when an external crate reexports itself Previously, rustdoc's LibEmbargoVisitor unconditionally visited the child modules of an external crate. If a module re-exported its parent via `pub use super::*`, rustdoc would re-walk the parent, leading to infinite recursion. This commit makes LibEmbargoVisitor store already visited modules in an FxHashSet, ensuring that each module is only walked once. Fixesrust-lang#40936
…eveklabnik,frewsxcv Fix invalid associated type rendering in rustdoc Fixesrust-lang#41036. r? @rust-lang/docs
Compile WASM as WASM instead of asm.js Looks like the LinkerFlavor change introduced in rust-lang#40018 accidentally uses GCC for the WebAssembly target, causing Rust to never actually pass the post link args to emscripten. This then causes the code to be compiled as asm.js instead of WebAssembly, because the Binaryen tools never run due to the missing linker argument.
rust-highfive
commented
Apr 14, 2017
Thanks for the pull request, and welcome! The Rust team is excited to review your changes, and you should hear from @arielb1 (or someone else) soon. If any changes to this PR are deemed necessary, please add them as extra commits. This ensures that the reviewer can see what has changed since they last reviewed the code. Due to the way GitHub handles out-of-date commits, this should also make it reasonably obvious what issues have or haven't been addressed. Large or tricky changes may require several passes of review and changes. Please see the contribution instructions for more information. |
frewsxcv
commented
Apr 14, 2017
@bors r+ p=10 |
bors
commented
Apr 14, 2017
📌 Commit 13dc855 has been approved by |
bors
commented
Apr 14, 2017
⌛ Testing commit 13dc855 with merge e0529dc... |
bors
commented
Apr 14, 2017
💔 Test failed - status-appveyor |
mrhota
commented
Apr 14, 2017
on |
aidanhs
commented
Apr 14, 2017
Sounds like #40546 again. |
frewsxcv
commented
Apr 14, 2017
@bors retry |
bors
commented
Apr 14, 2017
bors
commented
Apr 15, 2017
☀️ Test successful - status-appveyor, status-travis |