Commit Graph

41387 Commits

Author SHA1 Message Date
bors
a52182ffde Auto merge of #24420 - pnkfelix:oflo-api, r=alexcrichton
Fill in missing parts of Integer overflow API 

See todo list at #22020
2015-04-17 00:28:48 +00:00
Felix S. Klock II
4f67850964 Fix test for 32-bit targets.
(The cast from the 64-bit value to isize was using the lower 32-bits,
which led to it being treated as a large positive value rather than a
smallish negative one. The fix was to use the same bits for the upper-
and lower- 32 bits.)
2015-04-17 02:03:38 +02:00
Nelo Onyiah
d04b2047a7 Update hello-cargo.md 2015-04-17 00:02:17 +01:00
kwantam
29d1252e4d deprecate Unicode functions that will be moved to crates.io
This patch
1. renames libunicode to librustc_unicode,
2. deprecates several pieces of libunicode (see below), and
3. removes references to deprecated functions from
   librustc_driver and libsyntax. This may change pretty-printed
   output from these modules in cases involving wide or combining
   characters used in filenames, identifiers, etc.

The following functions are marked deprecated:

1. char.width() and str.width():
   --> use unicode-width crate

2. str.graphemes() and str.grapheme_indices():
   --> use unicode-segmentation crate

3. str.nfd_chars(), str.nfkd_chars(), str.nfc_chars(), str.nfkc_chars(),
   char.compose(), char.decompose_canonical(), char.decompose_compatible(),
   char.canonical_combining_class():
   --> use unicode-normalization crate
2015-04-16 17:03:05 -04:00
bors
1014ac44f6 Auto merge of #24396 - alexcrichton:rustdoc2, r=aturon
A few final improvements to rustdoc for 1.0:

* Improve how rustdoc handles stability
* Fix cross-crate macro source links
* Improve experience of types inheriting methods through `Deref`

Some more details can be found in the commits.

