Skip to content

Commit 672aa5a

Browse files
committed
---
yaml --- r: 277882 b: refs/heads/auto c: 6bc9318 h: refs/heads/master
1 parent ea5c742 commit 672aa5a

File tree

8 files changed

+37
-93
lines changed

8 files changed

+37
-93
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503
88
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
99
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1010
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
11-
refs/heads/auto: b0aefff71499ac8e5f65c4a241b279e687c44c36
11+
refs/heads/auto: 6bc93183183d070bf355bbd5714209fd00631e1e
1212
refs/tags/release-0.6: b4ebcfa1812664df5e142f0134a5faea3918544c
1313
refs/tags/0.1: b19db808c2793fe2976759b85a355c3ad8c8b336
1414
refs/tags/0.2: 1754d02027f2924bed83b0160ee340c7f41d5ea1

branches/auto/configure

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1453,6 +1453,19 @@ then
14531453
cd ${CFG_BUILD_DIR}
14541454
fi
14551455

1456+
# Do a sanity check that the submodule source exists. Because GitHub
1457+
# automatically publishes broken tarballs that can't be disabled, and
1458+
# people download them and try to use them.
1459+
if [ ! -e "${CFG_SRC_DIR}/src/liblibc" ]; then
1460+
err "some submodules are missing. Is this a broken tarball?
1461+
1462+
If you downloaded this tarball from the GitHub release pages at
1463+
https://github.com/rust-lang/rust/releases,
1464+
then please delete it and instead download the source from
1465+
https://www.rust-lang.org/downloads.html"
1466+
1467+
fi
1468+
14561469
# Configure llvm, only if necessary
14571470
step_msg "looking at LLVM"
14581471
CFG_LLVM_SRC_DIR=${CFG_SRC_DIR}src/llvm/

branches/auto/src/libcollections/btree/map.rs

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1654,15 +1654,6 @@ impl<'a, K: Ord, V> Entry<'a, K, V> {
16541654
Vacant(entry) => entry.insert(default()),
16551655
}
16561656
}
1657-
1658-
/// Returns a reference to this entry's key.
1659-
#[unstable(feature = "map_entry_keys", issue = "32281")]
1660-
pub fn key(&self) -> &K {
1661-
match *self {
1662-
Occupied(ref entry) => entry.key(),
1663-
Vacant(ref entry) => entry.key(),
1664-
}
1665-
}
16661657
}
16671658

16681659
impl<'a, K: Ord, V> VacantEntry<'a, K, V> {

branches/auto/src/librustc_driver/driver.rs

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -645,6 +645,21 @@ pub fn phase_2_configure_and_expand(sess: &Session,
645645
ret
646646
});
647647

648+
// Needs to go *after* expansion to be able to check the results
649+
// of macro expansion. This runs before #[cfg] to try to catch as
650+
// much as possible (e.g. help the programmer avoid platform
651+
// specific differences)
652+
time(time_passes, "complete gated feature checking 1", || {
653+
sess.track_errors(|| {
654+
let features = syntax::feature_gate::check_crate(sess.codemap(),
655+
&sess.parse_sess.span_diagnostic,
656+
&krate,
657+
&attributes,
658+
sess.opts.unstable_features);
659+
*sess.features.borrow_mut() = features;
660+
})
661+
})?;
662+
648663
// JBC: make CFG processing part of expansion to avoid this problem:
649664

650665
// strip again, in case expansion added anything with a #[cfg].
@@ -683,8 +698,10 @@ pub fn phase_2_configure_and_expand(sess: &Session,
683698
"checking for inline asm in case the target doesn't support it",
684699
|| no_asm::check_crate(sess, &krate));
685700

686-
// Needs to go *after* expansion to be able to check the results of macro expansion.
687-
time(time_passes, "complete gated feature checking", || {
701+
// One final feature gating of the true AST that gets compiled
702+
// later, to make sure we've got everything (e.g. configuration
703+
// can insert new attributes via `cfg_attr`)
704+
time(time_passes, "complete gated feature checking 2", || {
688705
sess.track_errors(|| {
689706
let features = syntax::feature_gate::check_crate(sess.codemap(),
690707
&sess.parse_sess.span_diagnostic,

branches/auto/src/librustc_resolve/diagnostics.rs

Lines changed: 1 addition & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -948,51 +948,6 @@ use something_which_doesnt_exist;
948948
Please verify you didn't misspell the import's name.
949949
"##,
950950

951-
E0434: r##"
952-
This error indicates that a variable usage inside an inner function is invalid
953-
because the variable comes from a dynamic environment. Inner functions do not
954-
have access to their containing environment.
955-
956-
Example of erroneous code:
957-
958-
```compile_fail
959-
fn foo() {
960-
let y = 5;
961-
fn bar() -> u32 {
962-
y // error: can't capture dynamic environment in a fn item; use the
963-
// || { ... } closure form instead.
964-
}
965-
}
966-
```
967-
968-
Functions do not capture local variables. To fix this error, you can replace the
969-
function with a closure:
970-
971-
```
972-
fn foo() {
973-
let y = 5;
974-
let bar = || {
975-
y
976-
};
977-
}
978-
```
979-
980-
or replace the captured variable with a constant or a static item:
981-
982-
```
983-
fn foo() {
984-
static mut X: u32 = 4;
985-
const Y: u32 = 5;
986-
fn bar() -> u32 {
987-
unsafe {
988-
X = 3;
989-
}
990-
Y
991-
}
992-
}
993-
```
994-
"##,
995-
996951
E0435: r##"
997952
A non-constant value was used to initialise a constant. Example of erroneous
998953
code:
@@ -1089,4 +1044,5 @@ register_diagnostics! {
10891044
E0421, // unresolved associated const
10901045
E0427, // cannot use `ref` binding mode with ...
10911046
E0429, // `self` imports are only allowed within a { } list
1047+
E0434, // can't capture dynamic environment in a fn item
10921048
}

branches/auto/src/libstd/collections/hash/map.rs

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1533,15 +1533,6 @@ impl<'a, K, V> Entry<'a, K, V> {
15331533
Vacant(entry) => entry.insert(default()),
15341534
}
15351535
}
1536-
1537-
/// Returns a reference to this entry's key.
1538-
#[unstable(feature = "map_entry_keys", issue = "32281")]
1539-
pub fn key(&self) -> &K {
1540-
match *self {
1541-
Occupied(ref entry) => entry.key(),
1542-
Vacant(ref entry) => entry.key(),
1543-
}
1544-
}
15451536
}
15461537

15471538
impl<'a, K, V> OccupiedEntry<'a, K, V> {

branches/auto/src/libsyntax/ext/expand.rs

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -327,7 +327,9 @@ macro_rules! with_exts_frame {
327327
// When we enter a module, record it, for the sake of `module!`
328328
pub fn expand_item(it: P<ast::Item>, fld: &mut MacroExpander)
329329
-> SmallVector<P<ast::Item>> {
330-
expand_annotatable(Annotatable::Item(it), fld)
330+
let it = expand_item_multi_modifier(Annotatable::Item(it), fld);
331+
332+
expand_annotatable(it, fld)
331333
.into_iter().map(|i| i.expect_item()).collect()
332334
}
333335

branches/auto/src/test/compile-fail/expanded-cfg.rs

Lines changed: 0 additions & 26 deletions
This file was deleted.

0 commit comments

Comments
 (0)