Skip to content

Commit ca8204d

Browse files
committed
---
yaml --- r: 50150 b: refs/heads/auto c: 5b43810 h: refs/heads/master v: v3
1 parent a0f313e commit ca8204d

File tree

6 files changed

+132
-117
lines changed

6 files changed

+132
-117
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ refs/heads/try3: 9387340aab40a73e8424c48fd42f0c521a4875c0
1414
refs/tags/release-0.3.1: 495bae036dfe5ec6ceafd3312b4dca48741e845b
1515
refs/tags/release-0.4: e828ea2080499553b97dfe33b3f4d472b4562ad7
1616
refs/tags/release-0.5: 7e3bcfbf21278251ee936ad53e92e9b719702d73
17-
refs/heads/auto: 705c796ffa78417592b9e36d975cd432a4dc8417
17+
refs/heads/auto: 5b43810841a7825d37ecc6564b246a1a5f109667
1818
refs/heads/servo: af82457af293e2a842ba6b7759b70288da276167

branches/auto/RELEASES.txt

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,16 @@ Version 0.6 (March 2013)
66
* TODO:
77
* Ord/Cmp
88
* Lifetime changes
9-
* Implicit self
109
* Remove `static` keyword
1110
* Static method syntax
1211
* `as Trait`
1312
* `copy` removed, replaced with `Clone`?
14-
* `std::map` removed, replaced with `core::hashmap`
13+
* More details for "Name resolution continues to be tweaked"?
1514

1615
* Syntax changes
1716
* The self type parameter in traits is now spelled `Self`
17+
* The `self` parameter in trait and impl methods must now be explicitly
18+
named (for example: `fn f(&self) { }`). Implicit self is deprecated.
1819
* Replaced the `Durable` trait with the `'static` lifetime
1920
* The old closure type syntax with the trailing sigil has been
2021
removed in favor of the more consistent leading sigil
@@ -23,7 +24,7 @@ Version 0.6 (March 2013)
2324
* Traits are implemented with `impl Trait for Type`
2425
instead of `impl Type: Trait`
2526
* The `export` keyword has finally been removed
26-
* The `move` keyword has been removed (linear types move by default)
27+
* The `move` keyword has been removed (see "Semantic changes")
2728
* The interior mutability qualifier on vectors, `[mut T]`, has been
2829
removed. Use `&mut [T]`, etc.
2930
* `mut` is no longer valid in `~mut T`. Use inherited mutability
@@ -37,6 +38,7 @@ Version 0.6 (March 2013)
3738
function modules. Use extern blocks: `extern { ... }`
3839
* Newtype enums removed. Used tuple-structs.
3940
* Trait implementations no longer support visibility modifiers
41+
* Pattern matching over vectors improved and expanded
4042

4143
* Semantic changes
4244
* Types with owned pointers or custom destructors move by default,
@@ -49,12 +51,9 @@ Version 0.6 (March 2013)
4951
* The default type of an inferred closure is &fn instead of @fn
5052
* Name resolution continues to be tweaked
5153
* Method visibility is inherited from the implementation declaration
52-
53-
* Other language changes
5454
* Structural records have been removed
55-
* Many more types can be used in constants, including enums
55+
* Many more types can be used in constants, including enums,
5656
`static lifetime pointers and vectors
57-
* Pattern matching over vectors improved and expanded
5857
* Typechecking of closure types has been overhauled to
5958
improve inference and eliminate unsoundness
6059

@@ -68,6 +67,7 @@ Version 0.6 (March 2013)
6867
* Containers reorganized around traits in `core::container`
6968
* `core::dvec` removed, `~[T]` is a drop-in replacement
7069
* `core::send_map` renamed to `core::hashmap`
70+
* `std::map` removed; replaced with `core::hashmap`
7171
* `std::treemap` reimplemented as an owned balanced tree
7272
* `std::deque` and `std::smallintmap` reimplemented as owned containers
7373
* `core::trie` added as a fast ordered map for integer keys
@@ -76,14 +76,14 @@ Version 0.6 (March 2013)
7676
* Tools
7777
* Replaced the 'cargo' package manager with 'rustpkg'
7878
* Added all-purpose 'rust' tool
79-
* `rustc --test` now supports a benchmarks with the `#[bench]` attribute
79+
* `rustc --test` now supports benchmarks with the `#[bench]` attribute
8080
* rustc now attempts to offer spelling suggestions
8181

