-
Notifications
You must be signed in to change notification settings - Fork 12.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rollup of 15 pull requests #49308
Rollup of 15 pull requests #49308
Commits on Feb 28, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 518b3f7 - Browse repository at this point
Copy the full SHA 518b3f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11696ac - Browse repository at this point
Copy the full SHA 11696acView commit details -
Configuration menu - View commit details
-
Copy full SHA for f463386 - Browse repository at this point
Copy the full SHA f463386View commit details -
Configuration menu - View commit details
-
Copy full SHA for 94630e4 - Browse repository at this point
Copy the full SHA 94630e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e3fa0d - Browse repository at this point
Copy the full SHA 8e3fa0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for b3ecf5f - Browse repository at this point
Copy the full SHA b3ecf5fView commit details -
Support posix_spawn() for FreeBSD.
spawn() is expected to return an error if the specified file could not be executed. FreeBSD's posix_spawn() supports returning ENOENT/ENOEXEC if the exec() fails, which not all platforms support. This brings a very significant performance improvement for FreeBSD, involving heavy use of Command in threads, due to fork() invoking jemalloc fork handlers and causing lock contention. FreeBSD's posix_spawn() avoids this problem due to using vfork() internally.
Configuration menu - View commit details
-
Copy full SHA for 85b82f2 - Browse repository at this point
Copy the full SHA 85b82f2View commit details
Commits on Mar 1, 2018
-
Configuration menu - View commit details
-
Copy full SHA for e6efd0d - Browse repository at this point
Copy the full SHA e6efd0dView commit details -
Configuration menu - View commit details
-
Copy full SHA for a9ea876 - Browse repository at this point
Copy the full SHA a9ea876View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2e2d926 - Browse repository at this point
Copy the full SHA 2e2d926View commit details -
Configuration menu - View commit details
-
Copy full SHA for ef73b3a - Browse repository at this point
Copy the full SHA ef73b3aView commit details
Commits on Mar 2, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 99b50ef - Browse repository at this point
Copy the full SHA 99b50efView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5ba6b3a - Browse repository at this point
Copy the full SHA 5ba6b3aView commit details -
Support posix_spawn() for Linux glibc 2.24+.
The relevant support was added in https://sourceware.org/bugzilla/show_bug.cgi?id=10354#c12
Configuration menu - View commit details
-
Copy full SHA for d740083 - Browse repository at this point
Copy the full SHA d740083View commit details
Commits on Mar 10, 2018
-
Split param-bounds-ignored into two, it was testing two independent t…
…hings Also, tweak the test for ignored type aliases such that replacing the type alias by a newtype struct leads to a well-formed type definition, and errors when used the way the type alias is used.
Configuration menu - View commit details
-
Copy full SHA for 81130ed - Browse repository at this point
Copy the full SHA 81130edView commit details -
Rename ignored_generic_bounds -> type_alias_bounds
First of all, the lint is specific for type aliases. Second, it turns out the bounds are not entirely ignored but actually used when accessing associated types. So change the wording of the lint, and adapt its name to reality. The lint has never been on stable or beta, so renaming is safe.
Configuration menu - View commit details
-
Copy full SHA for 562b44d - Browse repository at this point
Copy the full SHA 562b44dView commit details -
type_alias_bounds lint: If the type alias uses an associated type wit…
…hout "as", suggest to use the "as" form instead. This is necessary to get rid of the type bound, and hence silence the warning.
Configuration menu - View commit details
-
Copy full SHA for 0e6d40a - Browse repository at this point
Copy the full SHA 0e6d40aView commit details
Commits on Mar 12, 2018
-
Configuration menu - View commit details
-
Copy full SHA for c685b57 - Browse repository at this point
Copy the full SHA c685b57View commit details -
Configuration menu - View commit details
-
Copy full SHA for 373b2cd - Browse repository at this point
Copy the full SHA 373b2cdView commit details
Commits on Mar 13, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 30adb53 - Browse repository at this point
Copy the full SHA 30adb53View commit details
Commits on Mar 14, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 0f96e14 - Browse repository at this point
Copy the full SHA 0f96e14View commit details -
Configuration menu - View commit details
-
Copy full SHA for 23a1da4 - Browse repository at this point
Copy the full SHA 23a1da4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 82bd146 - Browse repository at this point
Copy the full SHA 82bd146View commit details -
Configuration menu - View commit details
-
Copy full SHA for 067553d - Browse repository at this point
Copy the full SHA 067553dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3d90b4d - Browse repository at this point
Copy the full SHA 3d90b4dView commit details
Commits on Mar 15, 2018
-
Configuration menu - View commit details
-
Copy full SHA for c24a58c - Browse repository at this point
Copy the full SHA c24a58cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 43ed377 - Browse repository at this point
Copy the full SHA 43ed377View commit details -
Configuration menu - View commit details
-
Copy full SHA for bb32823 - Browse repository at this point
Copy the full SHA bb32823View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5d8443a - Browse repository at this point
Copy the full SHA 5d8443aView commit details
Commits on Mar 16, 2018
-
Configuration menu - View commit details
-
Copy full SHA for f9d3845 - Browse repository at this point
Copy the full SHA f9d3845View commit details -
Configuration menu - View commit details
-
Copy full SHA for 33ed787 - Browse repository at this point
Copy the full SHA 33ed787View commit details -
Configuration menu - View commit details
-
Copy full SHA for cc4f97e - Browse repository at this point
Copy the full SHA cc4f97eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 6b29060 - Browse repository at this point
Copy the full SHA 6b29060View commit details -
Configuration menu - View commit details
-
Copy full SHA for b5ab5ce - Browse repository at this point
Copy the full SHA b5ab5ceView commit details
Commits on Mar 17, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 9e62681 - Browse repository at this point
Copy the full SHA 9e62681View commit details -
Configuration menu - View commit details
-
Copy full SHA for f53d4af - Browse repository at this point
Copy the full SHA f53d4afView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fa69c9 - Browse repository at this point
Copy the full SHA 3fa69c9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 1dbc84d - Browse repository at this point
Copy the full SHA 1dbc84dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 1551ef1 - Browse repository at this point
Copy the full SHA 1551ef1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 697d3be - Browse repository at this point
Copy the full SHA 697d3beView commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e5eb02 - Browse repository at this point
Copy the full SHA 8e5eb02View commit details -
Configuration menu - View commit details
-
Copy full SHA for 37f9c7f - Browse repository at this point
Copy the full SHA 37f9c7fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ec4a9c6 - Browse repository at this point
Copy the full SHA ec4a9c6View commit details -
Configuration menu - View commit details
-
Copy full SHA for e09c2ff - Browse repository at this point
Copy the full SHA e09c2ffView commit details -
Configuration menu - View commit details
-
Copy full SHA for f40877f - Browse repository at this point
Copy the full SHA f40877fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 2d13ddb - Browse repository at this point
Copy the full SHA 2d13ddbView commit details -
Configuration menu - View commit details
-
Copy full SHA for 67f46ce - Browse repository at this point
Copy the full SHA 67f46ceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 22f7a02 - Browse repository at this point
Copy the full SHA 22f7a02View commit details -
Stop using deprecated NonZero APIs
These will eventually be removed (though the NonZero<T> lang item will likely stay).
Configuration menu - View commit details
-
Copy full SHA for 6d682c9 - Browse repository at this point
Copy the full SHA 6d682c9View commit details -
Test NonZero in a const item in a pattern.
(This was buggy before rust-lang#46882)
Configuration menu - View commit details
-
Copy full SHA for 7cf1f18 - Browse repository at this point
Copy the full SHA 7cf1f18View commit details -
Remove deprecated unstable ptr::Shared type alias.
It has been deprecated for about one release cycle.
Configuration menu - View commit details
-
Copy full SHA for 73c0537 - Browse repository at this point
Copy the full SHA 73c0537View commit details
Commits on Mar 18, 2018
-
Configuration menu - View commit details
-
Copy full SHA for fad1648 - Browse repository at this point
Copy the full SHA fad1648View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d5c29b - Browse repository at this point
Copy the full SHA 7d5c29bView commit details -
Configuration menu - View commit details
-
Copy full SHA for a23f685 - Browse repository at this point
Copy the full SHA a23f685View commit details -
Configuration menu - View commit details
-
Copy full SHA for d2e7953 - Browse repository at this point
Copy the full SHA d2e7953View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c3d632 - Browse repository at this point
Copy the full SHA 5c3d632View commit details -
Configuration menu - View commit details
-
Copy full SHA for ce84a41 - Browse repository at this point
Copy the full SHA ce84a41View commit details
Commits on Mar 19, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 685c3c1 - Browse repository at this point
Copy the full SHA 685c3c1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8236e43 - Browse repository at this point
Copy the full SHA 8236e43View commit details -
Configuration menu - View commit details
-
Copy full SHA for 37ff473 - Browse repository at this point
Copy the full SHA 37ff473View commit details -
Configuration menu - View commit details
-
Copy full SHA for c05d234 - Browse repository at this point
Copy the full SHA c05d234View commit details -
Configuration menu - View commit details
-
Copy full SHA for 00dac20 - Browse repository at this point
Copy the full SHA 00dac20View commit details -
Configuration menu - View commit details
-
Copy full SHA for f332a9c - Browse repository at this point
Copy the full SHA f332a9cView commit details -
Don't use posix_spawn() if PATH was modified in the environment.
The expected behavior is that the environment's PATH should be used to find the process. posix_spawn() could be used if we iterated PATH to search for the binary to execute. For now just skip posix_spawn() if PATH is modified.
Configuration menu - View commit details
-
Copy full SHA for 6212904 - Browse repository at this point
Copy the full SHA 6212904View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8e0faf7 - Browse repository at this point
Copy the full SHA 8e0faf7View commit details
Commits on Mar 20, 2018
-
Configuration menu - View commit details
-
Copy full SHA for 062a46f - Browse repository at this point
Copy the full SHA 062a46fView commit details -
Configuration menu - View commit details
-
Copy full SHA for df76629 - Browse repository at this point
Copy the full SHA df76629View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5e93394 - Browse repository at this point
Copy the full SHA 5e93394View commit details -
Configuration menu - View commit details
-
Copy full SHA for 83e9f39 - Browse repository at this point
Copy the full SHA 83e9f39View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3c8d555 - Browse repository at this point
Copy the full SHA 3c8d555View commit details -
Configuration menu - View commit details
-
Copy full SHA for 11f1406 - Browse repository at this point
Copy the full SHA 11f1406View commit details
Commits on Mar 21, 2018
-
Configuration menu - View commit details
-
Copy full SHA for b996f9d - Browse repository at this point
Copy the full SHA b996f9dView commit details
Commits on Mar 22, 2018
-
Configuration menu - View commit details
-
Copy full SHA for b48a26c - Browse repository at this point
Copy the full SHA b48a26cView commit details -
Use GNU version of fgrep/egrep tool if available
It is mostly for BSD system. Some tests (run-make/issue-35164 and run-make/cat-and-grep-sanity-check) are failing with BSD fgrep, whereas they pass with gnu version (gfgrep).
Configuration menu - View commit details
-
Copy full SHA for de1c929 - Browse repository at this point
Copy the full SHA de1c929View commit details -
Configuration menu - View commit details
-
Copy full SHA for bfb94ac - Browse repository at this point
Copy the full SHA bfb94acView commit details -
Configuration menu - View commit details
-
Copy full SHA for 57f9c4d - Browse repository at this point
Copy the full SHA 57f9c4dView commit details -
Configuration menu - View commit details
-
Copy full SHA for 70559c5 - Browse repository at this point
Copy the full SHA 70559c5View commit details -
rustc: Add a
#[wasm_custom_section]
attributeThis commit is an implementation of adding custom sections to wasm artifacts in rustc. The intention here is to expose the ability of the wasm binary format to contain custom sections with arbitrary user-defined data. Currently neither our version of LLVM nor LLD supports this so the implementation is currently custom to rustc itself. The implementation here is to attach a `#[wasm_custom_section = "foo"]` attribute to any `const` which has a type like `[u8; N]`. Other types of constants aren't supported yet but may be added one day! This should hopefully be enough to get off the ground with *some* custom section support. The current semantics are that any constant tagged with `#[wasm_custom_section]` section will be *appended* to the corresponding section in the final output wasm artifact (and this affects dependencies linked in as well, not just the final crate). This means that whatever is interpreting the contents must be able to interpret binary-concatenated sections (or each constant needs to be in its own custom section). To test this change the existing `run-make` test suite was moved to a `run-make-fulldeps` folder and a new `run-make` test suite was added which applies to all targets by default. This test suite currently only has one test which only runs for the wasm target (using a node.js script to use `WebAssembly` in JS to parse the wasm output).
Configuration menu - View commit details
-
Copy full SHA for 7df6f41 - Browse repository at this point
Copy the full SHA 7df6f41View commit details -
rustc: Add a
#[wasm_import_module]
attributeThis commit adds a new attribute to the Rust compiler specific to the wasm target (and no other targets). The `#[wasm_import_module]` attribute is used to specify the module that a name is imported from, and is used like so: #[wasm_import_module = "./foo.js"] extern { fn some_js_function(); } Here the import of the symbol `some_js_function` is tagged with the `./foo.js` module in the wasm output file. Wasm-the-format includes two fields on all imports, a module and a field. The field is the symbol name (`some_js_function` above) and the module has historically unconditionally been `"env"`. I'm not sure if this `"env"` convention has asm.js or LLVM roots, but regardless we'd like the ability to configure it! The proposed ES module integration with wasm (aka a wasm module is "just another ES module") requires that the import module of wasm imports is interpreted as an ES module import, meaning that you'll need to encode paths, NPM packages, etc. As a result, we'll need this to be something other than `"env"`! Unfortunately neither our version of LLVM nor LLD supports custom import modules (aka anything not `"env"`). My hope is that by the time LLVM 7 is released both will have support, but in the meantime this commit adds some primitive encoding/decoding of wasm files to the compiler. This way rustc postprocesses the wasm module that LLVM emits to ensure it's got all the imports we'd like to have in it. Eventually I'd ideally like to unconditionally require this attribute to be placed on all `extern { ... }` blocks. For now though it seemed prudent to add it as an unstable attribute, so for now it's not required (as that'd force usage of a feature gate). Hopefully it doesn't take too long to "stabilize" this! cc rust-lang-nursery/rust-wasm#29
Configuration menu - View commit details
-
Copy full SHA for d889957 - Browse repository at this point
Copy the full SHA d889957View commit details
Commits on Mar 23, 2018
-
Configuration menu - View commit details
-
Copy full SHA for ced7687 - Browse repository at this point
Copy the full SHA ced7687View commit details -
Rollup merge of rust-lang#48265 - SimonSapin:nonzero, r=KodrAus
Add 12 num::NonZero* types for primitive integers, deprecate core::nonzero RFC: rust-lang/rfcs#2307 Tracking issue: ~~rust-lang#27730 rust-lang#49137 Fixes rust-lang#27730
Configuration menu - View commit details
-
Copy full SHA for 7cf4cb5 - Browse repository at this point
Copy the full SHA 7cf4cb5View commit details -
Rollup merge of rust-lang#48624 - bdrewery:freebsd-posix-spawn, r=ale…
…xcrichton Command: Support posix_spawn() on FreeBSD/OSX/GNU Linux
Configuration menu - View commit details
-
Copy full SHA for 16eeb10 - Browse repository at this point
Copy the full SHA 16eeb10View commit details -
Rollup merge of rust-lang#48883 - alexcrichton:wasm-custom-sections, …
…r=nikomatsakis rustc: Add a `#[wasm_custom_section]` attribute This commit is an implementation of adding custom sections to wasm artifacts in rustc. The intention here is to expose the ability of the wasm binary format to contain custom sections with arbitrary user-defined data. Currently neither our version of LLVM nor LLD supports this so the implementation is currently custom to rustc itself. The implementation here is to attach a `#[wasm_custom_section = "foo"]` attribute to any `const` which has a type like `[u8; N]`. Other types of constants aren't supported yet but may be added one day! This should hopefully be enough to get off the ground with *some* custom section support. The current semantics are that any constant tagged with `#[wasm_custom_section]` section will be *appended* to the corresponding section in the final output wasm artifact (and this affects dependencies linked in as well, not just the final crate). This means that whatever is interpreting the contents must be able to interpret binary-concatenated sections (or each constant needs to be in its own custom section). To test this change the existing `run-make` test suite was moved to a `run-make-fulldeps` folder and a new `run-make` test suite was added which applies to all targets by default. This test suite currently only has one test which only runs for the wasm target (using a node.js script to use `WebAssembly` in JS to parse the wasm output).
Configuration menu - View commit details
-
Copy full SHA for f836ae4 - Browse repository at this point
Copy the full SHA f836ae4View commit details -
Rollup merge of rust-lang#48909 - RalfJung:type_alias_bounds, r=petro…
…chenkov Improve lint for type alias bounds First of all, I learned just today that I was wrong assuming that the bounds in type aliases are entirely ignored: It turns out they are used to resolve associated types in type aliases. So: ```rust type T1<U: Bound> = U::Assoc; // compiles type T2<U> = U::Assoc; // fails type T3<U> = <U as Bound>::Assoc; // "correct" way to write this, maybe? ``` I am sorry for creating this mess. This PR changes the wording of the lint accordingly. Moreover, since just removing the bound is no longer always a possible fix, I tried to detect cases like `T1` above and show a helpful message to the user: ``` warning: bounds on generic parameters are not enforced in type aliases --> $DIR/type-alias-bounds.rs:57:12 | LL | type T1<U: Bound> = U::Assoc; //~ WARN not enforced in type aliases | ^^^^^ | = help: the bound will not be checked when the type alias is used, and should be removed help: use absolute paths (i.e., <T as Trait>::Assoc) to refer to associated types in type aliases --> $DIR/type-alias-bounds.rs:57:21 | LL | type T1<U: Bound> = U::Assoc; //~ WARN not enforced in type aliases | ^^^^^^^^ ``` I am not sure if I got this entirely right. Ideally, we could provide a suggestion involving the correct trait and type name -- however, while I have access to the HIR in the lint, I do not know how to get access to the resolved name information, like which trait `Assoc` belongs to above. The lint does not even run if that resolution fails, so I assume that information is available *somewhere*... This is a follow-up for (parts of) rust-lang#48326. Also see rust-lang#21903. This changes the name of a lint, but that lint was just merged to master yesterday and has never even been on beta.
Configuration menu - View commit details
-
Copy full SHA for 7c0c7ef - Browse repository at this point
Copy the full SHA 7c0c7efView commit details -
Rollup merge of rust-lang#49028 - QuietMisdreavus:the-dark-forbidden-…
…corners-of-rustdoc, r=frewsxcv add an "unstable features" chapter to the rustdoc book There are several rustdoc features that currently are undocumented, but also don't fit with the rest of the Rustdoc Book since they're also unstable. Some of these have corresponding feature gates and chapters in the Unstable Book, but many don't, and i wanted a place to talk about them officially. Goal: talk about everything rustdoc can do that needs nightly - [x] Feature gates (extensions to the doc attribute that can be caught by the compiler) - [x] doc(cfg) - [x] doc(masked) - [x] doc(spotlight) - [x] doc(include) - [x] Command-line flags (features that require a CLI flag to use, where the flag itself is a `-Z` command or otherwise requires `-Z unstable-options` before rustdoc will accept it) - [x] markdown-before-content/markdown-after-content - [x] playground-url - [x] display-warnings - [x] crate-version - [x] linker - [x] sort-modules-by-appearance - [x] themes/theme-checker - [x] resource-suffix - [x] `-Z force-unstable-if-unmarked` - [x] Nightly-gated functionality (features that are gated by requiring a nightly build without needing a CLI flag or a feature gate to unlock) - [x] intra-links - [x] error numbers for `compile_fail` doctests
Configuration menu - View commit details
-
Copy full SHA for f74d01c - Browse repository at this point
Copy the full SHA f74d01cView commit details -
Rollup merge of rust-lang#49030 - Zoxc:misc, r=michaelwoerister
Misc changes from my parallel rustc branch r? @michaelwoerister
Configuration menu - View commit details
-
Copy full SHA for 4b31b5b - Browse repository at this point
Copy the full SHA 4b31b5bView commit details -
Rollup merge of rust-lang#49102 - glandium:decimal, r=aturon
Configuration menu - View commit details
-
Copy full SHA for db2dde9 - Browse repository at this point
Copy the full SHA db2dde9View commit details -
Rollup merge of rust-lang#49160 - estebank:issue-47457-missing-fields…
…, r=oli-obk Reduce the diagnostic spam when multiple fields are missing in pattern Fix rust-lang#47457.
Configuration menu - View commit details
-
Copy full SHA for 401a930 - Browse repository at this point
Copy the full SHA 401a930View commit details -
Rollup merge of rust-lang#49169 - sanxiyn:doc-only, r=aturon
Document only-X test header This was added in rust-lang#47487 without documentation.
Configuration menu - View commit details
-
Copy full SHA for 815171b - Browse repository at this point
Copy the full SHA 815171bView commit details -
Rollup merge of rust-lang#49262 - oli-obk:fixed_size_array_len, r=est…
…ebank Produce nice array lengths on a best effort basis fixes rust-lang#49208 r? @estebank
Configuration menu - View commit details
-
Copy full SHA for 6fd3cc5 - Browse repository at this point
Copy the full SHA 6fd3cc5View commit details -
Rollup merge of rust-lang#49272 - semarie:cat-and-grep-gnu, r=alexcri…
…chton Use GNU version of fgrep/egrep tool if available It is mostly for BSD system. Some tests (run-make/issue-35164 and run-make/cat-and-grep-sanity-check) are failing with BSD fgrep, whereas they pass with gnu version (gfgrep).
Configuration menu - View commit details
-
Copy full SHA for 3624544 - Browse repository at this point
Copy the full SHA 3624544View commit details -
Rollup merge of rust-lang#49295 - csmoe:nll_test_48238, r=alexcrichton
Add test for issue-48238 Fixes rust-lang#48238 test case made from comments in rust-lang#48238
Configuration menu - View commit details
-
Copy full SHA for d58abe7 - Browse repository at this point
Copy the full SHA d58abe7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 82bb41b - Browse repository at this point
Copy the full SHA 82bb41bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 3ebe12e - Browse repository at this point
Copy the full SHA 3ebe12eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0e6cd8b - Browse repository at this point
Copy the full SHA 0e6cd8bView commit details