1499 Commits

Author SHA1 Message Date
Patrick Walton
dc5df61bc1 librustc: Update the serializer to work properly with INHTWAMA, removing mutable fields in the process 2013-05-02 17:00:51 -07:00
bors
79a2b2eafc auto merge of #6192 : thestinger/rust/link_args, r=catamorphism
Lots of linking arguments need to be passed as -Wl,--foo so giving the
comma meaning at the rustc layer makes those flags impossible to pass.

Multiple arguments can now be passed from a shell by quoting the
argument: --link-args='-lfoo -Wl,--as-needed'.
2013-05-02 16:57:36 -07:00
bors
31599fe347 auto merge of #6172 : Sodel-the-Vociferous/rust/rm_trt_obj_magic_nums, r=catamorphism,graydon
I don't know how one would write a separate test for this sort of thing. Building the compiler, and `make check` worked, which should mean I didn't screw anything.
2013-05-02 16:03:37 -07:00
Niko Matsakis
4999d44d5b trans: fix borrow violation 2013-05-02 16:37:28 -04:00
bors
cdf604f434 auto merge of #6193 : youknowone/rust/static-string, r=sanxiyn 2013-05-02 12:36:36 -07:00
Niko Matsakis
88ec89d3fe fix numerous dynamic borrow failures 2013-05-02 14:32:37 -04:00
bors
b6988843e8 auto merge of #6125 : luqmana/rust/newtype-drop, r=pcwalton
#6090

r? @brson
2013-05-02 10:21:40 -07:00
Daniel Micay
7aa10e616b make link_args use spaces as separators
Lots of linking arguments need to be passed as -Wl,--foo so giving the
comma meaning at the rustc layer makes those flags impossible to pass.

Multiple arguments can now be passed from a shell by quoting the
argument: --link-args='-lfoo -Wl,--as-needed'.
2013-05-02 12:46:58 -04:00
Jeong YunWon
35b91e2f73 Use static strings 2013-05-03 01:41:09 +09:00
bors
1c64f7a0f7 auto merge of #6178 : erickt/rust/remove-drop, r=graydon
This patch removes ty::LegacyDtor, which is no longer used.
2013-05-02 08:18:38 -07:00
Seo Sanghyeon
6883814a84 Remove codes related to modes 2013-05-02 21:56:20 +09:00
Felix S. Klock II
46c2b5b045 Lets see if changing span_fatal to span_err gets me further through make check. 2013-05-02 08:55:08 +02:00
Felix S. Klock II
5f1a90ebe7 Issue 4391: rustc should not silently skip tests with erroneous signature. 2013-05-02 08:55:08 +02:00
bors
b42ea7f9ef auto merge of #6174 : sanxiyn/rust/static-string, r=brson 2013-05-01 22:06:37 -07:00
Erick Tryzelaar
c1de90cdb2 rustc: remove ty::LegacyDtor 2013-05-01 20:30:05 -07:00
Brendan Zabarauskas
e596128bd8 Remove 'Local Variable' comments 2013-05-02 13:22:04 +10:00
Niko Matsakis
fbaf8399c8 rustc: more fix for trans_lvalue rooted twice 2013-05-01 21:50:09 -04:00
Niko Matsakis
6210de9529 lang: fix code for maintaining borrow list 2013-05-01 21:47:09 -04:00
Seo Sanghyeon
4294aed01b Use static strings 2013-05-02 10:36:30 +09:00
Seo Sanghyeon
0c34cab3db Take string slices 2013-05-02 10:32:13 +09:00
Niko Matsakis
ef6b24d135 rustc: fix the fact that trans_lvalue rooted twice 2013-05-01 20:22:08 -04:00
Niko Matsakis
14bf5c4fe7 rustc: adjust total number of lang items 2013-05-01 20:19:28 -04:00
Daniel Ralston
c64471ab86 Add trait object field types to back/abi.rs, and use them
I've added trt_field_vtable, trt_field_box, and trt_field_tydesc, and
inserted them in place of the "magic numbers" used to access trait
object fields through GEPi().
2013-05-01 15:25:17 -07:00
Niko Matsakis
38f93f2121 wip---work on making rooting work properly 2013-05-01 13:48:00 -04:00
bors
55fbc47af1 auto merge of #6148 : erickt/rust/remove-drop, r=pcwalton
The drop block has been deprecated for quite some time. This patch series removes support for parsing it and all the related machinery that made drop work.

As a side feature of all this, I also added the ability to annote fields in structs. This allows comments to be properly associated with an individual field. However, I didn't update `rustdoc` to integrate these comment blocks into the documentation it generates.
2013-05-01 09:18:59 -07:00
Erick Tryzelaar
c2e1f47955 rustc: remove the rest of drop
Removes:

