Graydon Hoare
5bdbfa41e6
syntax: pretty print bind_by_value patterns as "copy", r=burningtree.
2012-12-07 12:29:46 -08:00
Graydon Hoare
b4401d12a7
bench: fix nbody bugs, r=burningtree.
2012-12-07 12:21:30 -08:00
Graydon Hoare
09573ea8cf
syntax: stage0-guard uses of #ast, rewrite as quote_foo! in stage1,2.
2012-12-07 11:21:14 -08:00
Graydon Hoare
a6fcfd726b
syntax: fix missing push in item macro expansion
2012-12-07 11:21:14 -08:00
Graydon Hoare
70e0c6e27d
syntax: Permit splicing anything into a quote that implements ToTokens.
2012-12-07 11:21:14 -08:00
Graydon Hoare
7e9872058e
syntax: fix quote_type! to quote_ty!
2012-12-07 11:21:14 -08:00
Graydon Hoare
d45cb27901
syntax: point quote tokens at the site of quote-using-extension invocation.
2012-12-07 11:21:14 -08:00
Graydon Hoare
9f27bf7deb
syntax: fix the accidental binding of interner state between parse and quote.
2012-12-07 11:21:14 -08:00
Graydon Hoare
65db4315ab
syntax: fix a pp bug on foreign mods.
2012-12-07 11:21:14 -08:00
Tim Chevalier
58a4a3700d
Revert "Print copy patterns correctly"
...
This reverts commit ea6819637382e7f8979766b954dd2a1922d0dee0.
2012-12-06 22:36:32 -08:00
Tim Chevalier
f070e22360
Print copy patterns correctly
2012-12-06 21:53:25 -08:00
Tim Chevalier
7a365e4aa4
make bblum happy
2012-12-06 21:53:25 -08:00
Tim Chevalier
35f36808ff
Test cases, some xfailed
2012-12-06 21:53:14 -08:00
Tim Chevalier
10ec058638
Remove obsolete comment
2012-12-06 21:52:50 -08:00
Tim Chevalier
31a4f40329
Remove compile-fail test from run-pass
2012-12-06 21:52:50 -08:00
Tim Chevalier
dd80f7e06e
Xfail trait-inheritance-overloading-xc-exe
...
Issue #4135
2012-12-06 21:52:50 -08:00
Brian Anderson
791f976e8c
Remove hack to not use type_use on x86
2012-12-06 19:45:32 -08:00
Patrick Walton
cf3972e95a
librustc: Propagate type uses correctly from method calls to the containing functions. rs=bugfix
...
This adds a new script, `monodebug.pl`. It can be used to diagnose problems stemming from incorrect combining of monomorphic generic instantiations.
2012-12-06 19:11:51 -08:00
Brian Anderson
ddfd1eaeb5
Use fuzzy_eq in run-pass/intrinsics-math.rs
2012-12-06 18:55:10 -08:00
Brian Anderson
098f71d348
xfail-fast static-fn-inline-xc. needs aux-build
2012-12-06 18:44:26 -08:00
Tim Chevalier
d2ad028a7c
Rename std::ebml::Reader => std::ebml::reader, same for writer
...
Closes #4076
2012-12-06 16:14:54 -08:00
Tim Chevalier
fe9a339939
Add various test cases, mostly xfailed
2012-12-06 16:14:54 -08:00
Tim Chevalier
0027874218
Remove bogus FIXME, closes #2889
2012-12-06 16:14:54 -08:00
Patrick Walton
9750763a70
test: Fix compilation of benchmarks for moves-based-on-type. rs=bustage
2012-12-06 15:56:52 -08:00
Patrick Walton
4055001388
test: Fix shootout-mandelbrot.rs. rs=bustage
2012-12-06 15:38:04 -08:00
Brian Anderson
3464f60c00
Remove previous x86 data corruption workaround. #4054
2012-12-06 15:26:22 -08:00
Brian Anderson
55aa49882d
Turn off type_use on x86. #4127
2012-12-06 15:26:22 -08:00
Patrick Walton
14a7be31bb
test: Fix busted test. rs=bustage
2012-12-06 14:54:01 -08:00
Brian Anderson
c5ee9818ae
Eleminate pattern warnings
2012-12-06 14:11:11 -08:00
Patrick Walton
e6ab0ca8b1
test: Fix more compile-fail bustage. rs=bustage
2012-12-06 12:13:30 -08:00
Patrick Walton
45052e13a5
test: Fix some compile-fail bustage. rs=bustage
2012-12-06 11:08:23 -08:00
Patrick Walton
b27150ef82
test: Fix some run-fail bustage. rs=bustage
2012-12-06 10:26:11 -08:00
Patrick Walton
219e260009
test: Fix some more run-pass bustage. rs=clownshoes
2012-12-06 09:28:42 -08:00
Patrick Walton
7203be1109
librustc: Fix handling of ~
and @
unary operators in mode computation. Closes #4114 . rs=bugfix
2012-12-05 22:57:58 -08:00
Patrick Walton
4fc03bac65
librustc: Implement "-Z no-monomorphic-collapse" as a debugging tool to diagnose mysterious crashes we're seeing. rs=debug-tool
2012-12-05 20:45:58 -08:00
Patrick Walton
aa3aa3b1b2
librustc: Fix type_use to not treat i1* arguments as interchangeable with i8* arguments. Closes #3917 . rs=bugfix
2012-12-05 20:23:14 -08:00
Brian Anderson
32ce61f947
Fix test
2012-12-05 20:14:40 -08:00
Brian Anderson
4ab1c8805a
Convert Num to explicit self
2012-12-05 19:23:13 -08:00
Patrick Walton
e23ea24aed
librustc: Move the "legality of move bindings" check from typechecking to alt checking. rs=refactoring
2012-12-05 19:01:14 -08:00
Patrick Walton
16506c0250
librustc: Make a context including the method map in check_alt, in preparation for moving check_legality_of_move_bindings there. rs=refactoring
2012-12-05 18:28:34 -08:00
Brian Anderson
1fc802233b
Long lines
2012-12-05 18:10:45 -08:00
Brian Anderson
4f3cc01487
Fix cross-crate inlining of static functions
2012-12-05 18:09:52 -08:00
Patrick Walton
5bf9e6f58b
test: Fix float imprecision error on intrinsics-math
2012-12-05 17:54:12 -08:00
Patrick Walton
674b638385
test: Fix alt-implicit-copy-unique. rs=me
2012-12-05 17:38:21 -08:00
Patrick Walton
e1685dd990
test: More bustage fixes. rs=me
2012-12-05 17:36:51 -08:00
Patrick Walton
6084032270
test: More run-pass test fixes
2012-12-05 16:51:32 -08:00
Patrick Walton
7a065f2434
libcore: Fix some more coretest bustage. rs=bustage
2012-12-05 15:30:00 -08:00
Patrick Walton
1282fc8074
librustc: Hook borrow check loan checking up to the moves-based-on-type infrastructure. rs=helps-unbreak-the-build
2012-12-05 15:07:48 -08:00
Brian Anderson
0b5877afb8
Merge remote-tracking branch 'rntz/tuple-iterbytes'
...
Conflicts:
src/libcore/to_bytes.rs
2012-12-05 11:58:35 -08:00
Patrick Walton
3440482d8d
test: Fix a bunch of test cases. rs=burning
2012-12-05 11:40:47 -08:00
Patrick Walton
b8cfd5c414
librustc: Long lines. rs=rustbot
2012-12-04 21:13:02 -08:00
Brian Anderson
01cd53baf0
Merge remote-tracking branch 'luqmana/incoming'
...
Conflicts:
src/librustc/middle/typeck/check.rs
2012-12-04 18:49:50 -08:00
Patrick Walton
c0d3b291d5
librustc: Shot in the dark to try to unbreak Windows. rs=me
2012-12-04 16:03:50 -08:00
Patrick Walton
33c1e47c1b
librustc: Implement moves based on type. r=nmatsakis
2012-12-04 15:38:04 -08:00
Patrick Walton
f02e9db212
librustc: Remove bogus ValueMode. rs=tree-on-fire
2012-12-04 15:09:40 -08:00
Patrick Walton
d1ebdbeb6c
librustc: Implement explicit self for Add and Index; add a hack in the borrow checker to support this. r=nmatsakis
2012-12-04 14:51:31 -08:00
Patrick Walton
56ece46f7d
librustc: Remove all legacy pattern bindings from libsyntax and librustc. rs=refactoring
2012-12-04 14:19:19 -08:00
Graydon Hoare
94be145169
core: rename box to managed. Close #4079 .
2012-12-03 17:45:19 -08:00
Graydon Hoare
2a5713ed5c
core: rename unit to nil. Close #4080 .
2012-12-03 17:28:19 -08:00
Graydon Hoare
00c856c0b1
Update license, add license boilerplate to most files. Remainder will follow.
2012-12-03 17:12:14 -08:00
Patrick Walton
7eda4a567d
librustdoc: Parenthesize closure calls in tests to attempt to put out burning tinderbox. rs=rustbot
2012-12-03 17:08:52 -08:00
Patrick Walton
b6f1e3084f
librustc: Add missing cases in kind and privacy checking to try to put out the burning tinderbox. rs=rustbot
2012-12-03 15:28:51 -08:00
Brian Anderson
05e51e6f7f
Call default methods on bound typarams more correctly
2012-12-02 18:29:22 -08:00
Michael Arntzenius
5b6c1a2950
call out to iter_bytes_{2,3} in IterBytes instances for pairs, triples
...
This means we will exit early if requested based on the return value of the
callback we're given.
2012-12-02 20:01:28 -05:00
Michael Arntzenius
ef2c404e01
libcore/to_bytes.rs: fix IterBytes instances for pairs, triples to not cause ICE when used
2012-12-02 17:48:32 -05:00
Brian Anderson
83a55ea73a
Fix some compile-fail tests
2012-12-01 15:59:04 -08:00
Brian Anderson
c19c24d193
Fix tests for field parsing changes
2012-12-01 15:25:17 -08:00
Patrick Walton
1088006ed9
librustc: Implement unit-like struct constants. r=brson
2012-11-30 21:10:54 -08:00
Patrick Walton
8fa306a0ad
librustc: Implement tuple struct constants. r=brson
2012-11-30 21:10:17 -08:00
Patrick Walton
5b5a0df7ee
librustc: Implement C-like enum constants. r=tjc
2012-11-30 21:09:14 -08:00
Patrick Walton
f34833abfc
librustc: Make a.b()
always a method call. r=nmatsakis
2012-11-30 20:41:46 -08:00
Patrick Walton
54ae377ec2
librustc: Implement explicit @self and ~self for objects. r=nmatsakis
2012-11-30 19:39:01 -08:00
Patrick Walton
3afd6c3d79
librustc: Implement simple explicit self for objects. r=nmatsakis
2012-11-30 18:55:12 -08:00
Brian Anderson
f69cdc3f50
Merge remote-tracking branch 'bilalhusain/patch-1'
2012-11-30 18:45:58 -08:00
Tim Chevalier
bde2dcc8d5
Merge pull request #4085 from andrew-d/andrew-fix-typo
...
Fix small typo in kinds documentation
2012-11-30 12:48:28 -08:00
Tim Chevalier
daf28a421a
Disallow dereferencing enum types when the variant is private
...
If an enum type's only variant is private, disallow dereferencing
values of its type.
Due to #4082 , this only applies to enums that are in the same crate.
r=pcwalton
Closes #818
2012-11-30 12:45:10 -08:00
Andrew Dunham
e19d8f7ae5
Fix small typo in kinds documentation
2012-11-30 15:39:44 -05:00
Graydon Hoare
d783f4d7bb
libs: Remove transitionary material on iter_bytes, add workcache to build.
2012-11-30 10:33:16 -08:00
Brian Anderson
38ba2c4941
core: Add docs about kind traits
2012-11-30 01:52:26 -08:00
Brian Anderson
b52a4b412e
core: Make core.rc more readable. Cleanup
2012-11-30 01:32:53 -08:00
Brian Anderson
3ed9fbd63c
impls of traits cannot define methods on the anonymous trait
2012-11-29 22:07:49 -08:00
Brian Anderson
78ee821154
Implement trait inheritance for bounded type parameters
2012-11-29 18:10:11 -08:00
Brian Anderson
daa89e0861
rustc: Remove existing inheritance code from coherence
...
Inheritance will be implemented differently, hopefully simpler
2012-11-29 18:10:11 -08:00
Brian Anderson
28ecef7bf5
core: Add impls of Eq and Ord for f32, f64
2012-11-29 18:10:11 -08:00
Brian Anderson
05e7ba8d39
Enable trait-inheritance-simple.rs
2012-11-29 18:10:11 -08:00
Patrick Walton
a0617eae68
librustc: Eliminate most expressions of the form a.b()
that are not method calls. rs=refactoring
2012-11-29 17:51:56 -08:00
Brian Anderson
b38d7f6538
Remove more uses of #[merge]
2012-11-29 16:41:47 -08:00
Patrick Walton
2a6c6348b7
test: Remove obsolete tests. rs=buildbot
2012-11-29 15:12:06 -08:00
Brian Anderson
0a3a2eebfc
Long lines
2012-11-29 14:43:33 -08:00
Tim Chevalier
f459acc45d
Disallow importing private items
...
resolve wasn't checking that a `use` referred to a public item.
r=brson
2012-11-29 14:12:51 -08:00
Graydon Hoare
ce24d37759
syntax: slight improvement in fidelity of printing tokens. Still not great.
2012-11-29 12:09:11 -08:00
Paul Stansifer
7051d622c0
Properly sync macro_parser.rs after it escapes out to the Rust parser. Closes #3201 .
2012-11-29 12:09:11 -08:00
Paul Stansifer
9ff8d18766
Fix trace_macros so that it works.
2012-11-29 12:09:11 -08:00
Paul Stansifer
f6a8ffc625
Test statement macros.
2012-11-29 12:09:11 -08:00
Paul Stansifer
15e03e1e5e
Forbid attrs on macros, since we don't handle them properly yet.
2012-11-29 12:09:11 -08:00
Paul Stansifer
6174a30d7c
Respect semicolons always when expanding statments.
2012-11-29 12:09:11 -08:00
Paul Stansifer
e7f07cb2a3
Update tests to respect the way that macros work now.
2012-11-29 12:09:11 -08:00
Paul Stansifer
45bcb10204
Forbid item macros from occuring where statement macros might occur, and allow item macros to look like statement/expr macros.
2012-11-29 12:09:10 -08:00
Paul Stansifer
0f707f42c8
Distinguish stmt_mac
s that are followed by semicolons and those that aren't.
2012-11-29 12:09:10 -08:00
Paul Stansifer
e77491bd87
Make the parser handle stmt macros that might be exprs at the end of blocks.
2012-11-29 12:09:10 -08:00
Paul Stansifer
bd92499c5e
Allow parsing of macros in statement position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
9814e58815
No longer parse the delimiters of the RHS of a macro as part of the expansion.
2012-11-29 12:09:10 -08:00
Paul Stansifer
ba354b1726
Allow the expansion of old-style expr macros in stmt position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
b7fcc9b52e
Use biased_match!
to avoid over-deep indentation in expand.rs.
2012-11-29 12:09:10 -08:00
Paul Stansifer
cf26a7d7b9
Make it possible to expand stmt macros.
2012-11-29 12:09:10 -08:00
Paul Stansifer
ee076f63f9
Allow for macros to occur in statement position.
2012-11-29 12:09:10 -08:00
Paul Stansifer
fca52554e7
Make it possible to invoke item macros without passing identifier arguments.
2012-11-29 12:09:10 -08:00
Paul Stansifer
cafea5ecb6
Grammaticalinate an error message.
2012-11-29 12:09:10 -08:00
Paul Stansifer
9845a4be5a
Allow macro_rules!
macros to expand to expressions or items.
2012-11-29 12:09:10 -08:00
Patrick Walton
c946c87b6f
libsyntax: Remove the "by-mutable-ref" obsolete syntax error; it blocks useful function argument patterns. Add a test for the latter. r=brson
2012-11-29 12:06:36 -08:00
Patrick Walton
3beff12309
test: Fix broken resource-cycle.rs. r=tinderbox
2012-11-29 12:05:56 -08:00
Patrick Walton
9678abedec
test: Add a test that function argument patterns take in the expected type. r=test-only
2012-11-29 11:25:02 -08:00
Patrick Walton
976e1ced00
test: Add a test for generic objects. r=test-only
2012-11-29 11:18:36 -08:00
Patrick Walton
9e1c9be16f
librustc: Make the Drop trait use explicit self
2012-11-29 11:06:15 -08:00
Luqman Aden
c6b1739232
Add more standard c lib llvm intrinsics.
2012-11-29 06:48:07 -05:00
Bilal Husain
4ce7ccc48b
Update src/README.txt
...
updated the new names of source directories - librustc, libcargo, librusti, librustdoc, libfuzzer
2012-11-29 14:24:33 +05:30
Brian Anderson
5a282ec26f
core: Convert some records to structs
2012-11-28 21:50:09 -08:00
Brian Anderson
4a2a375fbf
rustdoc: More pipe conversion
2012-11-28 20:51:18 -08:00
Brian Anderson
65bd40e300
Remove uses of #[merge]
2012-11-28 17:09:26 -08:00
Brian Anderson
9b95d51131
core: Remove old template files
2012-11-28 15:26:55 -08:00
Brian Anderson
16f72df704
Merge remote-tracking branch 'erickt/time'
...
Conflicts:
src/libstd/time.rs
2012-11-28 14:49:58 -08:00
Brian Anderson
42c2c2ab2f
Remove parser hack
2012-11-28 14:39:48 -08:00
Patrick Walton
b9f9ab8f77
test: Implement a test for the Drop trait on a generic struct. a=test-only
2012-11-28 14:19:41 -08:00
Brian Anderson
fc06114ddf
Merge remote-tracking branch 'brson/companion' into incoming
...
Conflicts:
src/compiletest/compiletest.rs
src/libcargo/cargo.rs
src/libcore/core.rs
src/librustc/rustc.rs
src/librustdoc/rustdoc.rc
2012-11-28 13:17:33 -08:00
Brian Anderson
8179e268ef
Register snapshots
2012-11-28 12:33:00 -08:00
Patrick Walton
669fbddc44
librustc: Add explicit self to IterBytes. r=nmatsakis
2012-11-28 11:36:04 -08:00
Patrick Walton
430583c8b4
librustc: Allow &T to be assigned to *T. r=nmatsakis
2012-11-28 11:29:53 -08:00
Patrick Walton
07f4031bb4
libsyntax: Implement a macro die!
to replace the fail
expression. r=brson
2012-11-28 11:28:56 -08:00
Patrick Walton
61cfec3c52
librustc: Parse extern "C" { ... }
. r=brson
2012-11-28 11:28:16 -08:00
Michael Arntzenius
d2d6d955f4
libcore/to_bytes.rs: add IterBytes impls for pairs and triples. r=pcwalton
2012-11-28 11:27:05 -08:00
Patrick Walton
ca6970a65e
librustc: Make overloaded operators with explicit self translate correctly
2012-11-28 11:01:14 -08:00
Michael Arntzenius
d718bc292d
libcore/to_bytes.rs: add IterBytes impls for pairs and triples
2012-11-28 12:35:08 -05:00
Graydon Hoare
082a88e42c
Merge pull request #4032 from catamorphism/getopts
...
[libstd] getopts, now with fewer copies
2012-11-28 08:47:25 -08:00
Brian Anderson
19f5f91c04
rustdoc: Make fold require Clone instead of Copy
2012-11-27 11:08:19 -08:00
Brian Anderson
b21e9d52de
core: Add Clone trait
2012-11-27 11:08:19 -08:00
Patrick Walton
1c348e6e38
librustc: Implement @mut [T] as the new replacement for @[mut T]
2012-11-27 09:23:31 -08:00
Erick Tryzelaar
32763caa60
auto_serialize should use explicit refs ( fixes #4044 )
2012-11-26 22:31:48 -08:00
Erick Tryzelaar
cd6300e938
libstd: turn time::Tm and time::Timespec into structs
...
This avoids #4044 by not using the enum wrapper, and turning Tm_
directly into a struct. Along the way it modernizes the codebase
to eliminate no-implicit-copies warnings.
2012-11-26 22:22:22 -08:00
Jesse Jones
a18f0d413c
Made Tm_ a struct instead of a record and added serialization support to Tm and Tm_.
...
Not entirely clear what the best way to do this is. Right now we persist the entire
struct which seems to be both portable and exactly round-trippable.
2012-11-26 21:49:29 -08:00
Patrick Walton
7bc29c62d0
libcore: Add explicit self to all overloaded operators but Add and Index. r=brson
2012-11-26 19:35:52 -08:00
Brian Anderson
be6613e048
Remove the crate language
2012-11-26 18:13:54 -08:00
Brian Anderson
81a79603c0
Add a temporary hack to divert the parser to an alternate file
2012-11-26 18:13:54 -08:00
Brian Anderson
58e26243a7
syntax: Add a hack to support the int-template pattern
2012-11-26 18:13:54 -08:00
Patrick Walton
de0268b693
librustc: Fix translation of cross-crate inline or generic methods with explicit self. rs=blocking-snapshot
2012-11-26 18:09:12 -08:00
Brian Anderson
917ee7e5b1
Ignore two failure tests on windows
2012-11-26 14:48:48 -08:00
Gareth Daniel Smith
689f6ce5d0
Add insert and remove methods to vecs - as proposed in issue #4028 .
2012-11-26 14:34:50 -08:00
Brian Anderson
aee0b767bc
Add a FIXME about the problems closing /dev/urandom
2012-11-26 12:54:29 -08:00
Jesse Jones
065d642b15
Log errors from close instead of ignoring them.
...
They shouldn't matter but there have been errors on Macs so logging
them may help root cause the issue.
2012-11-26 12:54:29 -08:00
Jesse Jones
8adacc06aa
Some isaac_ssed fixes:
...
1) Check for eof (shouldn't happen, but if it does we'll fall into an
infinite loop).
2) Use fatal instead of assert (will work if NDEBUG is ever defined
and provides better diagnostics).
3) Ignore errors from close since they shouldn't matter.
Closes #3679 .
2012-11-26 12:54:29 -08:00
Brian Anderson
3ac90ec9f8
Fix test breakage
2012-11-25 16:10:37 -08:00