Commit Graph

12648 Commits

Author SHA1 Message Date
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_macs 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
Brian Anderson
3acf4a2a9c Fix test 2012-11-25 14:04:45 -08:00
Brian Anderson
f648de74a5 Ignore a should_fail test on windows 2012-11-25 13:52:07 -08:00
Brian Anderson
5c0206a1e4 Rename insert_with functions to update, update_with_key 2012-11-25 13:26:37 -08:00
Kevin Cantu
ff4075e553 Add improvements to insert_with_key
This commit adds a lower-level implementation of the generic
`insert_with_key` which I expect to be faster. Now insert could be
defined with insert_with_key, too, although I'm not sure we want to do that.

This also clarifies the tests a bit and adds an `insert_with` function.
2012-11-25 12:41:11 -08:00
Kevin Cantu
7b13ef7d50 Test insert_with_key... 2012-11-25 12:41:11 -08:00
Kevin Cantu
a343e435d5 Add an insert_with_key function to the Map trait 2012-11-25 12:41:11 -08:00
Tim Chevalier
455d73cb86 [libs] Remove unread_byte method from core::io::Reader
Method isn't used. See discussion on #2738 and #4031

Closes #2738
2012-11-24 14:39:21 -08:00
Tim Chevalier
fa66f3ec18 [tests] Add passing test
Closes #3683
2012-11-24 14:02:35 -08:00
Tim Chevalier
77e5498868 Long lines 2012-11-24 13:59:21 -08:00
Tim Chevalier
ec0c029a7e Split EBML module into a reader and a writer module
Minor refactoring, no review.

Closes #2739
2012-11-24 13:40:00 -08:00
Tim Chevalier
236fd32f0a [tests] Add test for #4033 2012-11-24 13:40:00 -08:00
Tim Chevalier
f74fe894fc [libstd] getopts, now with fewer copies
Change the opt_ functions in getopts to take a reference to a
Matches, instead of taking a Matches by-value, as suggested in
2012-11-24 12:52:27 -08:00
Tim Chevalier
55ca36196d Merge pull request #4026 from eholk/float-perf
Inline numeric operations for floats.
2012-11-24 09:01:23 -08:00
Tim Chevalier
626a7aa4f4 Merge pull request #4029 from Dretch/ioreadfixes
Fix a bug where read(buf, len) would fail if buf was big enough and ...
2012-11-24 09:00:55 -08:00
Gareth Daniel Smith
f841d43f54 Fix a bug where read(buf, len) would fail if buf was big enough and succeed if it was too small ... which is the opposite of correct. 2012-11-24 15:19:51 +00:00
Niko Matsakis
117e5e3583 Implement LUB algorithm and add new unit-testing infrastructure for infer.
r=brson
2012-11-24 09:53:39 -05:00
Eric Holk
c961d214d9 Inline numeric operations for floats. 2012-11-23 13:27:02 -08:00
Graydon Hoare
dc34fb9219 std: try to fix breakage. 2012-11-22 23:32:30 -08:00
Brian Anderson
e8dcb654ce Silence some debug logging in rustc 2012-11-22 22:10:49 -08:00
Graydon Hoare
632def8f34 Back out (apparently) non-bootstrap-capable snapshots. Uh oh. 2012-11-22 18:38:21 -08:00
Graydon Hoare
eeb584ccbd std: initial sketch of workcache, barely does anything. 2012-11-22 18:31:12 -08:00
Graydon Hoare
105a0b9fc1 Oops. Snapshots file has spaces there. 2012-11-22 18:31:12 -08:00
Graydon Hoare
8378b9f240 Register snapshots. 2012-11-22 18:21:02 -08:00
Graydon Hoare
0c8a009dc9 libcore: fix build breakage on win32 stat. 2012-11-21 15:35:47 -08:00
Tim Chevalier
ef833d4101 Introduce a T_err type for type errors
This allows more errors to be non-fatal, as per #1871.

I only went through and started changing span_fatal to span_err in
check.rs. There are probably more errors that could be made
non-fatal. So if you see derived type errors appearing from now on,
file a bug!

r=graydon

