Commit graph

321 commits

Author SHA1 Message Date
llogiq
9f67ba7f8d re-applied birkenfeld's improvements 2015-08-18 14:18:36 +02:00
llogiq
6e0c103133 more small const improvements 2015-08-18 12:26:01 +02:00
llogiq
6182445cf5 Merge pull request #198 from birkenfeld/const_enh
consts: minor improvements
2015-08-18 11:29:03 +02:00
Georg Brandl
49ad73f6e4 consts: minor improvements 2015-08-18 11:07:13 +02:00
llogiq
8a9e03dd9f Merge pull request #196 from birkenfeld/const_struct
[rfc] consts: convert to using a struct with state
2015-08-18 11:02:04 +02:00
Georg Brandl
7f52239cab consts: convert to using a struct with state
Struct has the context reference (as an Option) and the
needed_resolution flag.
2015-08-17 19:58:21 +02:00
llogiq
202e66708e Merge pull request #195 from birkenfeld/impl_const_not
const eval: implement ! for integers
2015-08-17 17:02:26 +02:00
Georg Brandl
a2dcbfea65 const eval: implement ! for integers 2015-08-17 16:45:56 +02:00
llogiq
26f17e8c4a Merge pull request #194 from Manishearth/consts_neg_zero
added test and fixed negativity check in Partial{Eq, Ord} impl
2015-08-17 16:29:02 +02:00
llogiq
a2ee637be6 added test and fixed negativity check in Partial{Eq, Ord} impl 2015-08-17 16:24:57 +02:00
llogiq
59d0ae8739 Merge pull request #193 from Manishearth/const_bitop
Added bit operations to const folding
2015-08-17 15:15:21 +02:00
llogiq
c47402416b Added bit operations to const folding 2015-08-17 15:11:36 +02:00
llogiq
d7ec53b52f Merge pull request #192 from Manishearth/const_cmp
Const cmp
2015-08-17 13:25:40 +02:00
llogiq
4394362836 dogfooding 2015-08-17 13:23:17 +02:00
llogiq
9f134f8e95 added PartialEq/PartialOrd to ConstantVariant, used to implement comparing binops 2015-08-17 13:18:14 +02:00
llogiq
5087913304 Merge pull request #191 from Manishearth/fix-165
Closes #165
2015-08-17 12:11:32 +02:00
llogiq
0e67c0134f make float_cmp check for zero 2015-08-17 12:08:45 +02:00
llogiq
e354fdc3e8 added regression test for #189 2015-08-17 12:08:45 +02:00
llogiq
fb715ce45d fix 189, fixed a few warnings, ==/!= for consts, refactored consts test 2015-08-17 12:08:45 +02:00
llogiq
d3bdc6d1bf Merge pull request #190 from Manishearth/fix-189
Fix 189
2015-08-17 11:49:05 +02:00
llogiq
f7677b03e1 added regression test for #189 2015-08-17 11:46:45 +02:00
llogiq
84abfcd22d fix 189, fixed a few warnings, ==/!= for consts, refactored consts test 2015-08-17 11:43:36 +02:00
Manish Goregaokar
4f1fcd4d5b Merge pull request #184 from Manishearth/identity_op
Identity op now uses const folding, no longer follows const bindings
2015-08-17 14:35:45 +05:30
Manish Goregaokar
65deb956f1 Merge pull request #186 from birkenfeld/fix
loops: fix two trailing periods in lint msgs
2015-08-17 11:05:02 +05:30
Manish Goregaokar
85edd159f7 Merge pull request #185 from birkenfeld/iter_next_loop
new lint: iterating over any Iterator::next() result (fixes #182)
2015-08-17 11:04:58 +05:30
Georg Brandl
caeb72c47b loops: fix two trailing periods in lint msgs 2015-08-17 07:30:33 +02:00
Georg Brandl
e9a41e2374 new lint: lint when iterating over any Iterator::next() result (fixes #182) 2015-08-17 07:28:40 +02:00
llogiq
759b45a46d made is_negative(..) public (+doctest), fixed identity_op and precedence 2015-08-16 23:09:56 +02:00
llogiq
c4b07ead17 Merge pull request #179 from nweston/step-by-zero
New lint: Range::step_by(0) (fixes #95)
2015-08-16 20:12:52 +02:00
Nathan Weston
23a38c4170 New lint: Range::step_by(0) (fixes #95)
Uses type information so it can detect non-literal ranges as well
(Range or RangeFrom -- the other range types don't have step_by).
2015-08-16 12:58:54 -04:00
llogiq
e1438e7010 copied over cmp_owned fix from master 2015-08-16 16:13:44 +02:00
llogiq
4244f2479f dogfooding, part 2 2015-08-16 16:09:00 +02:00
llogiq
fe0de07b28 dogfooded 2015-08-16 16:05:51 +02:00
llogiq
03c7d7074d With working test now 2015-08-16 15:56:09 +02:00
Manish Goregaokar
164907ece2 restrict toplevel_ref_arg to only functions (fixes #170) 2015-08-16 17:24:03 +05:30
Manish Goregaokar
7a870ad46b Merge pull request #180 from birkenfeld/small_changes
Small changes
2015-08-16 13:12:56 +05:30
Georg Brandl
64954283c1 add some imports to guard against crate moves 2015-08-16 09:03:06 +02:00
Georg Brandl
47b605304d all: organize imports
* remove unused imports
* separate external and internal imports
* consistent import of rustc::lint
* move #[allow(unused_imports)] to local impl
2015-08-16 08:55:34 +02:00
Georg Brandl
997f345046 all: remove unneeded as_str() calls for ast::Name
Name has PartialEq and Display impls that do what we want.
2015-08-16 08:38:47 +02:00
Manish Goregaokar
f494f14aa6 Merge pull request #177 from birkenfeld/if_let_mini_fix
misc: fix check for unit body in "match -> if let" lint (fixes #172)
2015-08-15 14:12:34 +05:30
llogiq
8b9d27a625 Merge pull request #178 from birkenfeld/dogfood_shebang
util: make dogfood executable and give it a shebang
2015-08-15 10:25:01 +02:00
Georg Brandl
c64e373c9e util: make dogfood executable and give it a shebang 2015-08-15 09:59:23 +02:00
Georg Brandl
542bf8d50e misc: fix check for unit body in "match -> if let" lint (fixes #172) 2015-08-15 09:56:15 +02:00
Manish Goregaokar
767fa915ce Merge pull request #176 from birkenfeld/static_lt_fix
lifetimes: fix case with one unnamed and one static ref (fixes #171)
2015-08-15 13:08:20 +05:30
Georg Brandl
b299433de3 lifetimes: fix case with one unnamed and one static ref (fixes #171) 2015-08-15 09:36:07 +02:00
llogiq
b1920cb21c Merge pull request #174 from birkenfeld/small_fixes
methods: allow Option.unwrap by default
2015-08-15 08:27:33 +02:00
Georg Brandl
137a9f3def methods: allow Option.unwrap by default 2015-08-15 07:23:04 +02:00
llogiq
f23af0cfd5 changed const to consts to avoid keyword, added test, fixed a lot of bugs 2015-08-14 17:14:54 +02:00
Manish Goregaokar
84f9108808 Merge pull request #166 from Manishearth/contrib
add a few words on dogfood + update_lints
2015-08-14 18:42:33 +05:30
llogiq
3aa37e4997 Merge pull request #168 from Manishearth/eta-reduction
fixed false positives (at the cost of some false negatives)
2015-08-14 15:02:47 +02:00