aboutsummaryrefslogtreecommitdiff
path: root/crates
Commit message (Collapse)AuthorAgeFilesLines
...
* | | unsafe: Clean up, improve tracking, add debug_assertPaul Daniel Faria2020-06-274-153/+232
| | | | | | | | | | | | | | | | | | Move unsafe_expressions to unsafe_validation.rs, replace vec tracking of child exprs with inline macro, add debug assert to ensure tracked children match walked children exactly
* | | Add HighlightTag::Operator, use it for unsafe deref. Move unsafe validation ↵Paul Daniel Faria2020-06-2711-58/+81
| | | | | | | | | | | | to its own file
* | | Account for deref token in syntax highlighting of unsafe, add test for that casePaul Daniel Faria2020-06-271-0/+1
| | |
* | | Track expr parents during lowering, use parent map when checking if unsafe ↵Paul Daniel Faria2020-06-274-100/+177
| | | | | | | | | | | | exprs are within unsafe blocks
* | | Address review comments, have MissingUnsafe diagnostic point to each unsafe ↵Paul Daniel Faria2020-06-273-25/+19
| | | | | | | | | | | | use, update tests
* | | Rename Expr::UnsafeBlock to Expr::UnsafePaul Daniel Faria2020-06-274-5/+5
| | |
* | | Track unsafe blocks, don't trigger missing unsafe diagnostic when unsafe ↵Paul Daniel Faria2020-06-277-19/+82
| | | | | | | | | | | | exprs within unsafe block
* | | Add missing self param to testPaul Daniel Faria2020-06-271-1/+1
| | |
* | | Fix typo in testPaul Daniel Faria2020-06-271-1/+1
| | |
* | | Remove UnnecessaryUnsafe diagnostic, Fix Expr::Call unsafe analysisPaul Daniel Faria2020-06-274-70/+22
| | |
* | | Add tests covering unsafe blocks, more attempts to get call expr tests passingPaul Daniel Faria2020-06-272-1/+86
| | |
* | | Move diagnostics back into expr, add tests for diagnostics, fix logic to ↵Paul Daniel Faria2020-06-277-73/+158
| | | | | | | | | | | | account for derefs of raw ptrs
* | | Add unsafe diagnostics and unsafe highlightingPaul Daniel Faria2020-06-275-2/+163
|/ /
* | Merge #5090bors[bot]2020-06-273-14/+14
|\ \ | | | | | | | | | | | | | | | | | | | | | 5090: Bump deps r=matklad a=lnicola Co-authored-by: Laurențiu Nicola <[email protected]>
| * | Bump rustc_lexerLaurențiu Nicola2020-06-272-13/+13
| | |
| * | Bump depsLaurențiu Nicola2020-06-271-1/+1
| | |
* | | Add `::` to label for `crate::` completionAleksey Kladov2020-06-271-7/+7
| |/ |/|
* | cleanupAleksey Kladov2020-06-271-13/+10
| |
* | Merge #4982bors[bot]2020-06-276-41/+109
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4982: Bump chalk r=matklad a=lnicola This passes the tests, but fails in a weird way on `analysis-stats`: ``` thread 'main' panicked at 'called `Option::unwrap()` on a `None` value', /home/me/.cargo/registry/src/github.com-1ecc6299db9ec823/chalk-solve-0.14.0/src/clauses/builtin_traits/fn_family.rs:96:20 stack backtrace: 0: backtrace::backtrace::libunwind::trace at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/libunwind.rs:86 1: backtrace::backtrace::trace_unsynchronized at /cargo/registry/src/github.com-1ecc6299db9ec823/backtrace-0.3.46/src/backtrace/mod.rs:66 2: std::sys_common::backtrace::_print_fmt at src/libstd/sys_common/backtrace.rs:78 3: <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt at src/libstd/sys_common/backtrace.rs:59 4: core::fmt::write at src/libcore/fmt/mod.rs:1076 5: std::io::Write::write_fmt at src/libstd/io/mod.rs:1537 6: std::sys_common::backtrace::_print at src/libstd/sys_common/backtrace.rs:62 7: std::sys_common::backtrace::print at src/libstd/sys_common/backtrace.rs:49 8: std::panicking::default_hook::{{closure}} at src/libstd/panicking.rs:198 9: std::panicking::default_hook at src/libstd/panicking.rs:218 10: std::panicking::rust_panic_with_hook at src/libstd/panicking.rs:477 11: rust_begin_unwind at src/libstd/panicking.rs:385 12: core::panicking::panic_fmt at src/libcore/panicking.rs:86 13: core::panicking::panic at src/libcore/panicking.rs:51 14: chalk_solve::clauses::builtin_traits::fn_family::add_fn_trait_program_clauses 15: chalk_solve::clauses::builder::ClauseBuilder<I>::push_binders 16: chalk_solve::clauses::program_clauses_that_could_match 17: chalk_solve::clauses::program_clauses_for_goal 18: chalk_solve::recursive::Solver<I>::solve_new_subgoal 19: <chalk_solve::recursive::Solver<I> as chalk_solve::recursive::solve::SolveDatabase<I>>::solve_goal 20: chalk_solve::recursive::Solver<I>::solve_root_goal 21: chalk_solve::solve::Solver<I>::solve_limited 22: ra_hir_ty::traits::trait_solve_query 23: salsa::runtime::Runtime<DB>::execute_query_implementation 24: salsa::derived::slot::Slot<DB,Q,MP>::read_upgrade 25: salsa::derived::slot::Slot<DB,Q,MP>::read 26: <salsa::derived::DerivedStorage<DB,Q,MP> as salsa::plumbing::QueryStorageOps<DB,Q>>::try_fetch 27: salsa::QueryTable<DB,Q>::get 28: <T as ra_hir_ty::db::HirDatabase>::trait_solve 29: ra_hir_ty::infer::InferenceContext::resolve_ty_as_possible 30: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 31: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_coerce 32: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::check_call_arguments 33: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_method_call 34: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 35: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr 36: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_method_call 37: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 38: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_coerce 39: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 40: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 41: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_coerce 42: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_inner 43: ra_hir_ty::infer::expr::<impl ra_hir_ty::infer::InferenceContext>::infer_expr_coerce 44: ra_hir_ty::infer::infer_query 45: salsa::runtime::Runtime<DB>::execute_query_implementation 46: salsa::derived::slot::Slot<DB,Q,MP>::read_upgrade 47: salsa::derived::slot::Slot<DB,Q,MP>::read 48: <salsa::derived::DerivedStorage<DB,Q,MP> as salsa::plumbing::QueryStorageOps<DB,Q>>::try_fetch 49: ra_hir_ty::db::infer_wait 50: rust_analyzer::cli::analysis_stats::analysis_stats 51: rust_analyzer::main 52: std::rt::lang_start::{{closure}} 53: std::rt::lang_start_internal::{{closure}} at src/libstd/rt.rs:52 54: std::panicking::try::do_call at src/libstd/panicking.rs:297 55: std::panicking::try at src/libstd/panicking.rs:274 56: std::panic::catch_unwind at src/libstd/panic.rs:394 57: std::rt::lang_start_internal at src/libstd/rt.rs:51 58: main 59: __libc_start_main 60: _start note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace. ``` It's as if we're returning `None` for a well-known trait that `chalk` asks about. That seems to happen for `Deref`, `CoerceUnsized` and `Try`. r? @flodiebold Co-authored-by: Laurențiu Nicola <[email protected]>
| * | Bump chalkLaurențiu Nicola2020-06-266-41/+109
| | |
* | | Merge #5007bors[bot]2020-06-273-3/+80
|\ \ \ | |_|/ |/| | | | | | | | | | | | | | | | | 5007: SSR: Allow matching within macro calls r=matklad a=davidlattimore #3186 Co-authored-by: David Lattimore <[email protected]>
| * | Fix test following change to fixture parsing ↵David Lattimore2020-06-271-1/+11
| | | | | | | | | | | | (d016cb486738c1ab2574a322924183fa8a870b06)
| * | SSR: Allow matching within macro callsDavid Lattimore2020-06-273-2/+69
| | |
* | | Merge #5033bors[bot]2020-06-274-20/+244
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | 5033: Order of glob imports should not affect import shadowing r=Nashenas88 a=Nashenas88 Fixes #5032 Co-authored-by: Paul Daniel Faria <[email protected]>
| * | Replace simple is_named with matches macroPaul Daniel Faria2020-06-271-10/+1
| | |
| * | Remove comment that's no longer validPaul Daniel Faria2020-06-261-2/+0
| | |
| * | Split glob import map to per-ns, switch ExprCollector to use a simpler push_resPaul Daniel Faria2020-06-264-33/+110
| | |
| * | Track import type outside of , use enum rather than bool to improve readabilityPaul Daniel Faria2020-06-254-40/+73
| | |
| * | Revert resolution of all glob imports first, replace with tracking of glob ↵Paul Daniel Faria2020-06-254-49/+119
| | | | | | | | | | | | imports and shadowing when more specific
| * | Order of glob imports should not affect import shadowingPaul Daniel Faria2020-06-252-16/+71
| | |
* | | Better exe probingAleksey Kladov2020-06-271-10/+11
| | |
* | | Try to find rustfmt in more placesAleksey Kladov2020-06-273-1/+6
| | |
* | | introduce_variable -> extract_variableAleksey Kladov2020-06-273-73/+73
| | |
* | | Merge #5083bors[bot]2020-06-261-4/+11
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5083: Micro-optimize lookahead in composite tokens r=matklad a=lnicola I'm not sure that this is measurable, but can't hurt, I guess. Co-authored-by: Laurențiu Nicola <[email protected]>
| * | | Micro-optimize lookahead in composite tokensLaurențiu Nicola2020-06-261-4/+11
| | | |
* | | | Merge #4945bors[bot]2020-06-261-2/+31
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 4945: do not suggest assist for return type to result in bad case r=matklad a=bnjjj close #4826 Co-authored-by: Benjamin Coenen <[email protected]>
| * | | | do not suggest assist for return type to result in bad case #4826Benjamin Coenen2020-06-211-0/+3
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
| * | | | do not suggest assist for return type to result in bad case #4826Benjamin Coenen2020-06-181-2/+28
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Benjamin Coenen <[email protected]>
* | | | | Merge #5081bors[bot]2020-06-262-61/+50
|\ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5081: Fix a panic with malformed inner items r=jonas-schievink a=jonas-schievink bors r+ Co-authored-by: Jonas Schievink <[email protected]>
| * | | | | Make find_inner_item fallibleJonas Schievink2020-06-262-14/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ItemTree does not collect incomplete items, such as traits with no name, so the (malformed) AST node might have no corresponding item.
| * | | | | find_inner_item: more detailed panic messageJonas Schievink2020-06-261-1/+7
| | | | | |
| * | | | | Simplify inner item loweringJonas Schievink2020-06-261-61/+30
| | | | | |
* | | | | | Set corret request methodAleksey Kladov2020-06-261-6/+2
| | | | | |
* | | | | | Fix config switchingAleksey Kladov2020-06-261-5/+7
| | | | | |
* | | | | | Merge #5078bors[bot]2020-06-262-12/+2
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5078: Minor r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | MinorAleksey Kladov2020-06-262-12/+2
| | | | | | |
* | | | | | | Merge #5077bors[bot]2020-06-264-49/+73
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5077: Type safer requests r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | | Type safer requestsAleksey Kladov2020-06-264-49/+73
| | | | | | |
* | | | | | | Merge #5075bors[bot]2020-06-266-157/+127
|\| | | | | | | |/ / / / / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 5075: Be more precise about flycheck status r=matklad a=matklad bors r+ 🤖 Co-authored-by: Aleksey Kladov <[email protected]>
| * | | | | Move progress reporting to utilsAleksey Kladov2020-06-265-92/+91
| | | | | |