Skip to content

Commit 1820b78

Browse files
committed
---
yaml --- r: 109547 b: refs/heads/snap-stage3 c: 3eb3a02 h: refs/heads/master i: 109545: 73292c1 109543: 48acce3 v: v3
1 parent 3e55496 commit 1820b78

File tree

398 files changed

+3473
-2819
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

398 files changed

+3473
-2819
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: b8ef9fd9c9f642ce7b8aed82782a1ed745d08d64
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
4-
refs/heads/snap-stage3: f4518cdba7e7b5b40cea2b0549c4593414154829
4+
refs/heads/snap-stage3: 3eb3a02c92e129e87561ebcf927543679bf7c74d
55
refs/heads/try: f64fdf524a434f0e5cd0bc91d09c144723f3c90d
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b

branches/snap-stage3/.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
*.h rust
66
*.rs rust
77
src/etc/pkg/rust-logo.ico binary
8+
src/etc/pkg/rust-logo.png binary
89
src/rt/msvc/* -whitespace
910
src/rt/vg/* -whitespace
1011
src/rt/jemalloc/**/* -whitespace

branches/snap-stage3/Makefile.in

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -177,10 +177,10 @@ include config.mk
177177

178178
# Just a few macros used everywhere
179179
include $(CFG_SRC_DIR)mk/util.mk
180-
# All crates and their dependencies
181-
include $(CFG_SRC_DIR)mk/crates.mk
182180
# Reconfiguring when the makefiles or submodules change
183181
include $(CFG_SRC_DIR)mk/reconfig.mk
182+
# All crates and their dependencies
183+
include $(CFG_SRC_DIR)mk/crates.mk
184184
# Various bits of setup, common macros, and top-level rules
185185
include $(CFG_SRC_DIR)mk/main.mk
186186
# C and assembly components that are not LLVM

branches/snap-stage3/configure

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ need_ok() {
2727
}
2828