8282
* Misc
8383
* Improved support for ARM and Android
8484
* Preliminary MIPS backend
8585
* Improved foreign function ABI implementation for x86, x86_64
86-
* Various and memory usage improvements
86+
* Various memory usage improvements
8787
* Rust code may be embedded in foreign code under limited circumstances
8888

8989
Version 0.5 (December 2012)

branches/auto/configure

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -519,7 +519,7 @@ then
519519
| cut -d ' ' -f 2)
520520

521521
case $CFG_CLANG_VERSION in
522-
(3.0svn | 3.0 | 3.1* | 3.2* | 4.0* | 4.1* | 4.2*)
522+
(3.0svn | 3.0 | 3.1* | 3.2* | 3.3* | 4.0* | 4.1* | 4.2*)
523523
step_msg "found ok version of CLANG: $CFG_CLANG_VERSION"
524524
CFG_C_COMPILER="clang"
525525
;;

branches/auto/src/libcore/trie.rs

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
1313
use prelude::*;
1414

15+
// FIXME: #3469: need to manually update TrieNode when SHIFT changes
1516
// FIXME: #5244: need to manually update the TrieNode constructor
1617
const SHIFT: uint = 4;
1718
const SIZE: uint = 1 << SHIFT;
@@ -161,15 +162,12 @@ pub struct TrieSet {
161162

162163
impl BaseIter<uint> for TrieSet {
163164
/// Visit all values in order
164-
#[inline(always)]
165165
fn each(&self, f: &fn(&uint) -> bool) { self.map.each_key(f) }
166-
#[inline(always)]
167166
fn size_hint(&self) -> Option<uint> { Some(self.len()) }
168167
}
169168

170169
impl ReverseIter<uint> for TrieSet {
171170
/// Visit all values in reverse order
172-
#[inline(always)]
173171
fn each_reverse(&self, f: &fn(&uint) -> bool) {
174172
self.map.each_key_reverse(f)
175173
}
@@ -191,7 +189,7 @@ impl Mutable for TrieSet {
191189
fn clear(&mut self) { self.map.clear() }
192190
}
193191

194-
pub impl TrieSet {
192+
impl TrieSet {
195193
/// Create an empty TrieSet
196194
#[inline(always)]
197195
fn new() -> TrieSet {
@@ -217,7 +215,7 @@ pub impl TrieSet {
217215

218216
struct TrieNode<T> {
219217
count: uint,
220-
children: [Child<T> * SIZE]
218+
children: [Child<T> * 16] // FIXME: #3469: can't use the SIZE constant yet
221219
}
222220

223221
impl<T> TrieNode<T> {
@@ -303,6 +301,7 @@ fn insert<T>(count: &mut uint, child: &mut Child<T>, key: uint, value: T,
303301
added = insert(&mut x.count, &mut x.children[chunk(key, idx)], key,
304302
value, idx + 1);
305303
Internal(x)
304+
306305
}
307306
Nothing => {
308307
*count += 1;

branches/auto/src/libstd/priority_queue.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ pub impl <T:Ord> PriorityQueue<T> {
112112
while end > 1 {
113113
end -= 1;
114114
q.data[end] <-> q.data[0];
115-
q.siftdown_range(0, end)
115+
unsafe { q.siftdown_range(0, end) } // purity-checking workaround
116116
}
117117
q.to_vec()
118118
}
@@ -126,7 +126,7 @@ pub impl <T:Ord> PriorityQueue<T> {
126126
let mut n = q.len() / 2;
127127
while n > 0 {
128128
n -= 1;
129-
q.siftdown(n)
129+
unsafe { q.siftdown(n) }; // purity-checking workaround
130130
}
131131
q
132132
}

0 commit comments

Comments
 (0)