Skip to content

Commit 8402836

Browse files
committed
---
yaml --- r: 163184 b: refs/heads/snap-stage3 c: 21d12c0 h: refs/heads/master v: v3
1 parent 9750d39 commit 8402836

File tree

5 files changed

+89
-15
lines changed

5 files changed

+89
-15
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
refs/heads/master: 9146a919b616e39e528e4d7100d16eef52f1f852
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: 444a759b84573a5a4cbf3f852b22148e68306ce3
4+
refs/heads/snap-stage3: 21d12c029700adc158c5fb466384ccd8562a6915
55
refs/heads/try: 20cbbffeefc1f35e2ea63afce7b42fbd79611d42
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d

branches/snap-stage3/src/README.md

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,66 @@
1+
This is a preliminary version of the Rust compiler, libraries and tools.
2+
3+
Source layout:
4+
5+
| Path | Description |
6+
| ------------------- | --------------------------------------------------------- |
7+
| `librustc/` | The self-hosted compiler |
8+
| `liballoc/` | Rust's core allocation library |
9+
| `libcore/` | The Rust core library |
10+
| `libdebug/` | Debugging utilities |
11+
| `libstd/` | The standard library (imported and linked by default) |
12+
| `libsyntax/` | The Rust parser and pretty-printer |
13+
| `libtest/` | Rust's test-runner code |
14+
| ------------------- | --------------------------------------------------------- |
15+
| `libarena/` | The arena (a fast but limited) memory allocator |
16+
| `libbacktrace/` | The libbacktrace library |
17+
| `libcollections/` | A collection of useful data structures and containers |
18+
| `libflate/` | Simple compression library |
19+
| `libfmt_macros/` | Macro support for format strings |
20+
| `libfourcc/` | Data format identifier library |
21+
| `libgetopts/` | Get command-line-options library |
22+
| `libglob/` | Unix glob patterns library |
23+
| `libgraphviz/` | Generating files for Graphviz |
24+
| `libhexfloat/` | Hexadecimal floating-point literals |
25+
| `liblibc/` | Bindings for the C standard library |
26+
| `liblog/` | Utilities for program-wide and customizable logging |
27+
| `libnum/` | Extended number support library (complex, rational, etc) |
28+
| `librand/` | Random numbers and distributions |
29+
| `libregex/` | Regular expressions |
30+
| `libregex_macros/` | The regex! syntax extension |
31+
| `libsemver/` | Rust's semantic versioning library |
32+
| `libserialize/` | Encode-Decode types library |
33+
| `libsync/` | Concurrency mechanisms and primitives |
34+
| `libterm/` | ANSI color library for terminals |
35+
| `libtime/` | Time operations library |
36+
| `liburl/` | URL handling lirary |
37+
| `libuuid/` | UUID's handling code |
38+
| ------------------- | --------------------------------------------------------- |
39+
| `rt/` | The runtime system |
40+
| `rt/rust_*.c` | - Some of the runtime services |
41+
| `rt/vg` | - Valgrind headers |
42+
| `rt/msvc` | - MSVC support |
43+
| `rt/sundown` | - The Markdown library used by rustdoc |
44+
| ------------------- | --------------------------------------------------------- |
45+
| `compiletest/` | The test runner |
46+
| `test/` | Testsuite |
47+
| `test/codegen` | - Tests for the LLVM IR infrastructure |
48+
| `test/compile-fail` | - Tests that should fail to compile |
49+
| `test/debug-info` | - Tests for the `debuginfo` tool |
50+
| `test/run-fail` | - Tests that should compile, run and fail |
51+
| `test/run-make` | - Tests that depend on a Makefile infrastructure |
52+
| `test/run-pass` | - Tests that should compile, run and succeed |
53+
| `test/bench` | - Benchmarks and miscellaneous |
54+
| `test/pretty` | - Pretty-printer tests |
55+
| `test/auxiliary` | - Dependencies of tests |
56+
| ------------------- | --------------------------------------------------------- |
57+
| `librustdoc/` | The Rust API documentation tool |
58+
| ------------------- | --------------------------------------------------------- |
59+
| `llvm/` | The LLVM submodule |
60+
| `rustllvm/` | LLVM support code |
61+
| ------------------- | --------------------------------------------------------- |
62+
| `etc/` | Scripts, editors support, misc |
63+
64+
65+
NOTE: This list (especially the second part of the table which contains modules and libraries)
66+
is highly volatile and subject to change.

branches/snap-stage3/src/libcollections/string.rs

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -903,19 +903,6 @@ impl<'a> Deref<String> for DerefString<'a> {
903903
}
904904

905905
/// Convert a string slice to a wrapper type providing a `&String` reference.
906-
///
907-
/// # Examples
908-
///
909-
/// ```
910-
/// use std::string::as_string;
911-
///
912-
/// fn string_consumer(s: String) {
913-
/// assert_eq!(s, "foo".to_string());
914-
/// }
915-
///
916-
/// let string = as_string("foo").clone();
917-
/// string_consumer(string);
918-
/// ```
919906
#[experimental]
920907
pub fn as_string<'a>(x: &'a str) -> DerefString<'a> {
921908
DerefString { x: as_vec(x.as_bytes()) }

branches/snap-stage3/src/librustc_typeck/check/mod.rs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2623,7 +2623,13 @@ fn check_method_argument_types<'a, 'tcx>(fcx: &FnCtxt<'a, 'tcx>,
26232623
tuple_arguments: TupleArgumentsFlag)
26242624
-> ty::FnOutput<'tcx> {
26252625
if ty::type_is_error(method_fn_ty) {
2626-
let err_inputs = err_args(args_no_rcvr.len());
2626+
let err_inputs = err_args(args_no_rcvr.len());
2627+
2628+
let err_inputs = match tuple_arguments {
2629+
DontTupleArguments => err_inputs,
2630+
TupleArguments => vec![ty::mk_tup(fcx.tcx(), err_inputs)],
2631+
};
2632+
26272633
check_argument_types(fcx,
26282634
sp,
26292635
err_inputs.as_slice(),
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
// Copyright 2014 The Rust Project Developers. See the COPYRIGHT
2+
// file at the top-level directory of this distribution and at
3+
// http://rust-lang.org/COPYRIGHT.
4+
//
5+
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
6+
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
7+
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
8+
// option. This file may not be copied, modified, or distributed
9+
// except according to those terms.
10+
11+
#![feature(unboxed_closures)]
12+
13+
fn main() {
14+
"".homura()(); //~ ERROR does not implement any method
15+
}

0 commit comments

Comments
 (0)