Commit Graph

41319 Commits

Author SHA1 Message Date
Felix S. Klock II
77bf827968 Regression test. 2015-04-15 18:16:56 +02:00
Felix S. Klock II
1702098e6f Dataflow changes and associated borrowck fix.
Revise rustc::middle::dataflow: one must select kill-kind when calling
add_kill. The current kill-kinds are (1.) kills associated with
ends-of-scopes and (2.) kills associated with the actual action of the
expression/pattern.

Then, use this to fix borrowck analysis so that it will not treat a
break that pops through an assignment `x = { ... break; ... }` as a
kill of the "moved-out" bit for `x`.

Fix #24267.

(incorporated review feedback.)
2015-04-15 18:16:40 +02:00
Alex Crichton
3e57c6c3ba std: Fix thread_local! in non-PIE binaries
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-15 09:14:48 -07:00
Steve Klabnik
e7e7c0fc85 Fix link in intoiterator docs 2015-04-15 11:43:43 -04:00
Theo Belaire
e4b3faca51 Added a test for include_bytes! dep info
This tests that both include_str! and include_bytes!  mark their input
file as a dependancy, and it's correctly outputted when you run
`rustc --emit dep-info`.
2015-04-15 10:40:04 -04:00
Andreas Martens
14f2dce532 Add tests for "ident only path should have been covered"-ICE 2015-04-15 14:18:47 +02:00
Ms2ger
9a5a47eddc Fix some typos. 2015-04-15 13:37:55 +02:00
Adolfo Ochagavía
9891ea74d6 Implement traits for parser error structs
Implement `Debug`, `Display` and `Error` for `FatalError` and `ExplicitBug`
2015-04-15 11:17:58 +02:00
bors
a691f1eefe Auto merge of #24426 - alexcrichton:windows-pipes, r=aturon
This commit removes the last remnants of file descriptors from the Windows
implementation of `std::sys` by using `CreatePipe` to create anonymous pipes
instead of the `pipe` shim provided in msvcrt.
2015-04-15 08:21:43 +00:00
Tobias Bucher
53b7a06faf Remove one allocation for the file path in file opening
Fixes #22190.
2015-04-15 09:52:08 +02:00
Richo Healey
cf43761de4 rustc: fix a typo in letter to rustc 2015-04-15 00:07:25 -07:00
bors
af1c39cbd9 Auto merge of #24211 - alexcrichton:windows-wsa-flag-overlapped, r=aturon
This commit modifies the socket creation functions on windows to always specify
the `WSA_FLAG_OVERLAPPED` and `WSA_FLAG_NO_HANDLE_INHERIT` flags by default. The
overlapped flag enables IOCP APIs on Windows to be used with the socket at no
cost, enabling better interoperation with external libraries. The no handle
inherit flag mirrors the upcoming change to Unix to set CLOEXEC by default for
all handles.

Closes #24206
2015-04-15 06:18:51 +00:00
bors
c7734429ea Auto merge of #24431 - ruud-v-a:explain, r=alexcrichton
This resolves part of #24407.
2015-04-15 04:14:50 +00:00
Tamir Duberstein
c55ae1dc30 Fill in missing implementation 2015-04-14 20:26:04 -07:00
Tamir Duberstein
10f15e72e6 Negative case of len() -> is_empty()
`s/([^\(\s]+\.)len\(\) [(?:!=)>] 0/!$1is_empty()/g`
2015-04-14 20:26:03 -07:00
Tamir Duberstein
29ac04402d Positive case of len() -> is_empty()
`s/(?<!\{ self)(?<=\.)len\(\) == 0/is_empty()/g`
2015-04-14 20:26:03 -07:00
bors
16e1fcead1 Auto merge of #24433 - alexcrichton:rollup, r=alexcrichton 2015-04-15 01:05:03 +00:00
Alex Crichton
e053571df2 Test fixes and rebase conflicts, round 2 2015-04-14 17:40:37 -07:00
Nick Cameron
f37365ea92 Fix the span for tuple expressions 2015-04-15 11:20:17 +12:00
Thomas Jespersen
5e1505f823 Remove -o flag from build command
It generates a warning that --outdir argument is ignored, which is
captured and spoils the output

