about summary refs log tree commit diff
path: root/src/test/pretty
AgeCommit message (Collapse)AuthorLines
2020-03-26Update tests to use llvm_asm!Amanieu d'Antras-8/+8
2020-03-26introduce `negative_impls` feature gate and documentNiko Matsakis-1/+1
They used to be covered by `optin_builtin_traits` but negative impls are now applicable to all traits, not just auto traits. This also adds docs in the unstable book for the current state of auto traits.
2020-03-18Rollup merge of #70075 - GuillaumeGomez:fix-repr-display, r=petrochenkovMazdak Farrokhzad-6/+5
Fix repr pretty display Fixes #70027. r? @varkor
2020-03-18Rollup merge of #69838 - Centril:expand-module, r=petrochenkovMazdak Farrokhzad-0/+1
Expansion-driven outline module parsing After this PR, the parser will not do any conditional compilation or loading of external module files when `mod foo;` is encountered. Instead, the parser only leaves `mod foo;` in place in the AST, with no items filled in. Expansion later kicks in and will load the actual files and do the parsing. This entails that the following is now valid: ```rust #[cfg(FALSE)] mod foo { mod bar { mod baz; // `foo/bar/baz.rs` doesn't exist, but no error! } } ``` Fixes https://github.com/rust-lang/rust/issues/64197. r? @petrochenkov
2020-03-18use pretty-compare-only in a testMazdak Farrokhzad-0/+1
2020-03-17Update pretty testsGuillaume Gomez-6/+5
2020-03-17Update tests for erasing regions in typeckMatthew Jasper-22/+22
2020-03-04Extent pretty-print testAaron Hill-0/+9
2020-03-04Permit attributes on 'if' expressionsAaron Hill-0/+28
Previously, attributes on 'if' expressions (e.g. #[attr] if true {}) were disallowed during parsing. This made it impossible for macros to perform any custom handling of such attributes (e.g. stripping them away), since a compilation error would be emitted before they ever had a chance to run. This PR permits attributes on 'if' expressions ('if-attrs' from here on). Both built-in attributes (e.g. `#[allow]`, `#[cfg]`) are supported. We still do *not* accept attributes on 'other parts' of an if-else chain. That is, the following code snippet still fails to parse: ```rust if true {} #[attr] else if false {} else #[attr] if false {} #[attr] else {} ```
2020-02-21print vis & defaultness for nested itemsMazdak Farrokhzad-26/+47
2020-02-13parser: unify item list parsing.Mazdak Farrokhzad-0/+7
as a consequence, `trait X { #![attr] }` becomes legal.
2020-02-07add regression testMikhail Babenko-0/+42
2020-02-02pretty: print attrs in struct exprMazdak Farrokhzad-0/+16
2020-01-24Remove unused ignore-license directivesTomasz Miąsko-5/+0
The tidy check was removed in rust-lang/rust#53617
2019-12-20ast_stmt_expr_attr -> pretty & ui testsMazdak Farrokhzad-0/+175
2019-12-18Add more tests for raw_ref_opMatthew Jasper-0/+12
2019-12-07Print the visibility in `print_variant`.Mazdak Farrokhzad-0/+8
2019-11-02Merge branch 'master' into format-temporariesJon Gjengset-1/+1
2019-10-28Fix a previously forgotten pretty-printing test after a change to the ↵Patryk Wychowaniec-1/+1
pretty-printing mechanism.
2019-09-28Update pretty-print test with new format! implJon Gjengset-26/+30
2019-09-15Print visibility of `macro` itemsMatthew Jasper-1/+1
2019-08-25pprust: Do not print spaces before some tokensVadim Petrochenkov-9/+6
2019-08-16Remove meaningless comments in src/testsd234678-2/+0
2019-08-10resolve: Remove remaining special cases from built-in macrosVadim Petrochenkov-5/+5
2019-07-15pprust: Support `macro` macrosVadim Petrochenkov-0/+7
2019-07-15pprust: Fix formatting regressions from the previous commitsVadim Petrochenkov-10/+57
Fix some remaining cases of bad formatting Update some failing tests
2019-07-15pprust: Do not convert attributes into `MetaItem`s for printingVadim Petrochenkov-2/+9
Fixes https://github.com/rust-lang/rust/issues/62628
2019-07-15pprust: Use `print_mac_common` for delimited token groupsVadim Petrochenkov-3/+3
2019-07-15pprust: Use `print_mac_common` for `macro_rules` definitionsVadim Petrochenkov-3/+5
2019-07-15pprust: Move some methods to the `PrintState` traitVadim Petrochenkov-2/+2
So that path and macro argument printing code can be shared
2019-06-08Introduce `#[rustc_dummy]` attribute and use it in testsVadim Petrochenkov-155/+146
Unlike other built-in attributes, this attribute accepts any input
2019-05-24Move async/await tests to test/ui/async-awaitvarkor-7/+0
2019-03-15rustc: pass Option<&Substs> and Namespace around in ty::item_path.Eduard-Mihai Burtescu-17/+17
2019-03-14Moved issue tests to subdirs and normalised names.Alexander Regueiro-6/+10
2019-03-03NitAlexander Regueiro-1/+1
2019-03-02Fix C-variadic function printingDan Robertson-0/+15
There is no longer a need to append the string `", ..."` to a functions args as `...` is parsed as an argument and will appear in the functions arguments.
2019-01-26Pretty print `$crate` as `crate` or `crate_name` in more casesVadim Petrochenkov-0/+25
2018-12-25Remove licensesMark Rousskov-574/+0
2018-12-19Reintroduce special pretty-printing for `$crate` when it's necessary for ↵Vadim Petrochenkov-2/+2
proc macros
2018-12-07Various minor/cosmetic improvements to codeAlexander Regueiro-1/+1
2018-11-30tests: use `force-host` and `no-prefer-dynamic` in all proc_macro tests.Eduard-Mihai Burtescu-0/+1
2018-11-30tests: remove ignore-stage1 where possible in proc_macro tests.Eduard-Mihai Burtescu-1/+0
2018-10-02abolish ICE when pretty-printing async blockZack M. Davis-0/+7
Joshua Netterfield reported an ICE when the unused-parentheses lint triggered around an async block (#54752). In order to compose an autofixable suggestion, the lint invokes the pretty-printer on the unnecessarily-parenthesized expression. (One wonders why the lint doesn't just use `SourceMap::span_to_snippet` instead, to preserve the formatting of the original source?—but for that, you'd have to ask the author of 5c9f806d.) But then the pretty-printer panics when trying to call `<pprust::State as PrintState>::end` when `State.boxes` is empty. Empirically, the problem would seem to be solved if we start some "boxes" beforehand in the `ast::ExprKind::Async` arm of the big match in `print_expr_outer_attr_style`, exactly like we do in the immediately-preceding match arm for `ast::ExprKind::Block`—it would seem pretty ("pretty") reasonable for the pretty-printing of async blocks to work a lot like the pretty-printing of ordinary non-async blocks, right?? Of course, it would be shamefully cargo-culty to commit code on the basis of this kind of mere reasoning-by-analogy (in contrast to understanding the design of the pretty-printer in such detail that the correctness of the patch is comprehended with all the lucid certainty of mathematical proof, rather than being merely surmised by intuition). But maybe we care more about fixing the bug with high probability today, than with certainty in some indefinite hypothetical future? Maybe the effort is worth a fifth of a shirt?? Humbly resolves #54752.
2018-09-10update result of issue 12590 testTinco Andringa-1/+1
2018-09-10Fixed the test to match the compiler's output.Felix S. Klock II-6/+10
2018-09-10Correctly close indentation blocks when pretty printing non-inline moduleTinco Andringa-1/+2
2018-09-10pretty=expanded should expand mod declarationsTinco Andringa-0/+42
2018-09-10Track whether module declarations are inline (fixes #12590)Tinco Andringa-0/+31
2018-08-23Stabilize 'attr_literals' feature.Sergio Benitez-1/+1
2018-08-14syntax: gensym the injected std/core extern crates in the Rust 2018 edition.Eduard-Mihai Burtescu-2/+2