summary refs log tree commit diff
AgeCommit message (Collapse)AuthorLines
2016-05-20Auto merge of #33318 - alexcrichton:hashmap-seed, r=aturonbors-2/+27
std: Cache HashMap keys in TLS This is a rebase and extension of #31356 where we not only cache the keys in thread local storage but we also bump each key every time a new `HashMap` is created. This should give us a nice speed bost in creating hash maps along with retaining the property that all maps have a nondeterministic iteration order. Closes #27243
2016-05-20Auto merge of #33378 - oli-obk:fix/registry_args, r=Manishearthbors-3/+6
fix Registry::args for plugins loaded with --extra-plugins r? @Manishearth
2016-05-20Clarify docs for sort(&mut self)Stefan Schindler-7/+4
2016-05-20Rollup merge of #33745 - postmodern:patch-1, r=steveklabnikGuillaume Gomez-2/+2
Clarify wording in `transmute` example * Change "four eights" to "four u8s" * Change "a 32" to "a u32"
2016-05-20Rollup merge of #33739 - GuillaumeGomez:error-code-tests, r=ManishearthGuillaume Gomez-0/+284
Add new error code tests r? @steveklabnik
2016-05-20Rollup merge of #33734 - luqmana:33387-mir_fat_ptr_coerce, r=arielb1Guillaume Gomez-4/+68
[MIR] Add PointerCast for Unsize casts of fat pointers. Fixes #33387. r? @eddyb
2016-05-20Rollup merge of #33683 - sanxiyn:paren-span, r=nikomatsakisGuillaume Gomez-5/+40
Preserve span when lowering ExprKind::Paren Fix #33681.
2016-05-20Rollup merge of #33676 - rkruppe:e0509-exact-words, r=sanxiynGuillaume Gomez-11/+13
Reword the short diagnostic for E0509 Saying that a type *implements* a trait is much more idiomatic than saying it *defines* the trait.
2016-05-20Rollup merge of #33668 - dns2utf8:catch_thread, r=steveklabnikGuillaume Gomez-3/+8
Catch thread in example Since this is an example, the code will be copied by many people and should be over correct. ?r @steveklabnik
2016-05-20Update simd syntaxggomez-4/+4
2016-05-20Update testsManish Goregaokar-21/+36
2016-05-20Auto merge of #33729 - alexcrichton:patch-libbacktrace, r=sfacklerbors-4/+31
std: Backport a libbacktrace soundness fix This is a backport of gcc-mirror/gcc@047a1c2f which is a soundness fix for when a backtrace is generated on executables that do not have debug information.
2016-05-20Auto merge of #33553 - alexcrichton:cdylibs, r=brsonbors-94/+283
rustc: Add a new crate type, cdylib This commit is an implementation of [RFC 1510] which adds a new crate type, `cdylib`, to the compiler. This new crate type differs from the existing `dylib` crate type in a few key ways: * No metadata is present in the final artifact * Symbol visibility rules are the same as executables, that is only reachable `extern` functions are visible symbols * LTO is allowed * All libraries are always linked statically This commit is relatively simple by just plubming the compiler with another crate type which takes different branches here and there. The only major change is an implementation of the `Linker::export_symbols` function on Unix which now actually does something. This helps restrict the public symbols from a cdylib on Unix. With this PR a "hello world" `cdylib` is 7.2K while the same `dylib` is 2.4MB, which is some nice size savings! [RFC 1510]: https://github.com/rust-lang/rfcs/pull/1510 Closes #33132
2016-05-19Mention that the panic hook will always runSteven Fackler-5/+6
2016-05-19Auto merge of #33358 - michaelwoerister:debuginfo-methods, r=eddybbors-4/+46
debuginfo: Make DW_TAG_subroutine DIEs for inherent methods children of their self-type DIEs. Fixes https://github.com/rust-lang/rust/issues/33192
2016-05-19book: ownership: fix typoDaniel Campoverde [alx741]-1/+1
2016-05-19Grammar changePostmodern-3/+4
2016-05-19Keep line-width within 80 columnsPostmodern-2/+3
2016-05-19Clarify the English translation of `?Sized`Postmodern-4/+3
* It wasn't clear whether `?Sized` meant "not `Sized`" or "`Sized` or not `Sized`". According to #rust IRC, it does indeed mean "`Sized` or not `Sized`". * Use the same language as [Trait std::marker::Sized](https://doc.rust-lang.org/std/marker/trait.Sized.html) about how `Sized` is implicitly bound.
2016-05-19std: Cache HashMap keys in TLSAlex Crichton-2/+27
This is a rebase and extension of #31356 where we cache the keys in thread local storage. This should give us a nice speed bost in creating hash maps along with mostly retaining the property that all maps have a nondeterministic iteration order. Closes #27243
2016-05-19Auto merge of #33103 - ranma42:escape-unicode-last, r=alexcrichtonbors-0/+45
Implement `last` for `EscapeUnicode` The implementation is quite trivial as the last character is always `'{'`. As a side-effect it also improves the implementation of `last` for `EscapeUnicode`. Part of #24214, split from #31049. Maybe this (and the other changes that I will split from #31049) should wait for a test like `ed_iterator_specializations` to be added. Would it be sufficient to do the same for each possible escape length?
2016-05-19debuginfo: Make DW_TAG_subroutine DIEs for inherent methods children of ↵Michael Woerister-4/+46
their self-type DIEs.
2016-05-19Mark the metadata symbol as reachable to fix OSX not finding dylibs.Eduard Burtescu-3/+11
2016-05-19rustc: Add a new crate type, cdylibAlex Crichton-91/+272
This commit is an implementation of [RFC 1510] which adds a new crate type, `cdylib`, to the compiler. This new crate type differs from the existing `dylib` crate type in a few key ways: * No metadata is present in the final artifact * Symbol visibility rules are the same as executables, that is only reachable `extern` functions are visible symbols * LTO is allowed * All libraries are always linked statically This commit is relatively simple by just plubming the compiler with another crate type which takes different branches here and there. The only major change is an implementation of the `Linker::export_symbols` function on Unix which now actually does something. This helps restrict the public symbols from a cdylib on Unix. With this PR a "hello world" `cdylib` is 7.2K while the same `dylib` is 2.4MB, which is some nice size savings! [RFC 1510]: https://github.com/rust-lang/rfcs/pull/1510 Closes #33132
2016-05-19Catch thread in exampleStefan Schindler-3/+8
- Consume result of thread join() - Add link to threading model
2016-05-19Clarify wording in `transmute` examplePostmodern-2/+2
* Change "four eights" to "four u8s" * Change "a 32" to "a u32"
2016-05-19std: Update libbacktrace for a soundness fixAlex Crichton-4/+31
This updates the vendor'd libbacktrace source to tpick up gcc-mirror/gcc@047a1c2f which is a soundness fix for when a backtrace is generated on executables that do not have debug information.
2016-05-19Book: small improvement to a table to make it clearerSteven Burns-2/+2
2016-05-19Auto merge of #33742 - Manishearth:rollup, r=Manishearthbors-79/+220
Rollup of 10 pull requests - Successful merges: #33353, #33611, #33696, #33698, #33705, #33708, #33712, #33720, #33721, #33730 - Failed merges:
2016-05-19Rollup merge of #33730 - jseyfried:fix_macro_backtrace_diagnostics, ↵Manish Goregaokar-1/+1
r=nikomatsakis Fix macro expansion backtrace diagnostics Fixes #33704. r? @nikomatsakis
2016-05-19Rollup merge of #33721 - royalstream:royalstream-doc-highlights, r=ManishearthManish Goregaokar-38/+38
Rust syntax coloring for some ignore, should-panic and no-run snippets. In the book, some code blocks were missing the `rust` specifier which is needed for them to highlight correctly.
2016-05-19Rollup merge of #33720 - mark-summerfield:patch-1, r=steveklabnikManish Goregaokar-0/+2
Clarified that `let(mut x, y) =` only makes x mutable, not y Closes #33716
2016-05-19Rollup merge of #33712 - jseyfried:fix_expanded_expr_span_bug, r=nrcManish Goregaokar-28/+24
Fix bug in macro expression spans Fix a bug in macro expression spans. r? @nrc
2016-05-19Rollup merge of #33708 - nham:zero-elided-lifetimes, r=sanxiynManish Goregaokar-9/+48
Only print parameters with elided lifetimes in elision error messages. When displaying the function parameters for a lifetime elision error message, this changes it to first filter out the parameters that don't have elided lifetimes. Fixes #30255.
2016-05-19Rollup merge of #33705 - lqd:rustdoc-version-tooltip, r=GuillaumeGomezManish Goregaokar-2/+3
rustdoc: Make the #[stable(since)] version attribute clearer with a tooltip Rustdoc's new 'since' version placement only shows the version number in which the item was marked stable. This gains space but might make the meaning of this version string less clear in the docs, so I tried to bring some explicitness in a tooltip.
2016-05-19Rollup merge of #33698 - alexcrichton:update-libc, r=japaricManish Goregaokar-0/+0
std: Update libc submodule Brings in a fix where `-lutil` is no longer passed for musl targets, lifting the need for a musl toolchain to be installed again. Closes #33608
2016-05-19Rollup merge of #33696 - nham:add-test-21225, r=luqmanaManish Goregaokar-0/+30
Add regression tests for error message when using enum variant as a type I'm guessing these were actually fixed with PR #27085. Closes #21225 Closes #19197
2016-05-19Rollup merge of #33611 - vvanders:master, r=steveklabnikManish Goregaokar-0/+47
Add a note about Higher-Ranked Trait Bounds in docs on Closures. I hit a snag with lifetimes a few days ago and it wasn't until @birkenfeld pointed out Higher-Ranked Trait Bounds that I was able to solve the issue involving lifetimes on closure traits. This adds a small section in the book so that other users can find it. r? @steveklabnik
2016-05-19Rollup merge of #33353 - timothy-mcroy:E0502, r=sanxiynManish Goregaokar-1/+27
Add error explanation for E0502 I am questioning the order of presentation on the suggested code fixes, but I'm not sure what would be best. Thoughts? r? @GuillaumeGomez
2016-05-19Auto merge of #33702 - crimsun:pr33678, r=alexcrichtonbors-4/+3
Resolved rustdoc crash (#33678) by aborting instead of unwrapping. Also removed Option use and comment to match. Fixes https://github.com/rust-lang/rust/issues/33678
2016-05-19Add new error code testsggomez-0/+284
2016-05-19Make the #[stable(since)] version attribute clearer with a tooltipRémy Rakic-2/+3
2016-05-19Reword the short diagnostic for E0509Robin Kruppe-11/+13
Saying that a type *implements* a trait is much more idiomatic than saying it *defines* the trait.
2016-05-19Auto merge of #33694 - arielb1:fuzzy-on-unimplemented, r=nikomatsakisbors-46/+165
implement fuzzy matching in on_unimplemented Fixes #31062 r? @nikomatsakis
2016-05-19[MIR] Add PointerCast for Unsize casts of fat pointers.Luqman Aden-4/+68
2016-05-18Auto merge of #33688 - jonathandturner:fix_old_school, r=nikomatsakisbors-68/+125
Fix for old school error issues, improvements to new school This PR: * Fixes some old school error issues, specifically #33559, #33543, #33366 * Improves wording borrowck errors with match patterns * De-emphasize multi-line spans, so we don't color the single source character when we're trying to say "span starts here" * Rollup of #33392 (which should help fix #33390) r? @nikomatsakis
2016-05-19Fix macro expansion backtrace diagnosticsJeffrey Seyfried-1/+1
2016-05-18rustbuild: Pass -O to tests based on configurationAlex Crichton-2/+25
Currently rustbuild isn't detecting the `-O` flag for tests via the `--disable-optimize-tests` or not command line flag to `./configure`, and this commit patches up the support to pass `-O` by default.
2016-05-18rustbuild: Add missing test suitesAlex Crichton-16/+57
After a comparison with the current set of tests run it was discovered that rustbuild accidentally wasn't running a few test suites. This commit adds back a few more test suites: * rfail-full * pretty-rpass * pretty-rpass-full * pretty-rpass-valgrind * pretty-rfail * pretty-rfail-full * librustc_bitflags unit tests
2016-05-18Auto merge of #33686 - GuillaumeGomez:error-code-tests, r=steveklabnikbors-0/+121
Add new error code tests r? @steveklabnik