Also ensure that test output is captured in a different file than the
expected output file
2015-04-14 23:43:09 +02:00
Florian Hahn
7350ce8439 Strip configuration before checking feature gates of macros
closes #24434
2015-04-14 23:39:45 +02:00
Florian Hahn
4f3d400b3d Remove superfluous the from custom_attribute feature gate message 2015-04-14 23:27:16 +02:00
Pascal Hertleif
cbe9a1a6f4 Remove Incorrect Link from std::ptr::null Docs
The link works on the std::ptr docs page, but not the primitive.ptr.html page.
Instead of leaving it half-broken, it is removed.
2015-04-14 23:22:37 +02:00
Alex Crichton
d3da5a7e9b Merge remote-tracking branch 'origin/master' into rollup
Conflicts:
	src/librustc/middle/stability.rs
2015-04-14 14:13:42 -07:00
Alex Crichton
5e07329306 std: Remove final usage of fds from Windows
This commit removes the last remnants of file descriptors from the Windows
implementation of `std::sys` by using `CreatePipe` to create anonymous pipes
instead of the `pipe` shim provided in msvcrt.
2015-04-14 13:50:45 -07:00
Alex Crichton
30425bfe54 Test fixes and rebase conflicts 2015-04-14 13:50:03 -07:00
Thomas Jespersen
35b49fe206 Fix: sess.opt should have been sess.opts 2015-04-14 22:18:24 +02:00
bors
8415fa2787 Auto merge of #24399 - brson:stab, r=nrc 2015-04-14 18:59:26 +00:00
Dave Huseby
6fc138136d disabling a test for bitrig and openbsd 2015-04-14 11:21:33 -07:00
Brian Anderson
22a9f668af Make use of the stability attributes issue a deprecation warning. #22830 2015-04-14 11:11:13 -07:00
Ruud van Asseldonk
33dca5e3ad rustc: Add long diagnostics for E0165 2015-04-14 20:11:04 +02:00
Alex Crichton
433f0e8d1f std: Set overlap/noinherit flags on windows sockets
This commit modifies the socket creation functions on windows to always specify
the `WSA_FLAG_OVERLAPPED` and `WSA_FLAG_NO_HANDLE_INHERIT` flags by default. The
overlapped flag enables IOCP APIs on Windows to be used with the socket at no
cost, enabling better interoperation with external libraries. The no handle
inherit flag mirrors the upcoming change to Unix to set CLOEXEC by default for
all handles.

Closes #24206
2015-04-14 11:08:26 -07:00
Ruud van Asseldonk
c45eacdbc6 rustc: Add long diagnostics for E0162 2015-04-14 20:00:17 +02:00
Alex Crichton
b9d9a376ea rollup merge of #24385: aturon/unstable-scoped
Conflicts:
	src/libstd/thread/mod.rs
	src/test/bench/shootout-mandelbrot.rs
	src/test/bench/shootout-reverse-complement.rs
	src/test/run-pass/capturing-logging.rs
	src/test/run-pass/issue-9396.rs
	src/test/run-pass/tcp-accept-stress.rs
	src/test/run-pass/tcp-connect-timeouts.rs
	src/test/run-pass/tempfile.rs
2015-04-14 10:59:55 -07:00
Alex Crichton
ae7959d298 rollup merge of #24377: apasel422/docs
Conflicts:
	src/libstd/net/ip.rs
	src/libstd/sys/unix/fs.rs
	src/libstd/sys/unix/mod.rs
	src/libstd/sys/windows/mod.rs
