Ariel Ben-Yehuda
709ce9f96d
kill the fake provided method stubs
...
this simplifies the code while reducing the size of libcore.rlib by
3.3 MiB (~1M of which is bloat a separate patch of mine removes
too), while reducing rustc memory usage on small crates by 18MiB.
This also simplifies the code considerably.
2015-10-01 00:14:56 +03:00
Vadim Petrochenkov
40ce80484c
Remove random Idents outside of libsyntax
2015-09-23 20:04:49 +03:00
bors
b2f379cdc2
Auto merge of #28535 - petrochenkov:name, r=nrc
...
Part of https://github.com/rust-lang/rust/issues/6993
This patch replaces `Ident`s with `Name`s in data structures of HIR and updates the dependent crates to compile and pass `make check`.
Some HIR structures still use `Ident`s, namely `PathSegment`, `PatIdent`, `ExprWhile`, `ExprLoop`, `ExprBreak` and `ExprAgain`, they need them for resolve (but `PathSegment` is special, see https://github.com/rust-lang/rust/issues/6993#issuecomment-141256292 ).
r? @nrc
2015-09-23 00:25:42 +00:00
bors
ad82e0ac18
Auto merge of #28504 - Eljay:fix-trait-privacy, r=nrc
...
Fixes #16264 / #18241 .
As far as I can tell, it should be impossible for a trait to be inaccessible if it's in scope, so this check is unnecessary. Are there any cases where this check is actually needed?
2015-09-22 22:42:00 +00:00
Vadim Petrochenkov
0af8e47546
Fix rebase
2015-09-22 20:46:23 +03:00
Vadim Petrochenkov
2a779062d8
Use Names in the remaining HIR structures with exception of...
...
PathSegment, PatIdent, ExprWhile, ExprLoop, ExprBreak and ExprAgain - they need Idents for resolve
2015-09-22 19:58:29 +03:00
Vadim Petrochenkov
64fb709f99
Use Names in hir::{Field, ExprMethodCall, ExprField}
2015-09-22 19:53:53 +03:00
Vadim Petrochenkov
a4af958786
Use Names in HIR Items
2015-09-22 19:53:52 +03:00
Vadim Petrochenkov
ae77dbb835
Use Names in HIR visitors and folders
2015-09-22 19:52:53 +03:00
bors
e9d2587766
Auto merge of #28364 - petrochenkov:usegate, r=alexcrichton
...
Closes https://github.com/rust-lang/rust/issues/28075
Closes https://github.com/rust-lang/rust/issues/28388
r? @eddyb
cc @brson
2015-09-22 01:12:26 +00:00
Eljay
f4f95eb3a9
Remove unnecessary trait accessibility check.
2015-09-19 00:58:36 +01:00
Vadim Petrochenkov
357982fae4
Workaround for imports with empty braces
2015-09-17 14:13:13 +03:00
Vadim Petrochenkov
50e42ea9f7
Correctly walk import lists in AST visitors
2015-09-17 14:13:12 +03:00
Simonas Kazlauskas
f5a99ae7fb
Remove Visibility field from enum variants
...
Followup on #28440
2015-09-17 10:02:59 +03:00
Guillaume Gomez
0477976867
Add error code for private struct field issue
2015-09-10 14:19:01 +02:00
Guillaume Gomez
a056d5869e
Add error code for tuple struct constructor error
2015-09-09 12:08:21 +02:00
Guillaume Gomez
6090cea184
Add error code for unnecessary visibility qualifier
2015-09-09 11:59:55 +02:00
Guillaume Gomez
bda7ec0755
Add error code for enum item visibility error
2015-09-09 11:50:26 +02:00
Guillaume Gomez
42e16223cf
Add new error code for visibility inside a function
2015-09-09 11:25:32 +02:00
Guillaume Gomez
c4a3936327
Add error code for privacy error on exported signature
2015-09-09 11:08:35 +02:00
Guillaume Gomez
5e9bfcd6d6
Add new error code for trait privacy error
2015-09-09 11:02:52 +02:00
Nick Cameron
facdf2ebb1
Add an intital HIR and lowering step
2015-09-03 10:02:36 +12:00
Niko Matsakis
e91bef2e05
fallout from moving def-id
2015-08-24 05:35:34 -04:00
Alex Crichton
2972b77134
Add issue for the rustc_private feature everywhere
2015-08-15 18:09:17 -07:00
Alex Crichton
737397c584
rollup merge of #27622 : eefriedman/https-url
...
Also fixes a few outdated links.
2015-08-11 22:11:25 -07:00
bors
8856927f64
Auto merge of #27451 - seanmonstar:use-groups-as, r=alexcrichton
...
An implementation of [RFC 1219](https://github.com/rust-lang/rfcs/pull/1219 ).
The RFC is not merged yet, but once merged, this could be.
2015-08-10 20:24:06 +00:00
Eli Friedman
bbbfed2f93
Use https URLs to refer to rust-lang.org where appropriate.
...
Also fixes a few outdated links.
2015-08-09 14:28:46 -07:00
Sean McArthur
cfcd449c4c
rustc: rename multiple imports in a list
2015-08-08 11:54:15 -07:00
Ariel Ben-Yehuda
eedb1cc576
rename ADTDef to AdtDef etc.
2015-08-07 15:03:09 +03:00
Ariel Ben-Yehuda
5f3c1412ad
use VariantDef instead of struct_fields
2015-08-06 16:54:40 +03:00
Ariel Ben-Yehuda
764310e7bb
introduce an ADTDef struct for struct/enum definitions
2015-08-06 14:16:56 +03:00
Oliver Schneider
00a5e66f81
remove get_ident
and get_name
, make as_str
sound
2015-07-28 18:07:20 +02:00
Eduard Burtescu
d256eb1c5d
rustc: remove MethodOrigin and use the container to distinguish inherent methods.
2015-07-04 17:51:31 +03:00
Eduard Burtescu
96d24a5c58
rustc: remove MethodOrigin::Object and use traits::VtableObject instead.
2015-07-04 06:21:00 +03:00
Eduard Burtescu
5620a58791
rustc_lint: use traits::select for methods in unconditional_recursion.
2015-07-04 06:21:00 +03:00
Eduard Burtescu
70365ed911
rustc: simplify ty::MethodOrigin and avoid trait item indices.
2015-07-04 06:21:00 +03:00
Eduard Burtescu
fe354e58bd
rustc: remove unused MethodStaticClosure variant of MethodOrigin.
2015-07-04 06:21:00 +03:00
Jared Roesch
79d02895ff
Begin refactor type checking state
...
This first patch starts by moving around pieces of state related to
type checking. The goal is to slowly unify the type checking state
into a single typing context. This initial patch moves the
ParameterEnvironment into the InferCtxt and moves shared tables
from Inherited and ty::ctxt into their own struct Tables. This
is the foundational work to refactoring the type checker to
enable future evolution of the language and tooling.
2015-06-27 13:43:20 -07:00
Eduard Burtescu
ad66c215aa
rustc: switch most remaining middle::ty functions to methods.
2015-06-26 07:34:57 +03:00
Eli Friedman
3c69db4c3c
Cleanup: rename middle::ty::sty and its variants.
...
Use camel-case naming, and use names which actually make sense in modern Rust.
2015-06-12 11:07:16 -07:00
Joshua Landau
d7f5fa4636
Conver reborrows to .iter() calls where appropriate
2015-06-11 13:56:07 +01:00
Eduard Burtescu
76eaed44d9
syntax: move ast_map to librustc.
2015-06-10 02:40:45 +03:00
Alex Crichton
0e21beb761
libs: Move favicon URLs to HTTPS
...
Helps prevent mixed content warnings if accessing docs over HTTPS.
Closes #25459
2015-05-15 16:04:01 -07:00
Carol Nichols
7ec8172225
Update old uses of ~ in comments and debugging statements
2015-05-03 20:16:02 -04:00
Sean Patrick Santos
7129e8815e
Functional changes for associated constants. Cross-crate usage of associated constants is not yet working.
2015-04-23 21:02:26 -06:00
Sean Patrick Santos
b5499775d6
Structural changes for associated constants
...
Introduces new variants and types in syntax::ast, middle::ty, and middle::def.
2015-04-23 21:02:25 -06:00
Tamir Duberstein
10f15e72e6
Negative case of len()
-> is_empty()
...
`s/([^\(\s]+\.)len\(\) [(?:!=)>] 0/!$1is_empty()/g`
2015-04-14 20:26:03 -07:00
bors
926f38e588
Auto merge of #23998 - nrc:impl-self, r=nikomatsakis
...
Closes #23909
r? @nikomatsakis (or anyone else, really)
2015-04-08 09:58:05 +00:00
Jonathan S
3cbc345cf7
In librustc*, convert many uses of ast::Ident to ast::Name, fixing much of #6993 .
2015-04-03 17:46:08 -05:00
Nick Cameron
dc8a8e9beb
Check uses of Self
in impls in the compiler rather than during expansion
...
Closes #23909
2015-04-03 22:47:53 +13:00