[Preview](http://people.mozilla.org/~acrichton/doc/std/)
2015-04-16 20:34:55 +00:00
Alex Crichton
71c1b5b704 rustdoc: Inline methods inhereted through Deref
Whenever a type implements Deref, rustdoc will now add a section to the "methods
available" sections for "Methods from Deref<Target=Foo>", listing all the
inherent methods of the type `Foo`.

Closes #19190
2015-04-16 13:28:15 -07:00
Florian Hartwig
6ac836f229 Fix broken links in the docs 2015-04-16 22:15:36 +02:00
Steve Klabnik
dabc4864c0 Descripe tuple indexing in TRPL
FIxes #23962
2015-04-16 16:12:47 -04:00
Steve Klabnik
c776d02d5d Make note of documentation tests and binaries
Fixes #24228
2015-04-16 15:55:10 -04:00
Steve Klabnik
e6f1a4db5f remove example usage of from_str in error docs
Fixes #24185
2015-04-16 15:50:24 -04:00
Mathijs van de Nes
6de33c22e3 Omit 'obsolete' note for warning if -Awarning 2015-04-16 19:53:19 +02:00
Alex Crichton
8fb31f75c9 rustdoc: Fix cross-crate macro source links
The source filename for cross crate macros isn't quite right so the normal
generated links are invalid.

Closes #21311
2015-04-16 09:44:33 -07:00
Alex Crichton
0a46933c4d rustdoc: Overhaul stability displays
This commit is an overhaul to how rustdoc deals with stability of the standard
library. The handling has all been revisited with respect to Rust's current
approach to stability in terms of implementation as well as the state of the
standard library today. The high level changes made were:

* Stable items now have no marker by default
* Color-based small stability markers have been removed
* Module listings now fade out unstable/deprecated items slightly
* Trait methods have a separate background color based on stability and also
  list the reason that they are unstable.
* `impl` blocks with stability no longer render at all. This may be re-added
  once the compiler recognizes stability on `impl` blocks.
* `impl` blocks no longer have stability of the methods implemente indicated
* The stability summary has been removed

Closes #15468
Closes #21674
Closes #24201
2015-04-16 09:44:33 -07:00
Corey Farwell
1c6ccd96ac Indicate None is code-like in doc comments 2015-04-16 11:53:17 -04:00
bors
e9080ec39d Auto merge of #24181 - jgallagher:aarch64-hfa, r=pnkfelix
I doubt this PR is ready to merge as-is, for a couple reasons:

* There are no tests for this change. I'm not sure how to add tests for this change, as it modifies the C ABI for a cross-compilation target. Anecdotally, I have an iOS library I've been working on, and before this change, it crashes running on an arm64 device due to bad calling conventions (a simplified example is in #24154), and after this change, it runs correctly.
* This is my first foray into LLVM. I did my best to reimplement what Clang does for AArch64 codegen (https://github.com/llvm-mirror/clang/blob/master/lib/CodeGen/TargetInfo.cpp), particularly in `ABIInfo::isHomogeneousAggregate`, `AArch64ABIInfo::isHomogeneousAggregateBaseType`, and `AArch64ABIInfo::isHomogeneousAggregateSmallEnough`, but I'm not confident I got a complete translation, particularly because Clang includes a lot of checks that I don't believe are necessary for rustc.

Fixes #24154.
2015-04-16 15:33:54 +00:00
Philip Munksgaard
4436ade8ad Add Debug to MethodCallee
This fixes #24497
2015-04-16 16:00:47 +02:00
bors
5576b0558c Auto merge of #24448 - alexcrichton:issue-24445, r=huonw
One of the parameters to the magical "register a thread-local destructor"
function is called `__dso_handle` and largely just passed along (this seems to
be what other implementations do). Currently we pass the *value* of this symbol,
but apparently the correct piece of information to pass is the *address* of the
symbol.

In a PIE binary the symbol actually contains an address to itself which is why
we've gotten away with what we're doing as long as we have. In a non-PIE binary
the symbol contains the address `NULL`, causing a segfault in the runtime
library if it keeps going.

Closes #24445
2015-04-16 13:29:52 +00:00
Florian Hartwig
f20497ca85 Fix some broken links in the book 2015-04-16 15:13:47 +02:00
Thomas Jespersen
c0139cafcd Remove & from redirected output
This seems to fix the test
2015-04-16 14:57:31 +02:00
Aram Visser
d40e1cbfd8 Fixed typo in hash_map::Entry documentation 2015-04-16 19:21:11 +07:00
bors
ac2b6f6066 Auto merge of #24437 - fhahn:issue-24434, r=alexcrichton
closes #24434 

This PR changes executes `syntax::config::strip_unconfigured_items` before `syntax::feature_gate::check_crate_macros(sess.codemap()`. As far as I know, `strip_unconfigured_items` should be independent of `check_crate_macros`.
2015-04-16 11:27:52 +00:00
Mathijs van de Nes
61ad9fe1a3 Use BTreeMap in build_sidebar_items
This ensures that later when generating HTML, the JSON will be sorted aswell.
We now have a deterministic build of sidebar-items.js
2015-04-16 12:14:45 +02:00
Ting-Yu Lin
7d56fb2149 Fix link id for stackoverflow
The document does not display properly if the link id contains a space.
2015-04-16 17:42:03 +08:00
bors
8f209d5a3e Auto merge of #24423 - tbelaire:include_bytes, r=alexcrichton
This is a little bit tricky, since with include_str!, we know that we
are including utf-8 content, so it's safe to store the source as a
String in a FileMap. We don't know that for include_bytes!, but I don't
think we actually need to track the contents anyways, so I'm passing "".

new_filemap does check for the zero length content, and it should be
reasonable, howeven I'm not sure if it would be better to pass None
instead of Some(Rc::new("")) as the src component of a FileMap.

Fixes bug #24348
2015-04-16 08:28:27 +00:00
Ulrik Sverdrup
709b5e8c89 Fix Debug impl for RangeFull
The Debug impl was using quotes, which was inconsistent:

    => (.., 1.., 2..3, ..4)
    ("..", 1.., 2..3, ..4)

Fix to use just ..
2015-04-16 10:02:22 +02:00
Luke Gallagher
c1f6d6a136 Fix some documentation typos 2015-04-16 17:18:29 +10:00
bors
798fa2276c Auto merge of #24306 - l0kod:libc-noctty, r=alexcrichton
cf. open(2): If the open file refers to a terminal device it will not become the process's controlling terminal even if the process does not have one.
2015-04-16 05:27:20 +00:00
bors
288809c8f3 Auto merge of #23682 - tamird:DRY-is-empty, r=alexcrichton
r? @alexcrichton
2015-04-16 03:22:21 +00:00
Erick Tryzelaar
ed437cd8fc syntax: Clean up the indentation for #[derive(Eq)] 2015-04-15 19:49:25 -07:00
Erick Tryzelaar
01e56942a0 test: PadOnLeft was never used 2015-04-15 19:49:25 -07:00
Erick Tryzelaar
9edc7deb8d syntax: Change deriving methods to take a &mut FnMut(P<Item>)
This allows #[derive(...)]` to create more than one impl
2015-04-15 19:49:25 -07:00
Erick Tryzelaar
6557f4b269 syntax: Rename deriving/cmp/* to match their current names 2015-04-15 19:48:09 -07:00
bors
e40449e0d5 Auto merge of #24485 - brson:is, r=alexcrichton
It was an oversight that this was not done in the great int upheaval.

[breaking-change]
2015-04-16 01:17:04 +00:00
Brian Anderson
5a3a599428 Forbid is/us suffixes. Fixes #22496
It was an oversight that this was not done in the great int upheaval.

[breaking-change]
2015-04-15 16:13:26 -07:00
bors
abf0548b5c Auto merge of #24481 - steveklabnik:rollup, r=steveklabnik
- Successful merges: #24425, #24435, #24438, #24440, #24449, #24457, #24460, #24465, #24467, #24468, #24471, #24476, #24480
- Failed merges:
2015-04-15 23:09:02 +00:00
Steve Klabnik
7644ef8c2b Rollup merge of #24480 - achanda:move_test, r=alexcrichton
- Also move common functions to test.rs
- Leaves out Socket address related tests in addr.rs
2015-04-15 17:26:09 -04:00
Steve Klabnik
438011dc48 Rollup merge of #24476 - brettcannon:patch-3, r=steveklabnik
"as an library" -> "as a library"
2015-04-15 17:26:09 -04:00
Steve Klabnik
ff7c991305 Rollup merge of #24471 - andrewseidl:master, r=alexcrichton
Use external instead of relative link for rustbyexample.com in generated `src/doc/index.md`. (http://doc.rust-lang.org/nightly/index.html)

Previous: http://doc.rust-lang.org/nightly/rustbyexample.com
Desired: http://rustbyexample.com/
2015-04-15 17:26:09 -04:00
Steve Klabnik
68648fe0da Rollup merge of #24468 - brettcannon:patch-2, r=alexcrichton
Link spanned a line and was missing the actual link target.
2015-04-15 17:26:08 -04:00
Steve Klabnik
f4647ac3b7 Rollup merge of #24467 - brettcannon:patch-1, r=alexcrichton
Had a newline in middle of a link, causing the link text to be shown with `[]`.
2015-04-15 17:26:08 -04:00
Steve Klabnik
df54719be0 Rollup merge of #24465 - steveklabnik:intoiteratordocfix, r=alexcrichton 2015-04-15 17:26:08 -04:00
Steve Klabnik
111404fc21 Rollup merge of #24460 - bytewiseand:master, r=alexcrichton
Closes #24197
Closes #24375

These ICEs are fixed on nightly.
2015-04-15 17:26:08 -04:00
Steve Klabnik
79e5c0051c Rollup merge of #24457 - Ms2ger:more-typos, r=alexcrichton 2015-04-15 17:26:07 -04:00
Steve Klabnik
b5378f452e Rollup merge of #24449 - richo:typo, r=alexcrichton
Spotted a typo, opened a tiny PR.
2015-04-15 17:26:07 -04:00
Steve Klabnik
68a9e6a933 Rollup merge of #24440 - nham:improve_enumerate_doc, r=alexcrichton
I found that the current description of `enumerate()` doesn't actually tell you what, specifically, the method does, and you have to look at the example to figure it out. Here's a description that I think is better.
2015-04-15 17:26:07 -04:00
Steve Klabnik
63d524d4ab Rollup merge of #24438 - nrc:tuple-span, r=sfackler 2015-04-15 17:26:07 -04:00
Steve Klabnik
71156035cc Rollup merge of #24435 - killercup:patch-9, r=steveklabnik
The link works on the `std/ptr/index.html` docs page, but not the `std/primitive.pointer.html` page. Instead of leaving it half-broken, it is removed.

I tried fixing this in #24432, but @alexcrichton mentioned that this doc string was used in two places (with different base paths unfortunately).

r? @alexcrichton
2015-04-15 17:26:07 -04:00
Steve Klabnik
031619f5af Rollup merge of #24425 - dhuseby:bitrig_fixing_tests_3, r=alexcrichton
the code block in the no-stdlib.md file caused test failure on bitrig and openbsd.

Closes #24108
2015-04-15 17:26:06 -04:00
bors
07f807d01f Auto merge of #24330 - pnkfelix:issue-24267, r=nikomatsakis
Extend rustc::middle::dataflow to allow filtering kills from flow-exits.

Fix borrowck analysis so that it will not treat a break that pops through an assignment
```rust
x = { ... break; ... }
```
as a kill of the "moved-out" bit for `x`.

Fix #24267.

[breaking-change], but really, its only breaking code that was already buggy.
2015-04-15 21:05:16 +00:00
Abhishek Chanda
63e5848cc6 Move IP related tests to ip.rs
- Also move common functions to test.rs
- Leaves out Socket address related tests in addr.rs
2015-04-15 13:53:10 -07:00