2015-04-14 10:56:57 -07:00
Alex Crichton
7913f5659d rollup merge of #24401: fenduru/patch-2
Not sure if `From<Error>` is the correct way to reference that trait (maybe `From<E: Error>`?)

r? @steveklabnik
2015-04-14 10:56:00 -07:00
Alex Crichton
33733b786f rollup merge of #24399: brson/stab 2015-04-14 10:55:59 -07:00
Alex Crichton
84e4a724dc rollup merge of #24398: steveklabnik/thanks_mdinger
The two-step command left off the nightly flag :frown:

Thanks @mdinger
2015-04-14 10:55:58 -07:00
Alex Crichton
cf53ae03da rollup merge of #24394: rundrop1/patch-1
Feel silly because it's just one thing but it was bothering me that the documentation tells you what you're not going to learn now instead of linking to the item in question.  Am total noob pls assist, where is power button. :)
2015-04-14 10:55:57 -07:00
Alex Crichton
ecbbbfa258 rollup merge of #24393: steveklabnik/rbe
It's no longer a community based project.

Also, Rust for Rubyists is deprecated at this point, so we shouldn't
link to it anymore.
2015-04-14 10:55:56 -07:00
Alex Crichton
d7ff4f5195 rollup merge of #24391: nrc/visit-vis 2015-04-14 10:55:55 -07:00
Alex Crichton
d10be64e34 rollup merge of #24386: nagisa/rte-fix
r? @steveklabnik
2015-04-14 10:55:54 -07:00
Alex Crichton
52067fd58f rollup merge of #24381: erickt/cleanup
Just some minor patches I've been sitting on.
2015-04-14 10:55:53 -07:00
Alex Crichton
38c9e0f4bc rollup merge of #24380: arielb1/no-enum-suggest
Fixes #24365
2015-04-14 10:55:52 -07:00
Alex Crichton
2795811f92 rollup merge of #24379: rkruppe/fmt-negative-zero
Fixes #20596 by making `Debug` render negative zero with a `-` without affecting the behavior of `Display`.

While I was at it, I also removed some dead code from `float_to_str_bytes_common` (the one from `libcore/fmt/float.rs`, not the function of the same name in `libstd/num/strconv.rs`). It had support for different bases, and for negative numbers, but the function is internal to core and the couple places that call it (all in `libcore/fmt/mod.rs`) never use those features: They pass in `num.abs()` and base 10.
2015-04-14 10:55:51 -07:00
Alex Crichton
263314e569 rollup merge of #24376: lambdaburrito/master
Values for `_SC_*` are not the same value between `macos` and `linux` so I've added specific target constants for Mac OS X and added `_SC_NPROCESSORS_ONLN` for `linux` and `macos`.

Closes #24374
2015-04-14 10:55:48 -07:00
Alex Crichton
c24e55b13e rollup merge of #24371: dotdash/24353
Fixes #24353
2015-04-14 10:55:47 -07:00
Alex Crichton
db79ce0c9f rollup merge of #24368: kgv/fix
Remove arity link from enums.md

r? @steveklabnik
2015-04-14 10:55:46 -07:00
Alex Crichton
83d79c6f4c rollup merge of #24350: tbelaire/cstring-doc-from-vec
It looks like `from_vec` was subsumed by new at some point,
but the documentation still refers to it as `from_vec`.

This updates the documentation for `from_vec_unchecked`
so that it properly says that it's the unchecked version of `new`.

Also, from_vec_unchecked requires a actual Vec<u8> while
new can take anything that is Into<Vec<u8>>, so I also
mention that in the documentation.

Since this is documentation:
r? @steveklabnik
2015-04-14 10:55:45 -07:00
Alex Crichton
9f7b6cbe96 rollup merge of #24343: achanda/global_ip
- Adds two more functions for broadcast address and special
  address classes reserved for documentation
- Modifies the globally routable IP check to include these
  new functions

Fixes #24314
2015-04-14 10:55:45 -07:00