Skip to content

Commit 34bebf2

Browse files
committed
---
yaml --- r: 148091 b: refs/heads/try2 c: aa1839b h: refs/heads/master i: 148089: 3b9728e 148087: 1945d59 v: v3
1 parent dabf5c6 commit 34bebf2

Some content is hidden

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

56 files changed

+1165
-628
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ refs/heads/snap-stage3: 78a7676898d9f80ab540c6df5d4c9ce35bb50463
55
refs/heads/try: 519addf6277dbafccbb4159db4b710c37eaa2ec5
66
refs/tags/release-0.1: 1f5c5126e96c79d22cb7862f75304136e204f105
77
refs/heads/ndm: f3868061cd7988080c30d6d5bf352a5a5fe2460b
8-
refs/heads/try2: 280553c98842c62b5addc6c0ae444a0ec21ee530
8+
refs/heads/try2: aa1839bd693176f03f372fb34baa7b19b5030af7
99
refs/heads/dist-snap: ba4081a5a8573875fed17545846f6f6902c8ba8d
1010
refs/tags/release-0.2: c870d2dffb391e14efb05aa27898f1f6333a9596
1111
refs/tags/release-0.3: b5f0d0f648d9a6153664837026ba1be43d3e2503

branches/try2/AUTHORS.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -225,6 +225,7 @@ Lindsey Kuper <[email protected]>
225225
Luca Bruno <[email protected]>
226226
Luis de Bethencourt <[email protected]>
227227
Luqman Aden <[email protected]>
228+
228229
Magnus Auvinen <[email protected]>
229230
Mahmut Bulut <[email protected]>
230231
maikklein <[email protected]>
@@ -240,6 +241,7 @@ Martin DeMello <[email protected]>
240241
Marvin Löbel <[email protected]>
241242
Matt Brubeck <[email protected]>
242243
Matt Carberry <[email protected]>
244+
Matthew Auld <[email protected]>
243245
Matthew Iselin <[email protected]>
244246
Matthew McPherrin <[email protected]>
245247
Matthew O'Connor <[email protected]>

branches/try2/Makefile.in

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -416,6 +416,7 @@ export CFG_ENABLE_MINGW_CROSS
416416
export CFG_PREFIX
417417
export CFG_LIBDIR
418418
export CFG_RUSTLIBDIR
419+
export LIBDIR_RELATIVE
419420

420421
######################################################################
421422
# Subprograms
@@ -433,12 +434,12 @@ define SREQ
433434
# Destinations of artifacts for the host compiler
434435
HROOT$(1)_H_$(3) = $(3)/stage$(1)
435436
HBIN$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/bin
436-
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(CFG_LIBDIR)
437+
HLIB$(1)_H_$(3) = $$(HROOT$(1)_H_$(3))/$$(LIBDIR_RELATIVE)
437438

438439
# Destinations of artifacts for target architectures
439440
TROOT$(1)_T_$(2)_H_$(3) = $$(HLIB$(1)_H_$(3))/$$(CFG_RUSTLIBDIR)/$(2)
440441
TBIN$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/bin
441-
TLIB$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/$$(CFG_LIBDIR)
442+
TLIB$(1)_T_$(2)_H_$(3) = $$(TROOT$(1)_T_$(2)_H_$(3))/lib
442443

443444
# The name of the standard and extra libraries used by rustc
444445
HSTDLIB_DEFAULT$(1)_H_$(3) = \

branches/try2/RELEASES.txt

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
Version 0.9 (January 2014)
22
--------------------------
33

4-
* ~1600 changes, numerous bugfixes
4+
* ~1800 changes, numerous bugfixes
55

66
* Language
77
* The `float` type has been removed. Use `f32` or `f64` instead.
@@ -22,6 +22,9 @@ Version 0.9 (January 2014)
2222
* `@fn`s have been removed.
2323
* `do` only works with procs in order to make it obvious what the cost
2424
of `do` is.
25+
* Single-element tuple-like structs can no longer be dereferenced to
26+
obtain the inner value. A more comprehensive solution for overloading
27+
the dereference operator will be provided in the future.
2528
* The `#[link(...)]` attribute has been replaced with
2629
`#[crate_id = "name#vers"]`.
2730
* Empty `impl`s must be terminated with empty braces and may not be
@@ -32,6 +35,8 @@ Version 0.9 (January 2014)
3235
* `printf!` and `printfln!` (old-style formatting) removed in favor of
3336
`print!` and `println!`.
3437
* `mut` works in patterns now, as in `let (mut x, y) = (1, 2);`.
38+
* The `extern mod foo (name = "bar")` syntax has been removed. Use
39+
`extern mod foo = "bar"` instead.
3540
* New reserved keywords: `alignof`, `offsetof`, `sizeof`.
3641
* Macros can have attributes.
3742
* Macros can expand to items with attributes.
@@ -76,6 +81,7 @@ Version 0.9 (January 2014)
7681
variables. Currently behind the `thread_local` feature gate.
7782
* The `return` keyword may be used in closures.
7883
* Types that can be copied via a memcpy implement the `Pod` kind.
84+
* The `cfg` attribute can now be used on struct fields and enum variants.
7985

