about summary refs log tree commit diff
path: root/src/libsyntax/errors
AgeCommit message (Collapse)AuthorLines
2016-06-23Move errors from libsyntax to its own crateJonathan Turner-3434/+0
2016-06-16Add an abs_path member to FileMap, use it when writing debug info.Ted Mielczarek-19/+19
When items are inlined from extern crates, the filename in the debug info is taken from the FileMap that's serialized in the rlib metadata. Currently this is just FileMap.name, which is whatever path is passed to rustc. Since libcore and libstd are built by invoking rustc with relative paths, they wind up with relative paths in the rlib, and when linked into a binary the debug info uses relative paths for the names, but since the compilation directory for the final binary, tools trying to read source filenames will wind up with bad paths. We noticed this in Firefox with source filenames from libcore/libstd having bad paths. This change stores an absolute path in FileMap.abs_path, and uses that if available for writing debug info. This is not going to magically make debuggers able to find the source, but it will at least provide sensible paths.
2016-05-24Back to single line between errors. Add header space to secondary filesJonathan Turner-1/+26
2016-05-23Update error format for readability. Add spacing header<->snippet and ↵Jonathan Turner-1/+8
another line between errors
2016-05-19Rollup merge of #33730 - jseyfried:fix_macro_backtrace_diagnostics, ↵Manish Goregaokar-1/+1
r=nikomatsakis Fix macro expansion backtrace diagnostics Fixes #33704. r? @nikomatsakis
2016-05-18Auto merge of #33688 - jonathandturner:fix_old_school, r=nikomatsakisbors-10/+54
Fix for old school error issues, improvements to new school This PR: * Fixes some old school error issues, specifically #33559, #33543, #33366 * Improves wording borrowck errors with match patterns * De-emphasize multi-line spans, so we don't color the single source character when we're trying to say "span starts here" * Rollup of #33392 (which should help fix #33390) r? @nikomatsakis
2016-05-19Fix macro expansion backtrace diagnosticsJeffrey Seyfried-1/+1
2016-05-17fix -Z treat-err-as-bugNiko Matsakis-30/+30
2016-05-17Fix for #33559Jonathan Turner-1/+2
2016-05-17Improve a few errors and fix #33366Jonathan Turner-2/+2
2016-05-17De-emph minimized spans, add better debugging outputJonathan Turner-10/+27
2016-05-17Print secondary labels as notes in old skool modeJonathan Turner-0/+26
2016-05-15Auto merge of #33619 - jonathandturner:improve_structured_errors, r=nikomatsakisbors-4/+5
Batch of improvements to errors for new error format This is a batch of improvements to existing errors to help get the most out of the new error format. * Added labels to primary spans (^^^) for a set of errors that didn't currently have them * Highlight the source blue under the secondary notes for better readability * Move some of the "Note:" into secondary spans+labels * Fix span_label to take &mut instead, which makes it work the same as other methods in that set
2016-05-13Auto merge of #33513 - sanxiyn:tab-in-error, r=nikomatsakisbors-2/+32
Better handling of tab in error cc #33240.
2016-05-12Update errors to use new error formatJonathan Turner-4/+4
2016-05-12Set of fixes to improve borrowcks that weren't updatedJonathan Turner-0/+1
2016-05-12Better handling of tab in errorSeo Sanghyeon-2/+32
2016-05-09Auto merge of #33484 - murarth:diagnostic-builder-fields, r=brsonbors-0/+8
Add accessor methods to DiagnosticBuilder
2016-05-08Rollup merge of #33369 - nikomatsakis:graceful-empty-span, r=jntrnrManish Goregaokar-1/+49
degrade gracefully with empty spans In https://github.com/rust-lang/rust/pull/32756, we solved the final test failure, but digging more into it the handling of that scenario could be better. The error was caused by an empty span supplied by the parser representing EOF. This patch checks that we cope more gracefully with such spans: r? @jonathandturner
2016-05-07Add accessor methods to DiagnosticBuilderMurarth-0/+8
2016-05-03Remove unused trait imports introduced while in reviewSeo Sanghyeon-1/+1
2016-05-03degrade gracefully with empty spansNiko Matsakis-1/+49
2016-05-02assert we get at least two rendered lines backNiko Matsakis-2/+5
2016-05-02avoid double panicNiko Matsakis-1/+2
2016-05-02do not fail if len(rendered_lines) is == 1Niko Matsakis-10/+14
also handle more rendered-lines
2016-05-02update unit testsNiko Matsakis-39/+38
2016-05-02Finish up with 'old school' error modeJonathan Turner-12/+63
2016-05-02Add back in a 'old school' error formatJonathan Turner-50/+201
2016-05-02change color of warning to YELLOWNiko Matsakis-1/+1
2016-05-02fix snippet tests MORE!Niko Matsakis-2/+2
2016-05-02Nit: use Range::containsNiko Matsakis-7/+2
2016-05-02fix tests betterNiko Matsakis-5/+5
2016-05-02only emit `^` at the start of a multi-line errorNiko Matsakis-143/+67
as a result, simplify elision code
2016-05-02Nit: use last_mut betterNiko Matsakis-4/+3
2016-05-02Nit: in emitter.rsNiko Matsakis-2/+1
2016-05-02Nit: address various style nitsNiko Matsakis-5/+10
2016-05-02Nit: do not use RLKNiko Matsakis-12/+14
2016-05-02Nit: do not import variants from StyleNiko Matsakis-24/+23
2016-05-02Do not import variants from RenderedLineKindNiko Matsakis-12/+12
2016-05-02refactor the Emitter traitNiko Matsakis-98/+74
There is now a CoreEmitter that everything desugars to, but without losing any information. Also remove RenderSpan::FileLine. This lets the rustc_driver tests build.
2016-05-02change errors from Yellow to MagentaNiko Matsakis-1/+1
The Yellow text is very hard to read with a white background.
2016-05-02WIP factor out RudimentaryEmitterNiko Matsakis-16/+31
2016-05-02refactor to use new snippet code and modelNiko Matsakis-649/+322
Major changes: - Remove old snippet rendering code and use the new stuff. - Introduce `span_label` method to add a label - Remove EndSpan mode and replace with a fn to get the last character of a span. - Stop using `Option<MultiSpan>` and just use an empty `MultiSpan` - and probably a bunch of other stuff :)
2016-05-02adapt JSON to new modelNiko Matsakis-119/+83
Each Span now carries a `is_primary` boolean along with an optional label. If there are multiple labels for a span, it will appear multiple times.
2016-05-02revamp MultiSpan and introduce new snippet codeNiko Matsakis-0/+1345
MultiSpan model is now: - set of primary spans - set of span+label pairs Primary spans render with `^^^`, secondary spans with `---`. Labels are placed next to the `^^^` or `---` marker as appropriate.
2016-04-27Make some fatal lexer errors recoverablemitaa-0/+2
2016-04-21pacify the merciless acrichto (somewhat)Niko Matsakis-8/+6
Also add a comment or two to pacify the merciless self-critic, who hates a closure without a comment.
2016-04-21port compiletest to use JSON outputNiko Matsakis-122/+176
This uncovered a lot of bugs in compiletest and also some shortcomings of our existing JSON output. We had to add information to the JSON output, such as suggested text and macro backtraces. We also had to fix various bugs in the existing tests. Joint work with jntrnr.
2016-04-12Remove unused trait importsSeo Sanghyeon-3/+0
2016-04-04Give better spans for SpanEnd errorsNick Cameron-15/+60