3490 Commits

Author SHA1 Message Date
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
Tim Chevalier
d2ad028a7c Rename std::ebml::Reader => std::ebml::reader, same for writer
Closes #4076
2012-12-06 16:14:54 -08:00
Brian Anderson
3464f60c00 Remove previous x86 data corruption workaround. #4054 2012-12-06 15:26:22 -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
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
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
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
00c856c0b1 Update license, add license boilerplate to most files. Remainder will follow. 2012-12-03 17:12:14 -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
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
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
Graydon Hoare
d783f4d7bb libs: Remove transitionary material on iter_bytes, add workcache to build. 2012-11-30 10:33:16 -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
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
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
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
ee076f63f9 Allow for macros to occur in statement position. 2012-11-29 12:09:10 -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
Brian Anderson
65bd40e300 Remove uses of #[merge] 2012-11-28 17:09:26 -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
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
ca6970a65e librustc: Make overloaded operators with explicit self translate correctly 2012-11-28 11:01:14 -08: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
Patrick Walton
1c348e6e38 librustc: Implement @mut [T] as the new replacement for @[mut T] 2012-11-27 09:23:31 -08:00