2929
need_cmd() {
30-
if which $1 >/dev/null 2>&1
30+
if command -v $1 >/dev/null 2>&1
3131
then msg "found $1"
3232
else err "need $1"
3333
fi
@@ -83,7 +83,7 @@ probe() {
8383
local T
8484
for P
8585
do
86-
T=$(which $P 2>&1)
86+
T=$(command -v $P 2>&1)
8787
if [ $? -eq 0 ]
8888
then
8989
VER0=$($P --version 2>/dev/null | head -1 \
@@ -384,6 +384,7 @@ opt pax-flags 0 "apply PaX flags to rustc binaries (required for GRSecurity/PaX-
384384
opt inject-std-version 1 "inject the current compiler version of libstd into programs"
385385
opt rpath 1 "build rpaths into rustc itself"
386386
opt nightly 0 "build nightly packages"
387+
opt verify-install 1 "verify installed binaries work"
387388
valopt prefix "/usr/local" "set installation prefix"
388389
valopt local-rust-root "/usr/local" "set prefix for local rust binary"
389390
valopt llvm-root "" "set LLVM root"

branches/snap-stage3/mk/crates.mk

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,8 +105,7 @@ COMPILER_DOC_CRATES := rustc syntax
105105
# $(1) is the crate to generate variables for
106106
define RUST_CRATE
107107
CRATEFILE_$(1) := $$(S)src/lib$(1)/lib.rs
108-
RSINPUTS_$(1) := $$(wildcard $$(addprefix $(S)src/lib$(1), \
109-
*.rs */*.rs */*/*.rs */*/*/*.rs))
108+
RSINPUTS_$(1) := $$(call rwildcard,$(S)src/lib$(1)/,*.rs)
110109
RUST_DEPS_$(1) := $$(filter-out native:%,$$(DEPS_$(1)))
111110
NATIVE_DEPS_$(1) := $$(patsubst native:%,%,$$(filter native:%,$$(DEPS_$(1))))
112111
endef
@@ -117,8 +116,7 @@ $(foreach crate,$(CRATES),$(eval $(call RUST_CRATE,$(crate))))
117116
#
118117
# $(1) is the crate to generate variables for
119118
define RUST_TOOL
120-
TOOL_INPUTS_$(1) := $$(wildcard $$(addprefix $$(dir $$(TOOL_SOURCE_$(1))), \
121-
*.rs */*.rs */*/*.rs */*/*/*.rs))
119+
TOOL_INPUTS_$(1) := $$(call rwildcard,$$(dir $$(TOOL_SOURCE_$(1))),*.rs)
122120
endef
123121

124122
$(foreach crate,$(TOOLS),$(eval $(call RUST_TOOL,$(crate))))

branches/snap-stage3/mk/dist.mk

Lines changed: 17 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,27 @@ dist-prepare-osx-$(1): PREPARE_LIB_CMD=$(DEFAULT_PREPARE_LIB_CMD)
160160
dist-prepare-osx-$(1): PREPARE_MAN_CMD=$(DEFAULT_PREPARE_MAN_CMD)
161161
dist-prepare-osx-$(1): prepare-base-osx-$(1)
162162

163-
dist/$(PKG_NAME)-$(1).pkg: $(S)src/etc/pkg/Distribution.xml LICENSE.txt dist-prepare-osx-$(1)
163+
dist/$(PKG_NAME)-$(1).pkg: $(S)src/etc/pkg/Distribution.xml LICENSE.txt \
164+
dist-prepare-osx-$(1) \
165+
tmp/dist/pkgres-$(1)/LICENSE.txt \
166+
tmp/dist/pkgres-$(1)/welcome.rtf \
167+
tmp/dist/pkgres-$(1)/rust-logo.png
164168
@$$(call E, making OS X pkg)
165169
$(Q)pkgbuild --identifier org.rust-lang.rust --root tmp/dist/pkgroot-$(1) rust.pkg
166-
$(Q)productbuild --distribution $(S)src/etc/pkg/Distribution.xml --resources . dist/$(PKG_NAME)-$(1).pkg
170+
$(Q)productbuild --distribution $(S)src/etc/pkg/Distribution.xml \
171+
--resources tmp/dist/pkgres-$(1) dist/$(PKG_NAME)-$(1).pkg
167172
$(Q)rm -rf tmp rust.pkg
168173

174+
tmp/dist/pkgres-$(1)/LICENSE.txt: $(S)/LICENSE.txt
175+
@$$(call E,pkg resource LICENSE.txt)
176+
$(Q)mkdir -p $$(@D)
177+
$(Q)cp $$< $$@
178+
179+
tmp/dist/pkgres-$(1)/%: $(S)src/etc/pkg/%
180+
@$$(call E,pkg resource $$*)
181+
$(Q)mkdir -p $$(@D)
182+
$(Q)cp -r $$< $$@
183+
169184
endef
170185

171186
$(foreach host,$(CFG_HOST),$(eval $(call DEF_OSX_PKG,$(host))))

branches/snap-stage3/mk/docs.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -232,7 +232,7 @@ ifeq ($(CFG_LLNEXTGEN),)
232232
else
233233
.PHONY: verify-grammar
234234

235-
doc/rust.g: rust.md $(S)src/etc/extract_grammar.py
235+
doc/rust.g: $(D)/rust.md $(S)src/etc/extract_grammar.py
236236
@$(call E, extract_grammar: $@)
237237
$(Q)$(CFG_PYTHON) $(S)src/etc/extract_grammar.py $< >$@
238238

branches/snap-stage3/mk/install.mk

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,14 +8,21 @@
88
# option. This file may not be copied, modified, or distributed
99
# except according to those terms.
1010

11+
ifdef CFG_DISABLE_VERIFY_INSTALL
12+
MAYBE_DISABLE_VERIFY=--disable-verify
13+
else
14+
MAYBE_DISABLE_VERIFY=
15+
endif
1116

1217
install: dist-install-dir-$(CFG_BUILD)
13-
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --prefix="$(CFG_PREFIX)" --libdir="$(CFG_LIBDIR)" --mandir="$(CFG_MANDIR)"
18+
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --prefix="$(DESTDIR)$(CFG_PREFIX)" --libdir="$(DESTDIR)$(CFG_LIBDIR)" --mandir="$(DESTDIR)$(CFG_MANDIR)" "$(MAYBE_DISABLE_VERIFY)"
1419
# Remove tmp files while we can because they may have been created under sudo
15-
$(Q)rm -R tmp/dist/$(PKG_NAME)-$(CFG_BUILD/
20+
$(Q)rm -R tmp/dist/$(PKG_NAME)-$(CFG_BUILD)
1621

1722
uninstall: dist-install-dir-$(CFG_BUILD)
18-
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --uninstall --prefix="$(CFG_PREFIX)" --libdir="$(CFG_LIBDIR)" --mandir="$(CFG_MANDIR)"
23+
$(Q)sh tmp/dist/$(PKG_NAME)-$(CFG_BUILD)/install.sh --uninstall --prefix="$(DESTDIR)$(CFG_PREFIX)" --libdir="$(DESTDIR)$(CFG_LIBDIR)" --mandir="$(DESTDIR)$(CFG_MANDIR)"
24+
# Remove tmp files while we can because they may have been created under sudo
25+
$(Q)rm -R tmp/dist/$(PKG_NAME)-$(CFG_BUILD)
1926

2027

2128
######################################################################

branches/snap-stage3/mk/rt.mk

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -215,6 +215,7 @@ $$(LIBUV_DIR_$(1))/Release/libuv.a: $$(LIBUV_DEPS) $$(LIBUV_MAKEFILE_$(1)) \
215215
BUILDTYPE=Release \
216216
NO_LOAD="$$(LIBUV_NO_LOAD)" \
217217
V=$$(VERBOSE)
218+
$$(Q)touch $$@
218219

219220
endif
220221

branches/snap-stage3/src/compiletest/compiletest.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@
88
// option. This file may not be copied, modified, or distributed
99
// except according to those terms.
1010

11-
#[crate_type = "bin"];
12-
#[feature(phase)];
11+
#![crate_type = "bin"]
12+
#![feature(phase)]
1313

14-
#[allow(non_camel_case_types)];
15-
#[deny(warnings)];
14+
#![allow(non_camel_case_types)]
15+
#![deny(warnings)]
1616

1717
extern crate test;
1818
extern crate getopts;

branches/snap-stage3/src/doc/guide-unsafe.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -595,7 +595,7 @@ Other features provided by lang items include:
595595
- stack unwinding and general failure; the `eh_personality`, `fail_`
596596
and `fail_bounds_checks` lang items.
597597
- the traits in `std::kinds` used to indicate types that satisfy
598-
various kinds; lang items `send`, `share` and `pod`.
598+
various kinds; lang items `send`, `share` and `copy`.
599599
- the marker types and variance indicators found in
600600
`std::kinds::markers`; lang items `covariant_type`,
601601
`contravariant_lifetime`, `no_share_bound`, etc.

branches/snap-stage3/src/doc/rust.md

Lines changed: 18 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ Some productions are defined by exclusion of particular Unicode characters:
153153
~~~~ {.notrust .ebnf .gram}
154154
comment : block_comment | line_comment ;
155155
block_comment : "/*" block_comment_body * '*' + '/' ;
156-
block_comment_body : (block_comment | character) * ;
156+
block_comment_body : [block_comment | character] * ;
157157
line_comment : "//" non_eol * ;
158158
~~~~
159159

@@ -205,6 +205,7 @@ The keywords are the following strings:
205205
~~~~ {.notrust .keyword}
206206
as
207207
break
208+
crate
208209
do
209210
else enum extern
210211
false fn for
@@ -496,16 +497,16 @@ All of the above extensions are expressions with values.
496497
## Macros
497498

498499
~~~~ {.notrust .ebnf .gram}
499-
expr_macro_rules : "macro_rules" '!' ident '(' macro_rule * ')'
500-
macro_rule : '(' matcher * ')' "=>" '(' transcriber * ')' ';'
500+
expr_macro_rules : "macro_rules" '!' ident '(' macro_rule * ')' ;
501+
macro_rule : '(' matcher * ')' "=>" '(' transcriber * ')' ';' ;
501502
matcher : '(' matcher * ')' | '[' matcher * ']'
502503
| '{' matcher * '}' | '$' ident ':' ident
503504
| '$' '(' matcher * ')' sep_token? [ '*' | '+' ]
504-
| non_special_token
505+
| non_special_token ;
505506
transcriber : '(' transcriber * ')' | '[' transcriber * ']'
506507
| '{' transcriber * '}' | '$' ident
507508
| '$' '(' transcriber * ')' sep_token? [ '*' | '+' ]
508-
| non_special_token
509+
| non_special_token ;
509510
~~~~
510511

511512
User-defined syntax extensions are called "macros",
@@ -802,7 +803,7 @@ use_decl : "pub" ? "use" ident [ '=' path
802803
803804
path_glob : ident [ "::" path_glob ] ?
804805
| '*'
805-
| '{' ident [ ',' ident ] * '}'
806+
| '{' ident [ ',' ident ] * '}' ;
806807
~~~~
807808

808809
A _use declaration_ creates one or more local name bindings synonymous
@@ -1457,7 +1458,7 @@ impl Seq<bool> for u32 {
14571458
### External blocks
14581459

14591460
~~~~ {.notrust .ebnf .gram}
1460-
extern_block_item : "extern" '{' extern_block '} ;
1461+
extern_block_item : "extern" '{' extern_block '}' ;
14611462
extern_block : [ foreign_fn ] * ;
14621463
~~~~
14631464

@@ -1683,7 +1684,7 @@ import public items from their destination, not private items.
16831684

16841685
~~~~ {.notrust .ebnf .gram}
16851686
attribute : '#' '[' attr_list ']' ;
1686-
attr_list : attr [ ',' attr_list ]*
1687+
attr_list : attr [ ',' attr_list ]* ;
16871688
attr : ident [ '=' literal
16881689
| '(' attr_list ')' ] ? ;
16891690
~~~~
@@ -2331,7 +2332,7 @@ struct_expr : expr_path '{' ident ':' expr
23312332
[ ".." expr ] '}' |
23322333
expr_path '(' expr
23332334
[ ',' expr ] * ')' |
2334-
expr_path
2335+
expr_path ;
23352336
~~~~
23362337

23372338
There are several forms of structure expressions.
@@ -2382,7 +2383,7 @@ Point3d {y: 0, z: 10, .. base};
23822383
~~~~ {.notrust .ebnf .gram}
23832384
block_expr : '{' [ view_item ] *
23842385
[ stmt ';' | item ] *
2385-
[ expr ] '}'
2386+
[ expr ] '}' ;
23862387
~~~~
23872388

23882389
A _block expression_ is similar to a module in terms of the declarations that
@@ -2409,7 +2410,7 @@ or dynamically dispatching if the left-hand-side expression is an indirect [obje
24092410
### Field expressions
24102411

24112412
~~~~ {.notrust .ebnf .gram}
2412-
field_expr : expr '.' ident
2413+
field_expr : expr '.' ident ;
24132414
~~~~
24142415

24152416
A _field expression_ consists of an expression followed by a single dot and an identifier,
@@ -2431,9 +2432,9 @@ it is automatically dereferenced to make the field access possible.
24312432
### Vector expressions
24322433

24332434
~~~~ {.notrust .ebnf .gram}
2434-
vec_expr : '[' "mut" ? vec_elems? ']'
2435+
vec_expr : '[' "mut" ? vec_elems? ']' ;
24352436
2436-
vec_elems : [expr [',' expr]*] | [expr ',' ".." expr]
2437+
vec_elems : [expr [',' expr]*] | [expr ',' ".." expr] ;
24372438
~~~~
24382439

24392440
A [_vector_](#vector-types) _expression_ is written by enclosing zero or
@@ -2453,7 +2454,7 @@ as a [literal](#literals) or a [static item](#static-items).
24532454
### Index expressions
24542455

24552456
~~~~ {.notrust .ebnf .gram}
2456-
idx_expr : expr '[' expr ']'
2457+
idx_expr : expr '[' expr ']' ;
24572458
~~~~
24582459

24592460
[Vector](#vector-types)-typed expressions can be indexed by writing a
@@ -2875,7 +2876,7 @@ then any `else` block is executed.
28752876
~~~~ {.notrust .ebnf .gram}
28762877
match_expr : "match" expr '{' match_arm [ '|' match_arm ] * '}' ;
28772878
2878-
match_arm : match_pat '=>' [ expr "," | '{' block '}' ] ;
2879+
match_arm : match_pat "=>" [ expr "," | '{' block '}' ] ;
28792880
28802881
match_pat : pat [ ".." pat ] ? [ "if" expr ] ;
28812882
~~~~
@@ -3439,12 +3440,12 @@ The kinds are:
34393440
This kind includes scalars, owning pointers, owned closures, and
34403441
structural types containing only other owned types.
34413442
All `Send` types are `'static`.
3442-
`Pod`
3443+
`Copy`
34433444
: Types of this kind consist of "Plain Old Data"
34443445
which can be copied by simply moving bits.
34453446
All values of this kind can be implicitly copied.
34463447
This kind includes scalars and immutable references,
3447-
as well as structural types containing other `Pod` types.
3448+
as well as structural types containing other `Copy` types.
34483449
`'static`
34493450
: Types of this kind do not contain any references (except for
34503451
references with the `static` lifetime, which are allowed).

0 commit comments

Comments
 (0)