8086
* Libraries
8187
* std: The `option` and `result` API's have been overhauled to make them
@@ -90,9 +96,14 @@ Version 0.9 (January 2014)
9096
* std: The reference counted pointer type `extra::rc` moved into std.
9197
* std: The `Gc` type in the `gc` module will replace `@` (it is currently
9298
just a wrapper around it).
99+
* std: The `Either` type has been removed.
93100
* std: `fmt::Default` can be implemented for any type to provide default
94101
formatting to the `format!` macro, as in `format!("{}", myfoo)`.
95102
* std: The `rand` API continues to be tweaked.
103+
* std: The `rust_begin_unwind` function, useful for insterting breakpoints
104+
on failure in gdb, is now named `rust_fail`.
105+
* std: The `each_key` and `each_value` methods on `HashMap` have been
106+
replaced by the `keys` and `values` iterators.
96107
* std: Functions dealing with type size and alignment have moved from the
97108
`sys` module to the `mem` module.
98109
* std: The `path` module was written and API changed.

branches/try2/configure

Lines changed: 22 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -397,7 +397,17 @@ valopt sysconfdir "/etc" "install system configuration files"
397397
valopt datadir "${CFG_PREFIX}/share" "install data"
398398
valopt infodir "${CFG_PREFIX}/share/info" "install additional info"
399399
valopt mandir "${CFG_PREFIX}/share/man" "install man pages in PATH"
400-
valopt libdir "${CFG_PREFIX}/lib" "install libraries"
400+
401+
# On windows we just store the libraries in the bin directory because
402+
# there's no rpath
403+
# FIXME: Thise needs to parameterized over target triples. Do it in platform.mk
404+
LIBDIR_RELATIVE=lib
405+
if [ "$CFG_OSTYPE" = "pc-mingw32" ]
406+
then
407+
LIBDIR_RELATIVE=bin
408+
fi
409+
410+
valopt libdir "${CFG_PREFIX}/${LIBDIR_RELATIVE}" "install libraries"
401411
valopt rustlibdir "rustlib" "subdirectory name for rustc's libraries"
402412

403413
# Validate Options
@@ -560,10 +570,10 @@ then
560570
step_msg "on OS X 10.9, forcing use of clang"
561571
CFG_ENABLE_CLANG=1
562572
putvar CFG_ENABLE_CLANG
563-
else
564-
# on OS X, with xcode 5 and newer, certain developers may have
573+
else
574+
# on OS X, with xcode 5 and newer, certain developers may have
565575
# cc, gcc and g++ point to a mixture of clang and gcc
566-
# if so, this will create very strange build errors
576+
# if so, this will create very strange build errors
567577
# this last stanza is to detect some such problems and save the future rust
568578
# contributor some time solving that issue.
569579
# this detection could be generalized to other OSes aside from OS X
@@ -576,8 +586,8 @@ then
576586
# note that for xcode 5, g++ points to clang, not clang++
577587
if !((chk_cc gcc clang && chk_cc g++ clang) ||
578588
(chk_cc gcc gcc &&( chk_cc g++ g++ || chk g++ gcc))) then
579-
err "the gcc and g++ in your path point to different compilers.
580-
Check which versions are in your path with cc --version and g++ --version.
589+
err "the gcc and g++ in your path point to different compilers.
590+
Check which versions are in your path with cc --version and g++ --version.
581591
To resolve this problem, either fix your PATH or run configure with --enable-clang"
582592
fi
583593

@@ -751,15 +761,6 @@ do
751761
done
752762
done
753763

754-
# On windows we just store the libraries in the bin directory because
755-
# there's no rpath
756-
# FIXME: Thise needs to parameterized over target triples. Do it in platform.mk
757-
CFG_LIBDIR=lib
758-
if [ "$CFG_OSTYPE" = "pc-mingw32" ]
759-
then
760-
CFG_LIBDIR=bin
761-
fi
762-
763764
for h in $CFG_HOST
764765
do
765766
for t in $CFG_TARGET
@@ -770,21 +771,21 @@ do
770771
make_dir $h/stage$i/bin
771772

