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
Alex Crichton
074799b4c5
Implement a lint mode to detect unnecessary allocations
2013-05-20 16:08:50 -05:00
Brian Anderson
66319b0278
Register snapshots
2013-05-19 23:34:32 -07:00
Huon Wilson
aa179cb0f1
rustc: relax limits on (u)int type limit lint. Fixes #6130 .
2013-05-18 01:49:36 +10:00
Alex Crichton
4d44abd52a
Change lints to indicate exactly where the level was set
2013-05-17 00:54:03 -04:00
Alex Crichton
1daaf785ab
Optimize lint passes to perform far fewer allocations
...
Achieves ~3x speedup on lint passes for libcore
2013-05-17 00:49:17 -04:00
Alex Crichton
030c666cc1
Re-implement lint with less emphasis on item ids
...
This way it's much easier to add lints throughout compilation correctly, and
functions on impls can alter the way lints are emitted.
2013-05-17 00:49:16 -04:00
Alex Crichton
5614e83e81
Remove vecs_implicitly_copyable from the compiler
2013-05-14 12:25:18 -04:00
bors
7a4c6e587d
auto merge of #6325 : sammykim/rust/lint-name, r=graydon
...
Fix #3525 .
2013-05-09 08:54:38 -07:00
Patrick Walton
3affc6ed40
librustc: Fix merge fallout.
2013-05-08 17:04:02 -07:00
Patrick Walton
db4573a776
librustc: Remove mutable fields from the language.
...
They're still parsed though, to get through bootstrapping.
2013-05-08 17:04:00 -07:00
Sangeun Kim
dc48a558b6
Show lint names
2013-05-08 17:23:48 +09:00
bors
86500fbb13
auto merge of #6297 : sammykim/rust/static-lint-table, r=luqmana
2013-05-07 23:18:39 -07:00
Sangeun Kim
356ebe8792
extranous thing is removed
2013-05-08 10:42:47 +09:00
Sangeun Kim
7455f986a8
Make lint_table static
2013-05-07 16:28:58 +09:00
Niko Matsakis
4300d4d2fa
Merge remote-tracking branch 'mozilla/incoming' into issue-5910-dyna-freeze
...
Conflicts:
src/libcore/core.rc
src/libcore/hashmap.rs
src/libcore/num/f32.rs
src/libcore/num/f64.rs
src/libcore/num/float.rs
src/libcore/num/int-template.rs
src/libcore/num/num.rs
src/libcore/num/strconv.rs
src/libcore/num/uint-template.rs
src/libcore/ops.rs
src/libcore/os.rs
src/libcore/prelude.rs
src/libcore/rt/mod.rs
src/libcore/unstable/lang.rs
src/librustc/driver/session.rs
src/librustc/middle/astencode.rs
src/librustc/middle/borrowck/check_loans.rs
src/librustc/middle/borrowck/gather_loans.rs
src/librustc/middle/borrowck/loan.rs
src/librustc/middle/borrowck/preserve.rs
src/librustc/middle/liveness.rs
src/librustc/middle/mem_categorization.rs
src/librustc/middle/region.rs
src/librustc/middle/trans/base.rs
src/librustc/middle/trans/inline.rs
src/librustc/middle/trans/reachable.rs
src/librustc/middle/typeck/check/_match.rs
src/librustc/middle/typeck/check/regionck.rs
src/librustc/util/ppaux.rs
src/libstd/arena.rs
src/libstd/ebml.rs
src/libstd/json.rs
src/libstd/serialize.rs
src/libstd/std.rc
src/libsyntax/ast_map.rs
src/libsyntax/parse/parser.rs
src/test/compile-fail/borrowck-uniq-via-box.rs
src/test/compile-fail/regions-infer-borrow-scope-within-loop.rs
src/test/run-pass/borrowck-nested-calls.rs
2013-05-05 15:11:04 -04:00
Niko Matsakis
0b0b8018a6
add warning for #6248 and remove instances of it
2013-05-05 12:17:59 -04:00
bors
b42ea7f9ef
auto merge of #6174 : sanxiyn/rust/static-string, r=brson
2013-05-01 22:06:37 -07:00
Brendan Zabarauskas
e596128bd8
Remove 'Local Variable' comments
2013-05-02 13:22:04 +10:00
Seo Sanghyeon
4294aed01b
Use static strings
2013-05-02 10:36:30 +09: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
Patrick Walton
f30f54e9d0
librustc: Remove the concept of modes from the compiler.
...
This commit does not remove `ty::arg`, although that should be
possible to do now.
2013-04-29 14:30:55 -07:00
Daniel Micay
f792baba42
only use #[no_core] in libcore
2013-04-27 21:34:24 -04:00
Alex Crichton
8884c6abdb
Use backticks for the unsafe keyword in error messages
2013-04-23 02:06:47 -04:00
Alex Crichton
d1985c9dd0
Implement a lint mode to deal with unused 'mut' variables
2013-04-20 21:02:38 -04:00
Alex Crichton
3c2a44b60f
Don't warn about unsafe functions which don't need to be unsafe
2013-04-20 15:52:05 -04:00
Alex Crichton
1e4a439f7f
rustc: de-mode + fallout from libsyntax changes
2013-04-19 23:23:23 -04:00
Alex Crichton
4bfa3c6663
Add a lint mode for unused unsafe blocks/functions
2013-04-14 01:15:46 -04:00
Niko Matsakis
5606fc0c90
Revert map.each to something which takes two parameters
...
rather than a tuple. The current setup iterates over
`BaseIter<(&'self K, &'self V)>` where 'self is a lifetime declared
*in the each method*. You can't place such a type in
the impl declaration. The compiler currently allows it,
but this will not be legal under #5656 and I'm pretty sure
it's not sound now.
2013-04-10 07:51:48 -07:00
Alex Crichton
3e67085d7a
Allow lint modes to be used on unused variables and dead assignments
2013-04-09 13:48:44 -04:00
Niko Matsakis
d28f734412
Refactor so that references to traits are not represented using a type with a
...
bare function store (which is not in fact a kind of value) but rather
ty::TraitRef. Removes many uses of fail!() and other telltale signs of
type-semantic mismatch.
cc #4183 (not a fix, but related)
2013-04-05 05:36:02 -04:00
Daniel Micay
cc148b58ff
rename Linear{Map,Set} => Hash{Map,Set}
2013-04-03 10:30:36 -04:00
Daniel Micay
44029a5bbc
hashmap: rm linear namespace
2013-04-03 10:30:18 -04:00
Brian Anderson
e3327d3833
Fix warnings
2013-03-31 20:22:47 -07:00
Niko Matsakis
6965fe4bce
Add AbiSet and integrate it into the AST.
...
I believe this patch incorporates all expected syntax changes from extern
function reform (#3678 ). You can now write things like:
extern "<abi>" fn foo(s: S) -> T { ... }
extern "<abi>" mod { ... }
extern "<abi>" fn(S) -> T
The ABI for foreign functions is taken from this syntax (rather than from an
annotation). We support the full ABI specification I described on the mailing
list. The correct ABI is chosen based on the target architecture.
Calls by pointer to C functions are not yet supported, and the Rust type of
crust fns is still *u8.
2013-03-29 18:36:20 -07:00
Patrick Walton
1e91595520
librustc: Remove fail_unless!
2013-03-29 16:39:08 -07:00
Alex Crichton
be57d745d2
Removing unused imports
2013-03-28 23:56:46 -04:00
Patrick Walton
8b56a8380b
librustc: Modify all code to use new lifetime binder syntax
2013-03-26 21:30:17 -07:00