ast::struct_def::dtor
syntax::ast::ii_dtor
syntax::visit::fk_dtor
syntax::ast_map::node_dtor
syntax:struct_dtor
2013-05-01 07:49:41 -07:00
Niko Matsakis
4af2d90af5 add an option to debug borrows (RUST_DEBUG_BORROW) so you can
find out where the offending borrow occurred. This ... still needs
some work.
2013-05-01 10:30:54 -04:00
Niko Matsakis
84861101ec rustc: print out filename/line-number when a borrow fails 2013-05-01 09:14:47 -04:00
Niko Matsakis
5ab33a2975 correct incorrect handling of overloaded operators, exposing various other bits of rot 2013-05-01 08:49:48 -04:00
bors
f67239fac3 auto merge of #6147 : bjz/rust/numeric-traits, r=brson
After much discussion on IRC and #4819, we have decided to revert to the old naming of the `/` operator. This does not change its behavior. In making this change, we also have had to rename some of the methods in the `Integer` trait. Here is a list of the methods that have changed:

- `Quot::quot` -> `Div::div`
- `Rem::rem` - stays the same
- `Integer::quot_rem` -> `Integer::div_rem`
- `Integer::div` -> `Integer::div_floor`
- `Integer::modulo` -> `Integer::mod_floor`
- `Integer::div_mod` -> `Integer::div_mod_floor`
2013-05-01 01:51:35 -07:00
Brendan Zabarauskas
ee26c7c433 Revert rename of Div to Quot 2013-05-01 15:40:05 +10:00
bors
cb527bff09 auto merge of #6105 : Aatch/rust/linker-improv, r=pcwalton
Adds two extra flags: `--linker` which takes extra flags to pass to the linker, can be used multiple times and `--print-link-args` which prints out linker arguments. Currently `--print-link-args` needs execution to get past translation to get the `LinkMeta` data.

I haven't done tests or updated any extra documentation yet, so this pull request is currently here for review.
2013-04-30 18:36:45 -07:00
bors
7a857673ff auto merge of #6103 : catamorphism/rust/nonfatal-errors, r=catamorphism
r? @nikomatsakis typeck::check::_match wasn't suppressing derived errors properly.
Fixed it. (This will fix #5100)
2013-04-30 17:39:36 -07:00
Niko Matsakis
f236b850c0 remove some unused mut decls 2013-04-30 16:35:01 -04:00
Niko Matsakis
dc21daeeb8 borrowck: fix critical bug prevent us from ever using write guards :) 2013-04-30 16:34:22 -04:00
Jed Davis
8408012ca4 The null case of a nullable-poiner enum might not be nullary.
Cases like `Either<@int,()>` have a null case with at most one value but
a nonzero number of fields; if we misreport this, then bad things can
happen inside of, for example, pattern matching.

Closes #6117.
2013-04-30 11:36:22 -07:00
Seo Sanghyeon
97109aa51b Remove mach_sty 2013-05-01 03:27:14 +09:00
Niko Matsakis
418f991118 allover: numerous unused muts etc 2013-04-30 14:10:21 -04:00
Niko Matsakis
70b9ad1748 rustc: work around issue with default-method-simple, fix some rebase
errors
2013-04-30 14:09:14 -04:00
Niko Matsakis
545d51c160 rustc: remove modes 2013-04-30 14:08:18 -04:00
Niko Matsakis
7a0c1ea560 correct used_mut annotations for args, inherited case 2013-04-30 14:07:52 -04:00
Niko Matsakis
aa48a170d5 dataflow: fix flow of information through pattern variants 2013-04-30 14:07:26 -04:00
Niko Matsakis
a896440ca1 new borrow checker (mass squash) 2013-04-30 06:59:32 -04:00
Niko Matsakis
202b8dcdc4 adapt to snapshot 2013-04-30 06:43:02 -04:00
bors
c081ffbd1e auto merge of #6121 : luqmana/rust/newtype-cc, r=graydon
#6086
2013-04-30 02:21:37 -07:00
James Miller
2deefbe847 Change flags to -Z print-link-args and --link-args 2013-04-30 20:05:16 +12:00
Tim Chevalier
849f8142a2 rustc / test: Fix error message 2013-04-29 20:46:54 -07:00
Luqman Aden
c2b8f98917 librustc: Fix drop finalizer not running for newtype structs. 2013-04-29 19:48:49 -07:00
Luqman Aden
b50aa827a0 librustc: Fix pattern matching on cross crate newtype structs. 2013-04-29 17:35:36 -07:00
Brian Anderson
98f5c6d5b6 rustc: Only accept main functions at the crate level. #4433 2013-04-29 17:10:50 -07:00