772773
# host lib dir
773-
make_dir $h/stage$i/$CFG_LIBDIR
774+
make_dir $h/stage$i/$LIBDIR_RELATIVE
774775

775776
# host test dir
776777
make_dir $h/stage$i/test
777778

778779
# target bin dir
779-
make_dir $h/stage$i/$CFG_LIBDIR/$CFG_RUSTLIBDIR/$t/bin
780+
make_dir $h/stage$i/$LIBDIR_RELATIVE/$CFG_RUSTLIBDIR/$t/bin
780781

781782
# target lib dir
782-
make_dir $h/stage$i/$CFG_LIBDIR/$CFG_RUSTLIBDIR/$t/$CFG_LIBDIR
783+
make_dir $h/stage$i/$LIBDIR_RELATIVE/$CFG_RUSTLIBDIR/$t/lib
783784
done
784785

785786
# Fix stage0:
786-
make_dir $h/stage0/$CFG_LIBDIR/rustc/$t/bin
787-
make_dir $h/stage0/$CFG_LIBDIR/rustc/$t/$CFG_LIBDIR
787+
make_dir $h/stage0/$LIBDIR_RELATIVE/rustc/$t/bin
788+
make_dir $h/stage0/$LIBDIR_RELATIVE/rustc/$t/$LIBDIR_RELATIVE
788789

789790
done
790791

@@ -1039,6 +1040,7 @@ putvar CFG_TARGET
10391040
putvar CFG_C_COMPILER
10401041
putvar CFG_LIBDIR
10411042
putvar CFG_RUSTLIBDIR
1043+
putvar LIBDIR_RELATIVE
10421044
putvar CFG_DISABLE_MANAGE_SUBMODULES
10431045
putvar CFG_ANDROID_CROSS_PATH
10441046
putvar CFG_MINGW32_CROSS_PATH

