Paul Stansifer
fd52df1901
Fix pretty-printer breakage: 1000f
-> 1000
.
2012-07-31 11:03:22 -07:00
Ben Blum
18851e4248
Build fix: debug![ to debug!{
2012-07-31 13:25:18 -04:00
Ben Blum
e7d26a4917
make option::map_default<T,U> instead of U:copy
2012-07-31 13:22:32 -04:00
Patrick Walton
09e893ba2e
vim: Switch to a dot that shows up in the middle on Linux for module separator
2012-07-30 19:37:20 -07:00
Patrick Walton
51a06c15da
libsyntax: Parse self types in methods
2012-07-30 19:37:20 -07:00
Graydon Hoare
290f079474
Frontend bits for #2317 , general const-expr classification.
2012-07-30 19:06:06 -07:00
Paul Stansifer
bf8c773936
Update tests for macro syntax change.
2012-07-30 18:38:15 -07:00
Paul Stansifer
e6af5eeaa2
Fix pretty-printing of consecutive idents.
2012-07-30 18:38:15 -07:00
Paul Stansifer
3819b6b3d1
Allow single quote to be escaped in strings.
2012-07-30 18:38:15 -07:00
Paul Stansifer
a9cc5066ee
Change syntax extension syntax: #m[...]
-> m!{...}
.
2012-07-30 18:38:15 -07:00
Paul Stansifer
650fb06d68
Pretty-print token trees.
2012-07-30 18:04:19 -07:00
Paul Stansifer
a28812cfd6
Improve some documentation.
2012-07-30 18:04:19 -07:00
Paul Stansifer
19922fcd93
Feed the interner to the pretty-printer, in anticipation of pretty-printing token trees.
2012-07-30 18:04:19 -07:00
Paul Stansifer
4e9c475527
Work around bug #2935 by unautounboxing.
2012-07-30 18:04:19 -07:00
Paul Stansifer
be3b733c49
Let's give that binder a name that's not incredibly confusing.
2012-07-30 18:04:19 -07:00
Paul Stansifer
e040ab8423
Impl-ize interner.
2012-07-30 18:04:19 -07:00
Paul Stansifer
a7125971c6
Rename #mod
-> #module
to not collide with the keyword.
2012-07-30 18:04:18 -07:00
Brian Anderson
f6ce2bd831
test: Add a test for mods inside functions. Closes #493
2012-07-30 18:00:56 -07:00
Lindsey Kuper
f78776e9d8
rustc: "iface" -> "trait" in comments, error messages, and identifiers.
...
(Also "interface" -> "trait" in error messages.)
2012-07-30 17:26:14 -07:00
Lindsey Kuper
dbd39f868b
rustc: "ifce" -> "trt" in identifiers
2012-07-30 17:26:14 -07:00
Patrick Walton
d665ae956a
vim: Add some optional beautification of ::, ->, and =>
2012-07-30 16:33:24 -07:00
Brian Anderson
ef29f7ff36
syntax: Fix semicolon printing. Closes #3036
2012-07-30 16:09:52 -07:00
Elliott Slaughter
416584d339
Revert "Fix build by xfailing tests which produce irreducible CFGs."
...
This reverts commit 9ca2a11137
.
2012-07-30 15:58:23 -07:00
Elliott Slaughter
9c9de0bd6c
Update LLVM for better liveness algorithm.
2012-07-30 15:58:23 -07:00
Ben Blum
78dbf7e22e
Make rustdoc/demo.rs less gendered
2012-07-30 18:51:12 -04:00
Niko Matsakis
5d32d03b89
Fix #2979 : inference for lifetimes of & expressions
...
What we now do is to create a region variable for each &
expression (and also each borrow). The lifetime of this
variable will be checked by borrowck to ensure it is not greater
than the lifetime of the underlying data. This both leads to
shorter lifetimes in some cases but also longer in others,
such as taking the address to the interior of unique boxes
tht are rooted in region pointers (e.g., returning a pointer
to the interior of a sendable map).
This may lead to issue #2977 if the rvalue is not POD, because
we may drop the data in trans sooner than borrowck expects us
to. Need to work out precisely where that fix ought to occur.
2012-07-30 14:49:28 -07:00
Brian Anderson
6ef13e76e9
Reduce the difficulty of run-pass/bitv-perf-test. Valgrinds slowly
2012-07-30 12:04:58 -07:00
Michael Sullivan
68e9aa5fcb
Make at_vec push functions more like the current vec ones.
2012-07-30 11:29:24 -07:00
Patrick Walton
519deca716
rustc: Make option<&foo> no longer cause LLVM asserts by getting rid of regions in normalize_ty
2012-07-30 11:28:43 -07:00
Brian Anderson
2e231fbcb7
LONG LINES\!
2012-07-30 11:26:20 -07:00
Ben Blum
52ed570f1c
Move send_map to libcore
2012-07-30 13:56:14 -04:00
Damian Gryski
1854a736f8
rustc: use new siphash impl instead of sha1
...
Updating types std::sha1::sha1 -> hash::streaming was a relatively
small change. Renaming the variables to reflect that things aren't
sha1s any more touched far more lines.
2012-07-30 10:46:01 -07:00
Damian Gryski
04f2073bea
core::hash -- add a hash::streaming interface and associated siphash implementation.
2012-07-30 10:46:01 -07:00
Tim Chevalier
082d8314da
Rewrite bitv to use classes and optimize its representation
...
Rewrote bitv as a class that uses a 32-bit int as its representation
for bit vectors of 32 bits or less, and a vector (the old representation)
otherwise. I didn't benchmark very much, but a bit of informal benchmarking
suggested this is a win.
Closes #2341
2012-07-29 18:39:15 -07:00
Tim Chevalier
6ac86e92fe
Make uint::iterate pure
2012-07-29 18:39:15 -07:00
Tim Chevalier
3cb147a71e
Make tidy skip emacs backup files
2012-07-29 18:39:14 -07:00
Brian Anderson
e178999833
core: More magic to make core build with --test
2012-07-28 16:06:25 -07:00
Brian Anderson
2df03bfdca
core: Correct exports of intrinsic ops
2012-07-28 16:06:25 -07:00
Brian Anderson
dfbe6976c2
core: Fix compilation of intrinsic ops when testing
2012-07-28 16:06:25 -07:00
Brian Anderson
725a73c4d5
std: Implement to_str for net::url::url
2012-07-28 16:05:06 -07:00
Ben Blum
5312704904
Fix too-large constants in linked failure tests for happier valgrinding
2012-07-28 04:23:18 -04:00
Patrick Walton
afe7757525
libstd: Fix missing export from URL module
2012-07-27 22:23:36 -07:00
Patrick Walton
93c2f5e0e4
rustc: Use coherence for operator overloading.
...
The only use of the old-style impls is now placement new.
2012-07-27 19:35:24 -07:00
Graydon Hoare
e6d2e49852
Kill off another couple uses of the term 'mtcs'.
2012-07-27 19:19:40 -07:00
Graydon Hoare
517af7e743
early => earley. Oops.
2012-07-27 19:18:16 -07:00
Graydon Hoare
e11e90f31c
Make macro-system type and constructor names more uniform; more comments.
2012-07-27 19:14:46 -07:00
Graydon Hoare
eabd233dcd
Start killing off obsolete/unused quoters, and fix long lines.
2012-07-27 18:06:24 -07:00
Graydon Hoare
1d9f01cb42
Comments in the new macro system, reflecting conversation with pauls.
2012-07-27 17:42:42 -07:00
Tim Chevalier
f7382c454f
Forbid duplicate fields in record types and exprs
...
Closes #3033
2012-07-27 17:33:05 -07:00
Tim Chevalier
a0d05844ed
Correctly forbid upvars in nested impls, traits and classes
...
Previously, resolve was allowing impls, traits or classes that were
nested within a fn to refer to upvars, as well as referring to type
parameters bound by the fn. Fixing this required adding a new kind of
def: def_typaram_binder, which can refer to any of an impl, trait or
class that has bound ty params. resolve uses this to enforce that
methods can refer to their parent item's type parameters, but not to
outer items' type parameters; other stages ignore it. I also made
sure that impl, trait and class methods get checked inside a
MethodRibKind thing so as to forbid upvars, and changed the definition
of MethodRibKind so that its second argument is an optional node_id
(so that required trait method signatures can be checked with a
MethodRibKind as well).
2012-07-27 17:31:42 -07:00
Niko Matsakis
e4ab0f665b
change send_map tests to use ~linear_map, much more natural
2012-07-27 15:49:03 -07:00
Niko Matsakis
dd106ba763
export send_map and use fewer impl names
2012-07-27 15:49:03 -07:00
Niko Matsakis
638491712e
change region inference to not consider & that appears in a fn
...
type as indicating region parameterization
2012-07-27 15:49:03 -07:00
Brian Anderson
2407373fa4
core: Make #fmt pure
2012-07-27 15:11:22 -07:00
Patrick Walton
01e2471cb7
core: Trait-ify various overloaded operators
2012-07-27 14:52:46 -07:00
Tim Chevalier
b6aadf56c8
In resolve, check for duplicate pattern-bound vars
...
Closes #3038
2012-07-27 13:35:17 -07:00
Tim Chevalier
300f54ebc0
Make alts on uninhabited enum types typecheck and translate properly
...
Possibly one of the silliest Rust commits ever.
Closes #3037
2012-07-27 13:14:03 -07:00
Brian Anderson
8fdf77a20d
std: Make url a sendable type
2012-07-27 12:34:55 -07:00
Niko Matsakis
8800413f52
wip: add a sendable hashmap to stdlib
...
caveats:
- not efficient nor heavily tested
- API subject to change and currently incompatible with map
2012-07-27 08:50:50 -07:00
Brian Anderson
97d59a8ade
std: Create correctly-sized buffers on TCP read
2012-07-26 18:40:57 -07:00
Ben Blum
b50279ba94
vim: hilight old style #macros
2012-07-26 21:20:02 -04:00
Ben Blum
9258053b5c
Undo dlist's destructor-involving type structure in light of #3039
2012-07-26 21:20:02 -04:00
Ben Blum
73ca5603bd
(comments only) Mention unsafe TLS destructor use ( #3039 )
2012-07-26 21:20:02 -04:00
Eric Holk
3c731df890
re-xfailing pingpong
2012-07-26 17:11:04 -07:00
Eric Holk
79f5d62d47
Added .peek for recv_packets
2012-07-26 17:10:48 -07:00
Eric Holk
c918bd01b0
Fix borrow check errors in k-nucleotide.
2012-07-26 17:10:48 -07:00
Eric Holk
6d142c5e25
Removed the rest of the vec::view calls that were marked with #2880 . Fixes #2880 .
2012-07-26 17:10:48 -07:00
Eric Holk
65beca4e01
Use iteration protocol for ebml, use vec::view in more places (issue #2880 )
2012-07-26 17:10:48 -07:00
Graydon Hoare
dbbaa50290
Nomenclature fixes in the lint checker. Fewer double-negatives.
...
New style is allow(foo), warn(foo), deny(foo) and forbid(foo),
mirrored by -A foo, -W foo, -D foo and -F foo on command line.
These replace -W no-foo, -W foo, -W err-foo, respectively.
Forbid is new, and means "deny, and you can't override it".
2012-07-26 17:08:33 -07:00
Tim Chevalier
c60a6b93fb
Remove superfluous rets (purely style)
2012-07-26 17:06:09 -07:00
Damian Gryski
74d60a619a
shootout-mandelbrot: devnull writer needs get_type impl
2012-07-26 17:05:13 -07:00
Damian Gryski
ffb067640b
diagnostic: only print color if output is for the screen
2012-07-26 17:05:13 -07:00
Damian Gryski
cdd052f6ea
core::io::writer : add get_type() method
...
The get_type() method can hint to users what kind of item might be
under the hood.
2012-07-26 17:05:13 -07:00
Paul Stansifer
872ef0f312
Merge branch 'incoming' of github.com:mozilla/rust
2012-07-26 16:32:15 -07:00
Ben Blum
2fc2e2d5ea
Add issue number #3039 to dlist destructor
2012-07-26 19:31:50 -04:00
Paul Stansifer
97422f0f0f
Merge branch 'incoming' of github.com:mozilla/rust
2012-07-26 16:16:28 -07:00
Paul Stansifer
f1f9066274
Register snapshots.
2012-07-26 15:31:21 -07:00
Patrick Walton
afd9a75c9e
rustc: Fix cross-crate max/min-class-style constructors
2012-07-26 15:30:15 -07:00
Ben Blum
5cf99c585a
dlist pop needs copy after all ( #3024 )
2012-07-26 18:20:38 -04:00
Ben Blum
de48b7d4c4
dlist: cleanup a little; pretend to implement "cycle-collecting" destructor
2012-07-26 18:20:38 -04:00
Tim Chevalier
20c6f3c37a
Add xfailed test case for #3029
2012-07-26 14:51:10 -07:00
Tim Chevalier
c8ea9fc4c3
Re-added test for Issue 935 -- not sure what happened to it
2012-07-26 14:47:30 -07:00
Patrick Walton
1dd8acd56a
core: Mark a bunch of numeric functions as pure
2012-07-26 14:43:44 -07:00
Tim Chevalier
d19b915bc4
Add test for issue 868
2012-07-26 14:29:47 -07:00
Eric Holk
96c6f57d18
Revert "Use pipes in compiletest"
...
This reverts commit 2d15b6ef42
.
This seems like a likely candidate for causing the recent
lock_and_signal failures. I'll revert it for now to see if it fixes it
and hopefully nail down the problem better.
2012-07-26 14:11:46 -07:00
Eric Holk
5805616aad
Make parsing about 0.3 seconds faster.
2012-07-26 11:37:57 -07:00
Eric Holk
94f29e0c94
3x faster typechecking
2012-07-26 11:37:57 -07:00
Eric Holk
0a8b794a3a
Add #[inline(never)], and also fixed inlining on vec::push
2012-07-26 11:37:57 -07:00
Eric Holk
fec749df16
Comments Only: Remove outdated FIXMEs. Fixes #2886 .
2012-07-26 10:20:05 -07:00
Paul Stansifer
f4c093c4af
Change #macro
to macro_rules!
in some cases.
2012-07-26 10:14:01 -07:00
Paul Stansifer
7f5fbd4f9d
Allow old-style syntax extensions to be called with new syntax.
2012-07-26 09:52:21 -07:00
Eric Holk
ab1defb1ce
Make parsing about 0.3 seconds faster.
2012-07-26 09:47:32 -07:00
Graydon Hoare
c953dad0b9
Pick up changes from eds' unique-ptrs branch.
2012-07-25 19:04:46 -07:00
Patrick Walton
10d8a68791
libcore: Add missing ops.rs
2012-07-25 19:03:55 -07:00
Patrick Walton
da80bd17c3
rustc: Introduce a lang_items pass, part of coherence and operator overloading.
...
This will also help us remove kinds.
2012-07-25 18:37:03 -07:00
Eric Holk
e1d4bd463c
3x faster typechecking
2012-07-25 18:00:29 -07:00
Eric Holk
3aee39a6ec
Add #[inline(never)], and also fixed inlining on vec::push
2012-07-25 17:30:13 -07:00
Elliott Slaughter
987814f11e
Added debug flag to enable LLVM debug output.
2012-07-25 16:00:13 -07:00
Graydon Hoare
f8dc9283ad
Reject non-UTF-8 files when reading as str. Close #2918 .
2012-07-25 15:34:18 -07:00
Eric Holk
62d4f8fe82
Added a select2 trait. Fixes #2898
2012-07-25 15:15:46 -07:00