Closes #1871
2012-11-21 12:44:51 -08:00
Erick Tryzelaar
77ef4e7176 change json::Deserializer to take a json enum
This allows the deserializer to be used on an already
parsed json object.
2012-11-21 11:48:16 -08:00
Brian Anderson
2d4c217186 rustdoc: Fix build error 2012-11-21 11:25:01 -08:00
Patrick Walton
e6d87a3ef4 libsyntax: Implement deriving correctly for type-parameterized structs and enums. r=brson 2012-11-21 10:27:37 -08:00
Patrick Walton
57588edf3b libsyntax: Implement deriving via a syntax extension for the IterBytes trait. r=brson 2012-11-21 10:27:34 -08:00
Patrick Walton
b053f0b5e6 libsyntax: Fix duplication of items that occurs if #[deriving_eq] is applied to a non-enum/non-struct. r=brson 2012-11-21 10:27:30 -08:00
Patrick Walton
e0876fdfc1 libsyntax: Implement deriving for enums with N-ary variants. r=brson 2012-11-21 10:27:13 -08:00
Brian Anderson
809bd3e5ef rustdoc: More demoding 2012-11-20 23:01:43 -08:00
Brian Anderson
451463ab39 rustdoc: Use more explicit self 2012-11-20 22:21:03 -08:00
Brian Anderson
415664181b rustdoc: Begin removing legacy modes 2012-11-20 22:13:50 -08:00
Brian Anderson
145e02347e rustdoc: Remove legacy exports 2012-11-20 21:04:37 -08:00
Erick Tryzelaar
a27f5239bd libcore: Add stat methods to paths
Should we return the posix types, or should we just use i64s?
Should we expose platform specific stat fields?
2012-11-20 16:39:31 -08:00
Erick Tryzelaar
20c11ca757 libcore: add stat functions to libc 2012-11-20 16:39:31 -08:00
Erick Tryzelaar
28745ce7c8 libcore: Clean up the path tests 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
ab5d84258e Add PosixPath and WindowsPath constructor fns 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
e1a552a628 libstd: fix warnings in sort 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
e70b481803 libcore: minor os.rs cleanup 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
079c768df5 libcore: Fix a typo 2012-11-20 16:39:30 -08:00
Erick Tryzelaar
9539724e8b Remove parentheses from closure argument types 2012-11-20 16:39:30 -08:00
Graydon Hoare
497a8b54b5 syntax: switch tt quoter to emit ~[tt], not tt. 2012-11-20 16:08:05 -08:00
Patrick Walton
ba01cd7fb0 libsyntax: Long line. rs=make-tidy 2012-11-20 11:59:20 -08:00
Patrick Walton
a7aecc46a5 rustc: Implement "deriving" for monomorphic structs via a syntax extension. r=brson 2012-11-20 11:58:19 -08:00
Graydon Hoare
633b9a8660 Register new snapshots. 2012-11-19 22:12:02 -08:00
Brian Anderson
886117bc53 Long lines 2012-11-19 18:02:29 -08:00
Brian Leibig
a7ecab4ae7 Added support for multiline commands in the REPL with :{ .. :} 2012-11-19 16:28:03 -08:00
Graydon Hoare
34b7db3bbc Merge pull request #4001 from jesse99/features/docs
Features/docs
2012-11-19 16:10:31 -08:00
Patrick Walton
318e534895 rustc: Implement explicit self for Eq and Ord. r=graydon 2012-11-19 15:33:11 -08:00
Graydon Hoare
4101587a88 register snapshots. 2012-11-19 15:13:42 -08:00
Brian Anderson
9bed0ddb0e Fix parsing of interpolated paths 2012-11-19 14:00:39 -08:00
Brian Anderson
371be3c6c4 Remove unused file_type enum from the parser 2012-11-18 18:09:41 -08:00
Brian Anderson
74b2e99797 Report errors better when failing to open files for sub-parsers 2012-11-18 18:09:41 -08:00
Brian Anderson
72cc1aca17 Parse file mods from .rs files 2012-11-18 18:09:41 -08:00
Brian Anderson
ddbff6fd2a syntax: Remove cdir_syntax. Unused 2012-11-18 18:09:41 -08:00
Jesse Jones
e5c9a8a479 Fixed lint problems 2012-11-18 17:05:04 -08:00
Brian Anderson
68c73dc5f2 Whitespace 2012-11-18 15:00:43 -08:00
Brian Anderson
a41903d234 Remove some unused code from lexer 2012-11-18 15:00:21 -08:00
Tim Chevalier
5e4ed709cb Merge pull request #3998 from jesse99/feature/getopts
Added support for options that take no arguments and may be repeated.
2012-11-18 13:56:57 -08:00
Jesse Jones
0fd9c9d054 Made from_str pure 2012-11-18 13:25:27 -08:00
Jesse Jones
361aea94f2 Fixing warnings for long and blank lines 2012-11-18 13:25:26 -08:00
Jesse Jones
333d268b3e Made merge_sort pure 2012-11-18 13:25:26 -08:00
Jesse Jones
6d99a2f8a9 Made more stuff pure.
escape functions in char, io.with_str_reader, base64 and md5sum, cell.empty_cell
and is_empty.
2012-11-18 13:25:26 -08:00
Jesse Jones
15989ecb13 Made most of the URL functions pure.
This closes #3782.
2012-11-18 13:25:25 -08:00
Jesse Jones
c5ab47e7ba Made Result.get, get_ref, is_ok, is_err, and iter methods pure.
Note that the function versions were already pure.
2012-11-18 13:25:25 -08:00
Jesse Jones
2c0dab02ad Made the time to string functions pure as well as empty_tm.
This closes #3919.
2012-11-18 13:25:25 -08:00
Jesse Jones
c58951ea7d Replace TmMut with inherited mutability 2012-11-18 13:25:24 -08:00
Jesse Jones
a9e13586a3 Moved strptime and strftime into private helper functions.
Makes the public API much easier to see and prepares the way for making them pure.
2012-11-18 13:25:24 -08:00
Jesse Jones
68c852ad3a Made Map.contains_key, contains_key_ref, and get pure. 2012-11-18 13:25:24 -08:00
Jesse Jones
d107e586ea Documented fmt! expression syntax.
Closes #3280
2012-11-18 11:00:39 -08:00
Jesse Jones
340955b3a5 Added support for options that take no arguments and may be repeated.
Closes #3568.
2012-11-17 19:43:39 -08:00
Brian Anderson
1a1e99c27d Merge remote-tracking branch 'brson/codemap'
Conflicts:
	src/libsyntax/ext/source_util.rs
