Patrick Walton
99d44d24c7
librustc: Remove copy
expressions from the language.
2013-07-17 14:57:52 -07:00
Patrick Walton
99b33f7219
librustc: Remove all uses of "copy".
2013-07-17 14:57:51 -07:00
Patrick Walton
b4e674f6e6
librustc: Add a lint mode for unnecessary copy
and remove a bunch of them.
2013-07-17 14:56:42 -07:00
bors
9c1e530bde
auto merge of #7826 : michaelwoerister/rust/end_of_spanned, r=cmr
...
This is the first of a series of refactorings to get rid of the `codemap::spanned<T>` struct (see this thread for more information: https://mail.mozilla.org/pipermail/rust-dev/2013-July/004798.html ).
The changes in this PR should not change any semantics, just rename `ast::blk_` to `ast::blk` and add a span field to it. 95% of the changes were of the form `block.node.id` -> `block.id`. Only some transformations in `libsyntax::fold` where not entirely trivial.
2013-07-17 09:49:43 -07:00
Michael Woerister
0cc70743d2
Made ast::blk not use spanned<T> anymore.
2013-07-17 08:21:46 +02:00
Alex Crichton
0fd4d5d778
Sort lint attributes to print them in a more sane way
...
Closes #7818
2013-07-16 21:28:10 -07:00
Alex Crichton
23fbe936bf
Allow non-uppercase-statics by default
...
I think of this as a stylistic opinion which shouldn't necessarily be enforced
by default on all users of rust, but that's just my opinion.
2013-07-14 09:29:12 -07:00
bors
d582eeb1ec
auto merge of #7734 : alexcrichton/rust/issue-3395, r=sanxiyn
...
Also ends up fixing one case in libstd.
Closes #3395
2013-07-12 21:40:36 -07:00
bors
1ee54a8617
auto merge of #7725 : msullivan/rust/default-methods, r=pcwalton
...
r?
2013-07-12 17:28:28 -07:00
Alex Crichton
2cd9d7bc88
Expand ctypes warnings to warn about *int/*uint
...
Also ends up fixing one case in libstd
2013-07-11 19:45:25 -07:00
Michael Sullivan
3fa5203273
Take default methods out from behind the flag.
2013-07-11 15:51:10 -07:00
Seo Sanghyeon
f81986031c
Add a lint to detect unnecessarily qualified names
2013-07-10 19:09:03 +09:00
Daniel Micay
641aec7407
remove some method resolve workarounds
2013-07-07 19:51:13 -04:00
James Miller
47eca2113c
De-share ast::Ty
2013-07-07 22:51:10 +12:00
Seo Sanghyeon
c9b9462e8f
Remove visit_struct_method
2013-07-05 13:02:43 +09:00
Huon Wilson
eee6775642
Implement consuming iterators for ~[], remove vec::{consume, consume_reverse, map_consume}.
2013-07-04 00:46:49 +10:00
Huon Wilson
c437a16c5d
rustc: add a lint to enforce uppercase statics.
2013-07-01 17:52:57 +10:00
Huon Wilson
da4384583b
lint: make the non_camel_case_types lint work with scripts without a upper/lowercase distinction.
2013-07-01 17:46:57 +10:00
Huon Wilson
c0a20d2929
Remove vec::{map, mapi, zip_map} and the methods, except for .map, since this
...
is very common, and the replacement (.iter().transform().collect()) is very
ugly.
2013-06-30 21:59:44 +10:00
Corey Richardson
1662bd371c
Great renaming: propagate throughout the rest of the codebase
2013-06-29 11:20:02 -04:00
Philipp Brüschweiler
7295a6da92
Remove many shared pointers
...
Mostly just low-haning fruit, i.e. function arguments that were @ even
though & would work just as well.
Reduces librustc.so size by 200k when compiling without -O, by 100k when
compiling with -O.
2013-06-27 15:06:19 +02:00
Daniel Micay
e67c48a591
remove each
from vec, HashMap and HashSet
2013-06-25 16:28:02 -04:00
Alex Crichton
92424f0670
Add the warnings
lint attribute
2013-06-25 08:55:15 -07:00
Alex Crichton
8fdc8f392c
Support foreign 'static mut' variables as well
2013-06-23 18:00:32 -07:00
Ben Blum
ce857e3d60
Parse and typecheck (not kindcheck) bounds on trait paths.
2013-06-23 14:40:14 -04:00
Daniel Micay
d2e9912aea
vec: remove BaseIter implementation
...
I removed the `static-method-test.rs` test because it was heavily based
on `BaseIter` and there are plenty of other more complex uses of static
methods anyway.
2013-06-23 02:05:20 -04:00
Daniel Micay
49c74524e2
vec: rm old_iter implementations, except BaseIter
...
The removed test for issue #2611 is well covered by the `std::iterator`
module itself.
This adds the `count` method to `IteratorUtil` to replace `EqIter`.
2013-06-21 03:20:22 -04:00
Daniel Micay
585f5f7f79
add IteratorUtil to the prelude
2013-06-14 23:15:42 -04:00
Huon Wilson
096f6f56a8
Use @str instead of @~str in libsyntax and librustc. Fixes #5048 .
...
This almost removes the StringRef wrapper, since all strings are
Equiv-alent now. Removes a lot of `/* bad */ copy *`'s, and converts
several things to be &'static str (the lint table and the intrinsics
table).
There are many instances of .to_managed(), unfortunately.
2013-06-13 10:20:52 +10:00
Felix S. Klock II
ecef9ad75a
Visitor refactoring: Step 1, couple (Env, vt<Env>) together in a tuple.
2013-06-12 13:04:37 +02:00
Huon Wilson
26d7b460a3
std: generalise .trim_chars to use CharEq.
2013-06-12 12:21:05 +10:00
Huon Wilson
9e60e2e297
std: convert str::replace to a method.
2013-06-12 12:21:04 +10:00
Daniel Micay
004816f4c6
option: remove redundant old_iter impls
2013-06-11 14:06:12 -04:00
Huon Wilson
ec5a028ada
std: convert str::char_at* to methods.
2013-06-10 23:02:55 +10:00
Huon Wilson
0cfc08d81e
std: convert character-based str::find_* to methods. Add .slice_{to,from} methods.
2013-06-10 23:02:54 +10:00
Huon Wilson
c32fb53cf9
std: remove str::{len, slice, is_empty} in favour of methods.
2013-06-10 23:02:54 +10:00
Erick Tryzelaar
23808efd11
syntax: move callee_id into the expr_ variants
2013-06-01 15:31:56 -07:00
Alex Crichton
aed53f9bf0
Promote unreachable code to being a lint attribute
2013-05-30 20:45:13 -05:00
Alex Crichton
4a5d887b58
Allow doc(hidden) and --test to disable doc linting
2013-05-30 01:02:55 -05:00
Alex Crichton
af995ce1e7
Make missing documentation linting more robust
...
Add some more cases for warning about missing documentation, and also add a test
to make sure it doesn't die in the future.
2013-05-30 01:02:55 -05:00
Patrick Walton
206ab89629
librustc: Stop reexporting the standard modules from prelude.
2013-05-29 19:04:53 -07:00
Alex Crichton
ae7df57c5a
Prevent refcount cycles during linting
...
Shaves off ~600MB of memory while compiling rustc
2013-05-27 22:22:09 -05:00
bors
5d04ee805b
auto merge of #6715 : Xazax-hun/rust/incoming, r=graydon
...
Preliminary implementation for: https://github.com/mozilla/rust/issues/6275
This is my first (non hello world) rust code, so it may not be idiomatic.
2013-05-27 13:44:08 -07:00
Seo Sanghyeon
363e672736
Use adjustments table for allocation lint
2013-05-28 03:12:13 +09:00
Gábor Horváth
3d61931fca
Only trigger missing documentation warnings to public functions and fields.
2013-05-24 14:13:41 +02:00
Gábor Horváth
c6581325ac
Warnings for missing documentations.
2013-05-24 10:27:31 +02:00
Erick Tryzelaar
9635b30837
cleanup warnings from librustc
2013-05-23 17:57:07 -07:00
Patrick Walton
c532e033c9
librustc: Change std
to extra
throughout libsyntax and librustc
2013-05-22 21:57:08 -07:00
Patrick Walton
f3723cf7c4
libextra: Rename the actual metadata names of libcore to libstd and libstd to libextra
2013-05-22 21:57:07 -07:00
Alex Crichton
82fa0018c8
Remove all unnecessary allocations (as flagged by lint)
2013-05-20 16:10:40 -05:00