Commit graph

40319 commits

Author SHA1 Message Date
Alexis Beingessner
0d37e78977 lots more felix fixes 2015-07-28 15:13:54 -07:00
Alexis Beingessner
5789106737 many many pnkfelix fixes 2015-07-28 13:20:36 -07:00
Alexis Beingessner
05bb1dbc43 OBRM for aturon 2015-07-27 16:01:22 -07:00
Alexis Beingessner
fd13bdf626 vec fixes for huonw 2015-07-27 15:03:38 -07:00
Alexis Beingessner
b53406f824 fixups for aturon 2015-07-27 14:42:04 -07:00
Alexis Beingessner
8c7111da07 fixup atomics 2015-07-26 18:19:50 -07:00
Alexis Beingessner
36a8b94464 expand lifetime splitting to show IterMut is totally safe 2015-07-26 18:12:36 -07:00
Alexis Beingessner
f54c5ad566 fix accident 2015-07-24 10:02:16 -07:00
Alexis Beingessner
3f8e029bed remove subtyping from coercions, it's something else 2015-07-20 16:18:52 -07:00
Alexis Beingessner
5f02de3c22 clarify casts are checked at compile time 2015-07-20 15:50:47 -07:00
Alexis Beingessner
14bc454770 remove redundant explanation 2015-07-20 15:36:50 -07:00
Alexis Beingessner
06ded9c04e explain phantom 2015-07-20 15:35:33 -07:00
Alexis Beingessner
0a36ea7db1 get into the weeds over GEP and allocations 2015-07-20 15:32:52 -07:00
Alexis Beingessner
7a47ffcbc7 UB is src bzns 2015-07-20 11:37:15 -07:00
Alexis Beingessner
99043dde9d mention void pointers 2015-07-20 11:36:26 -07:00
Alexis Beingessner
5f6e0abe27 clean up vec chapter of tarpl 2015-07-20 11:31:29 -07:00
Alexis Beingessner
42c2f107c1 flesh out void types 2015-07-20 11:02:45 -07:00
Alexis Beingessner
94a89e561a some conversions cleanup 2015-07-19 21:43:17 -07:00
Alexis Beingessner
13b2605ed9 fixup and cool example for checked-uninit 2015-07-19 20:48:51 -07:00
Alexis Beingessner
c97673c7b0 fix up lifetimes 2015-07-18 11:44:41 -07:00
Alexis Beingessner
b79d279418 fix typo 2015-07-18 09:10:01 -07:00
Alexis Beingessner
fc2d29450e no really I deleted you 2015-07-17 22:20:44 -07:00
Alexis Beingessner
eba459a5c2 shard out misc section on lifetimes properly 2015-07-17 22:20:11 -07:00
Alexis Beingessner
d1b899e57a update subtyping to be a bit clearer about reference variance 2015-07-17 11:46:02 -07:00
Alexis Beingessner
c5a1b87c6f properly remove moved text 2015-07-14 17:59:28 -07:00
Alexis Beingessner
700895fdd7 split out vec-zsts correctly 2015-07-14 14:41:53 -07:00
Alexis Beingessner
7aee8448ea fix all the doc tests 2015-07-14 11:07:00 -07:00
Alexis Beingessner
58f6f2d57a nits and realigning 2015-07-14 09:56:10 -07:00
Alexis Beingessner
dba548d363 fix via mdinger 2015-07-14 00:26:08 -07:00
Alexis Beingessner
e2b5f4fac4 move everything into the Rust tree 2015-07-13 23:16:33 -07:00
Alexis Beingessner
a54e64b3c4 move everything to tarpl 2015-07-13 23:14:57 -07:00
bors
dd46cf8b22 Auto merge of #26241 - SimonSapin:derefmut-for-string, r=alexcrichton
See https://github.com/rust-lang/rfcs/issues/1157
2015-07-13 23:47:06 +00:00
Simon Sapin
3226858e50 Fix tests for changes in #26241. 2015-07-13 23:28:58 +02:00
bors
2533a85be4 Auto merge of #26993 - michaelwoerister:msvc-debuginfo, r=alexcrichton
This PR will enable RUSTC to generate PDB debuginfo files when targeting the MSVC toolchain. Mind that these are not full featured PDB files -- they just contain line tables, so you can get proper backtraces and step through your code, but variable values can't be inspected. We are just levering (LLVM's current support)[http://clang.llvm.org/docs/MSVCCompatibility.html] for creating Windows debuginfo. When LLVM's support gets better, we should benefit from that too without much effort.

I also wanted to include some kind of auto test with this PR but I could not get the `rmake` tests to work properly when targeting MSVC.

EDIT:
Closes #19533
2015-07-13 20:42:55 +00:00
bors
6800538489 Auto merge of #26984 - nham:errorck-ignore-long-diag, r=brson
Currently errorck yields bogus `duplicate error code` messages when an error code occurs inside of a long diagnostic message (see https://github.com/rust-lang/rust/pull/26982), because errorck just goes line by line checking for error codes and recording them all.

A simplistic approach to fixing this is just to detect the beginning of a long diagnostic raw string literal (`r##"`) and skip lines until the end of the raw string literal is encountered. I'm not completely confident in this approach, but I think a more robust approach would be more complicated and I wanted to get feedback before pursuing that.
2015-07-13 18:42:49 +00:00
Simon Sapin
eb99f0e420 Mark some new things as unstable. 2015-07-13 16:21:43 +02:00
Simon Sapin
7469914e96 Add str::split_at_mut 2015-07-13 16:21:43 +02:00
Simon Sapin
f9005512a9 Implement IndexMut for String and str.
... matching the existing Index impls.
There is no reason not to if String implement DerefMut.

The code removed in `src/librustc/middle/effect.rs` was added in #9750
to prevent things like `s[0] = 0x80` where `s: String`,
but I belive became unnecessary when the Index(Mut) traits were introduced.
2015-07-13 16:21:43 +02:00
Simon Sapin
90d61d828f Add more tests for AsciiExt::is_ascii 2015-07-13 16:21:43 +02:00
Simon Sapin
304f545274 Add tests for AsciiExt::make_ascii_*case, including on String. 2015-07-13 16:21:43 +02:00
Simon Sapin
2d34a531f4 Implement DerefMut for String
`&mut str` is rarely useful, but it is for e.g.
`AsciiExt::make_ascii_lowercase`.
2015-07-13 16:21:43 +02:00
bors
9ff2d19c45 Auto merge of #27000 - alexcrichton:semi-after-type, r=cmr
This commit expands the follow set of the `ty` and `path` macro fragments to
include the semicolon token as well. A semicolon is already allowed after these
tokens, so it's currently a little too restrictive to not have a semicolon
allowed. For example:

    extern {
        fn foo() -> i32; // semicolon after type
    }

    fn main() {
        struct Foo;

        Foo; // semicolon after path
    }
2015-07-13 13:55:29 +00:00
bors
df39a92e22 Auto merge of #27011 - dotdash:issue-26996, r=luqmana
If we match a whole struct or tuple, the "field" for the reassignment
checker will be "None" which means that mutating any field should count
as a reassignment.

Fixes #26996.
2015-07-13 12:24:25 +00:00
Björn Steinbrink
043d7b5198 Correctly detect reassignments to the interior of matched structs/tuples
If we match a whole struct or tuple, the "field" for the reassignment
checker will be "None" which means that mutating any field should count
as a reassignment.

Fixes #26996.
2015-07-13 13:23:13 +02:00
bors
edf29a7102 Auto merge of #26999 - rick68:patch-13, r=Gankro
Reverse PR `#26944 `, symbol `#` are actually as intended.
2015-07-13 10:53:14 +00:00
bors
a16a4173c9 Auto merge of #26990 - rwz:patch-1, r=alexcrichton
The current example does not illustrate threaded behavior imo.
2015-07-13 09:15:12 +00:00
bors
5f552a5da5 Auto merge of #26981 - wthrowe:div_docs, r=Gankro
This resolves #26845.

I'm not entirely satisfied with the placement of the rounding discussion in the docs for the `Div` and `Rem` traits, but I couldn't come up with anywhere better to put it.  Suggestions are welcome.

I didn't add any discussion of rounding to the `checked_div` (or rem) or `wrapping_div` documentation because those seem to make it pretty clear that they do the same thing as `Div`.
2015-07-13 07:03:01 +00:00
bors
c044791d80 Auto merge of #26910 - nrc:ice-lang-item, r=@huonw 2015-07-13 05:32:33 +00:00
bors
07be6299d8 Auto merge of #26947 - nagisa:unicode-escape-error, r=nrc
Inspired by the now-mysteriously-closed https://github.com/rust-lang/rust/pull/26782.

This PR introduces better error messages when unicode escapes have invalid format (e.g. `\uFFFF`). It also makes rustc always tell the user that escape may not be used in byte-strings and bytes and fixes some spans to not include unecessary characters and include escape backslash in some others.
2015-07-13 04:00:49 +00:00
Nick Hamann
4630fc75a7 Add comments. 2015-07-12 21:19:19 -05:00