2012-11-17 18:38:39 -08:00
Brian Anderson
e621e68c60 Remove unused MultiByteChar.sum field from codemap 2012-11-16 15:52:33 -08:00
Brian Anderson
7c72fd89f1 Add some docs to codemap 2012-11-16 15:15:17 -08:00
Tim Chevalier
428c58b9f9 Forbid duplicate supertraits
I actually already pushed most of this by accident before I meant to, but
r=nmatsakis anyway.

Closes #3953
2012-11-16 15:12:14 -08:00
Brian Anderson
2af088529f Remove incorrect comment from codemap 2012-11-16 14:55:52 -08:00
Graydon Hoare
5005be67cc syntax: rename quote! to quote_tokens!, add quote_{expr,type,item,pat,stmt}!
r=brson, Close #3976.
2012-11-16 14:50:49 -08:00
Brian Anderson
1ac28c36ac Remove unused types from codemap 2012-11-16 14:35:43 -08:00
Brian Anderson
4a5b28ff0c Stop tracking CodeMap offsets in the parse session. Big simplification 2012-11-16 14:22:09 -08:00
Brian Anderson
2374154ded Stop storing char positions in CodeMap 2012-11-16 14:10:17 -08:00
Brian Anderson
81d20156cd Change spans to use byte offsets instead of char offsets 2012-11-16 12:06:44 -08:00
Graydon Hoare
2bf6663cf0 librustc: Fastisel dislikes memmove, switch to memcpy. Perf win, r=catamorphism.
Fastisel actually has a special case for memcpy, the intrinsic, by name.
It has no such special case for memmove, so bails.

Close #3987.
2012-11-16 11:26:26 -08:00
Brian Anderson
8b309e54c7 re-xfail two tests 2012-11-16 11:19:45 -08:00
Tim Chevalier
624fbbd3d1 Update and un-xfail tests 2012-11-15 19:57:46 -08:00
Tim Chevalier
b9b21b2614 Update test and un-xfail it 2012-11-15 19:36:48 -08:00
Tim Chevalier
9d6ab9ae23 Update error message and un-xfail test 2012-11-15 19:36:48 -08:00
Tim Chevalier
39c306eeef Un-xfail working tests 2012-11-15 19:36:44 -08:00
Tim Chevalier
2fd2a56063 Update error message and un-xfail test 2012-11-15 18:41:17 -08:00
Tim Chevalier
f8bd95589f Add comments explaining why these tests are xfailed 2012-11-15 18:41:17 -08:00
Tim Chevalier
d4cc7db138 Un-xfail working test 2012-11-15 18:41:17 -08:00
Tim Chevalier
2f83baf857 Check for duplicate supertraits and forbid them
As per #3953
2012-11-15 18:41:17 -08:00
Tim Chevalier
82017b8416 Make staticness mismatch a fatal error
Exit with a fatal error, instead of recording a non-fatal error,
when we encounter an impl method that's static when its corresponding
trait method isn't (or vice versa). This is because code later on in
the typechecker will expect the staticness of the two methods to be
consistent and ICE otherwise.

r=nmatsakis

Closes #3969
2012-11-15 18:14:13 -08:00
Tim Chevalier
f9ca0c89d8 Add xfailed test for #3979 2012-11-15 18:03:35 -08:00
Brian Anderson
8cba337cce Remove CodeMap.lookup_byte_pos 2012-11-15 17:32:14 -08:00
Patrick Walton
64305174c9 librustc: Fix cross-crate reexports. rs=blocking-servo 2012-11-15 17:15:02 -08:00
Tim Chevalier
cb355bf7ad Update error message and un-xfail test 2012-11-15 17:14:28 -08:00
Tim Chevalier
5da43724bf Add comments explaining why these tests fail 2012-11-15 16:59:07 -08:00
Tim Chevalier
fb47e41411 Un-xfail working tests 2012-11-15 16:59:07 -08:00