branches/try2/doc/guide-macros.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -278,6 +278,7 @@ return result + val;
278278
This solves the indentation problem. But if we have a lot of chained matches
279279
like this, we might prefer to write a single macro invocation. The input
280280
pattern we want is clear:
281+
281282
~~~~
282283
# macro_rules! b(
283284
( $( ($e:expr) ~ ($p:pat) else $err:stmt ; )*
@@ -304,6 +305,7 @@ input patterns:
304305
( binds $( $bind_res:ident ),* )
305306
# => (0))
306307
~~~~
308+
307309
...and:
308310

309311
~~~~

branches/try2/doc/guide-tasks.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -263,6 +263,7 @@ With `extra::future`, rust has a mechanism for requesting a computation and gett
263263
later.
264264

265265
The basic example below illustrates this.
266+
266267
~~~
267268
# fn make_a_sandwich() {};
268269
fn fib(n: u64) -> u64 {
@@ -283,6 +284,7 @@ the future needs to be mutable so that it can save the result for next time `get
283284

284285
Here is another example showing how futures allow you to background computations. The workload will
285286
be distributed on the available cores.
287+
286288
~~~
287289
# use std::vec;
288290
fn partial_sum(start: uint) -> f64 {
@@ -317,6 +319,7 @@ acts as a reference to the shared data and only this reference is shared and clo
317319

318320
Here is a small example showing how to use Arcs. We wish to run concurrently several computations on
319321
a single large vector of floats. Each task needs the full vector to perform its duty.
322+
320323
~~~
321324
# use std::vec;
322325
# use std::rand;
@@ -348,14 +351,17 @@ fn main() {
348351
The function `pnorm` performs a simple computation on the vector (it computes the sum of its items
349352
at the power given as argument and takes the inverse power of this value). The Arc on the vector is
350353
created by the line
354+
351355
~~~
352356
# use extra::arc::Arc;
353357
# use std::vec;
354358
# use std::rand;
355359
# let numbers = vec::from_fn(1000000, |_| rand::random::<f64>());
356360
let numbers_arc=Arc::new(numbers);
357361
~~~
362+
358363
and a clone of it is sent to each task
364+
359365
~~~
360366
# use extra::arc::Arc;
361367
# use std::vec;
@@ -365,9 +371,11 @@ and a clone of it is sent to each task
365371
# let (port, chan) = Chan::new();
366372
chan.send(numbers_arc.clone());
367373
~~~
374+
368375
copying only the wrapper and not its contents.
369376

370377
Each task recovers the underlying data by
378+
371379
~~~
372380
# use extra::arc::Arc;
373381
# use std::vec;
@@ -379,6 +387,7 @@ Each task recovers the underlying data by
379387
# let local_arc : Arc<~[f64]> = port.recv();
380388
let task_numbers = local_arc.get();
381389
~~~
390+
382391
and can use it as if it were local.
383392

384393
The `arc` module also implements Arcs around mutable data that are not covered here.

branches/try2/doc/rust.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -845,6 +845,7 @@ If a sequence of such redirections form a cycle or cannot be resolved unambiguou
845845
they represent a compile-time error.
846846

847847
An example of re-exporting:
848+
848849
~~~~
849850
# fn main() { }
850851
mod quux {
@@ -868,6 +869,7 @@ All rules regarding accessing declared modules in `use` declarations applies to
868869
and `extern mod` declarations.
869870

870871
An example of what will and will not work for `use` items:
872+
871873
~~~~
872874
# #[allow(unused_imports)];
873875
use foo::extra; // good: foo is at the root of the crate
@@ -1184,6 +1186,7 @@ a = Cat;
11841186
~~~~
11851187

11861188
Enumeration constructors can have either named or unnamed fields:
1189+
11871190
~~~~
11881191
enum Animal {
11891192
Dog (~str, f64),

branches/try2/doc/tutorial.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2788,13 +2788,15 @@ For example, if we move the `animals` module above into its own file...
27882788
mod plants;
27892789
mod animals;
27902790
~~~
2791+
27912792
~~~ {.ignore}
27922793
// src/animals.rs or src/animals/mod.rs
27932794
mod fish;
27942795
mod mammals {
27952796
mod humans;
27962797
}
27972798
~~~
2799+
27982800
...then the source files of `mod animals`'s submodules can
27992801
either be placed right next to that of its parents, or in a subdirectory if `animals` source file is:
28002802

@@ -2957,6 +2959,7 @@ pub fn bar() { println("Baz!"); }
29572959
There also exist two short forms for importing multiple names at once:
29582960

29592961
1. Explicit mention multiple names as the last element of an `use` path:
2962+
29602963
~~~
29612964
use farm::{chicken, cow};
29622965
# mod farm {
@@ -2967,6 +2970,7 @@ use farm::{chicken, cow};
29672970
~~~
29682971

29692972
2. Import everything in a module with a wildcard:
2973+
29702974
~~~
29712975
use farm::*;
29722976
# mod farm {

branches/try2/mk/clean.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -44,7 +44,7 @@ clean-misc:
4444
$(Q)rm -Rf $(DOCS)
4545
$(Q)rm -Rf $(GENERATED)
4646
$(Q)rm -Rf tmp/*
47-
$(Q)rm -Rf rust-stage0-*.tar.bz2 $(PKG_NAME)-*.tar.gz dist
47+
$(Q)rm -Rf rust-stage0-*.tar.bz2 $(PKG_NAME)-*.tar.gz $(PKG_NAME)-*.exe dist
4848
$(Q)rm -Rf $(foreach ext, \
4949
html aux cp fn ky log pdf pg toc tp vr cps epub, \
5050
$(wildcard doc/*.$(ext)))

branches/try2/mk/host.mk

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ $$(HLIB$(2)_H_$(4))/$(CFG_LIBNATIVE_$(4)): \
149149
$$(HBIN$(2)_H_$(4))/:
150150
mkdir -p $$@
151151

152-
ifneq ($(CFG_LIBDIR),bin)
152+
ifneq ($(LIBDIR_RELATIVE),bin)
153153
$$(HLIB$(2)_H_$(4))/:
154154
mkdir -p $$@
155155
endif

branches/try2/mk/install.mk

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ ISTAGE = 2
6363

6464
PREFIX_ROOT = $(CFG_PREFIX)
6565
PREFIX_BIN = $(PREFIX_ROOT)/bin
66-
PREFIX_LIB = $(PREFIX_ROOT)/$(CFG_LIBDIR)
66+
PREFIX_LIB = $(CFG_LIBDIR)
6767

6868
define INSTALL_PREPARE_N
6969
# $(1) is the target triple
@@ -76,7 +76,7 @@ TL$(1)$(2) = $$(TLIB$$(ISTAGE)_T_$(1)_H_$(2))
7676
# PT{R,B,L} == Prefix Target {Root, Bin, Lib}
7777
PTR$(1)$(2) = $$(PREFIX_LIB)/$(CFG_RUSTLIBDIR)/$(1)
7878
PTB$(1)$(2) = $$(PTR$(1)$(2))/bin
79-
PTL$(1)$(2) = $$(PTR$(1)$(2))/$(CFG_LIBDIR)
79+
PTL$(1)$(2) = $$(PTR$(1)$(2))/lib
8080

8181
endef
8282

0 commit comments

Comments
 (0)