about summary refs log tree commit diff
path: root/src/libsyntax
AgeCommit message (Collapse)AuthorLines
2018-12-06Auto merge of #54517 - mcr431:53956-panic-on-include_bytes-of-own-file, ↵bors-63/+74
r=michaelwoerister 53956 panic on include bytes of own file fix #53956 When using `include_bytes!` on a source file in the project, compiler would panic on subsequent compilations because `expand_include_bytes` would overwrite files in the source_map with no source. This PR changes `expand_include_bytes` to check source_map and use the already existing src, if any.
2018-12-05Rollup merge of #56452 - sinkuu:redundant_clone, r=nikicPietro Albini-1/+1
Remove redundant clones
2018-12-05Auto merge of #55466 - sinkuu:cleanup, r=petrochenkovbors-63/+34
syntax: Use iterator and pattern APIs instead of `char_at` Iterating over chars with the `char_at(str, i)` `i += ch.len_utf8()` loop seems unidiomatic.
2018-12-05Fix pretty testShotaro Yamada-1/+1
2018-12-04adds DocTest filename variant, refactors doctest_offset out of source_map, ↵Matthew Russo-34/+21
fixes remaining test failures
2018-12-04updates all Filename variants to take a fingerprintMatthew Russo-13/+16
2018-12-04new_source_file no longer enters duplicate files, expand_include_bytes ↵Matthew Russo-19/+40
includes the source if it can convert bytes to string
2018-12-04Replace usages of `..i + 1` ranges with `..=i`.Corey Farwell-1/+1
2018-12-04cleanup: remove static lifetimes from constsljedrz-21/+20
2018-12-04Tidy fixupOliver Scherer-1/+1
2018-12-04Allow calling `const unsafe fn` in `const fn` behind a feature gateOliver Scherer-0/+3
2018-12-04Remove redundant cloneShotaro Yamada-1/+1
2018-12-04Fix testShotaro Yamada-1/+2
2018-12-04Use iterator and pattern APIs instead of `char_at`Shotaro Yamada-62/+32
2018-12-04Address review commentsVadim Petrochenkov-23/+10
2018-12-04syntax: Remove `#[non_exhaustive]` from `Edition`Vadim Petrochenkov-1/+0
`Edition` is not a public API, we want users to break when a new edition is added
2018-12-04syntax: Rename some keywordsVadim Petrochenkov-13/+13
`CrateRoot` -> `PathRoot`, `::` doesn't necessarily mean crate root now `SelfValue` -> `SelfLower`, `SelfType` -> `SelfUpper`, both `self` and `Self` can be used in type and value namespaces now
2018-12-03Rollup merge of #56438 - yui-knk:remove_not_used_DotEq_token, r=petrochenkovkennytm-6/+1
Remove not used `DotEq` token Currently libproc_macro does not use `DotEq` token. https://github.com/rust-lang/rust/pull/49545 changed libproc_macro to not generate `DotEq` token.
2018-12-03Rollup merge of #56433 - yui-knk:update_comment_of_parse_visibility, ↵kennytm-3/+4
r=petrochenkov Add description about `crate` for parse_visibility's comment This rule was introduced by https://github.com/rust-lang/rust/pull/45401.
2018-12-03Rollup merge of #56419 - mark-i-m:remove-try, r=Centrilkennytm-5/+3
Remove some uses of try!
2018-12-03Rollup merge of #56412 - petrochenkov:extself, r=Centrilkennytm-1/+1
Update tracking issue for `extern_crate_self`
2018-12-03Rollup merge of #56366 - alexreg:stabilise-self_in_typedefs, r=Centrilkennytm-6/+5
Stabilize self_in_typedefs feature [**Tracking Issue**](https://github.com/rust-lang/rust/issues/49303) r? @centril
2018-12-02Remove not used `DotEq` tokenyui-knk-6/+1
Currently libproc_macro does not use `DotEq` token. https://github.com/rust-lang/rust/pull/49545 changed libproc_macro to not generate `DotEq` token.
2018-12-02Delay gensym creation for "underscore items" until name resolutionVadim Petrochenkov-14/+13
Prohibit `static _` Fis unused import warnings for `use foo as _` Add more tests for `use foo as _`
2018-12-02Fix "line longer than 100 chars"yui-knk-3/+4
2018-12-02Add description about `crate` for parse_visibility's commentyui-knk-1/+1
This rule was introduced by https://github.com/rust-lang/rust/pull/45401.
2018-12-01remove some uses of try!Mark Mansi-5/+3
2018-12-01Update tracking issue for `extern_crate_self`Vadim Petrochenkov-1/+1
2018-12-01resolve: Support aliasing local crate root in extern preludeVadim Petrochenkov-1/+8
2018-11-30Use appropriate terminology based on heuristicEsteban Küber-13/+24
2018-11-30Removed feature gate.Alexander Regueiro-6/+5
2018-11-30Suggest an appropriate token when encountering `pub Ident<'a>`Esteban Küber-11/+28
2018-12-01Rollup merge of #56365 - alexreg:stabilise-self_struct_ctor, r=Centrilkennytm-4/+3
Stabilize self_struct_ctor feature. [**Tracking Issue**](https://github.com/rust-lang/rust/issues/51994)
2018-12-01Rollup merge of #56336 - nnethercote:clean-up-pp, r=nikomatsakiskennytm-201/+216
Clean up and streamline the pretty-printer Some minor improvements.
2018-12-01Rollup merge of #56268 - nnethercote:fold_opt_expr-recycle, r=petrochenkovkennytm-39/+73
Reuse the `P` in `InvocationCollector::fold_{,opt_}expr`. This requires adding a new method, `P::filter_map`. This commit reduces instruction counts for various benchmarks by up to 0.7%.
2018-11-30Removed feature gate.Alexander Regueiro-4/+3
2018-11-30Add precise_pointer_size_matching featurevarkor-0/+2
2018-11-30Stabilise exhaustive_integer_patternsvarkor-2/+2
2018-11-30proc_macro: introduce a "bridge" between clients (proc macros) and servers ↵Eduard-Mihai Burtescu-2/+2
(compiler front-ends).
2018-11-29Rollup merge of #56330 - estebank:cleanup-span, r=zackmdavisGuillaume Gomez-2/+2
Clean up span in non-trailing `..` suggestion
2018-11-29Rollup merge of #56257 - mark-i-m:rustc-guide-links, r=nikomatsakisGuillaume Gomez-2/+2
rustc-guide has moved to rust-lang/ r? @nikomatsakis
2018-11-29Rollup merge of #56255 - jasonl:update-old-documents, r=michaelwoeristerGuillaume Gomez-3/+2
Update outdated code comments in StringReader For the detection of newlines in the lexer, this is now done in `analyze_source_file.rs`.
2018-11-29Rollup merge of #56220 - estebank:suggest-lifetime-move, r=nikomatsakisGuillaume Gomez-8/+45
Suggest appropriate place for lifetime when declared after type arguments
2018-11-29Split up `pretty_print` and `print`.Nicholas Nethercote-150/+152
`pretty_print` takes a `Token` and `match`es on it. But the particular `Token` kind is known at each call site, so this commit splits it into five functions: `pretty_print_eof`, `pretty_print_begin`, etc. This commit also does likewise with `print`, though there is one callsite for `print` where the `Token` kind isn't known, so a generic `print` has to stay (but it now just calls out to the various `print_*` functions).
2018-11-29Use `Cow` in `Token::String`.Nicholas Nethercote-57/+63
`Printer::word` takes a `&str` and converts it into a `String`, which causes an allocation. But that allocation is rarely necessary, because `&str` is almost always a `&'static str` or a `String` that won't be used again. This commit changes `Token::String` so it holds a `Cow<'static, str>` instead of a `String`, which avoids a lot of allocations.
2018-11-29Remove `huge_word` and `zero_word`.Nicholas Nethercote-9/+16
They are unused. The commit also adds some blank lines between some methods.
2018-11-29Fix whitespace in `pp.rs`.Nicholas Nethercote-126/+126
This commit converts some 2-space indents to 4-space indents.
2018-11-28Clean up span in non-trailing `..` suggestionEsteban Küber-2/+2
2018-11-27remove uses of feature gateMark Mansi-1/+0
2018-11-27remove some unused varsMark Mansi-6/+6