aboutsummaryrefslogtreecommitdiff
path: root/src/dotty/tools/dotc/reporting
Commit message (Collapse)AuthorAgeFilesLines
* Improve positions for MemberDefs using `namePos`Felix Mulder2016-10-103-10/+26
|
* Handle multiline messages in ConsoleReporterFelix Mulder2016-10-101-18/+28
|
* Make reporter hint about existing explanationsFelix Mulder2016-10-101-1/+4
|
* Change Message#errorId to type IntFelix Mulder2016-10-103-11/+16
|
* Improve documentation for message frameworkFelix Mulder2016-10-102-8/+46
|
* Get rid of `kind` in `MessageContainer`Felix Mulder2016-10-104-40/+36
|
* Fix TypeMismatch not getting nonsensical tags in some casesFelix Mulder2016-10-101-2/+2
| | | | Thanks @smarter!
* Don't force Message twice in MessageContainerFelix Mulder2016-10-101-1/+1
|
* Fix reporting of ErrorTypes in highlighted segmentsFelix Mulder2016-10-103-4/+4
|
* Make `typeDiff` aware of placeholder typesFelix Mulder2016-10-101-2/+2
|
* Refactor explanation interpolatorFelix Mulder2016-10-102-7/+21
|
* Fix underline positionFelix Mulder2016-10-101-1/+1
|
* Add deprecation message on `with` type operatorFelix Mulder2016-10-101-47/+77
|
* Remove duplication of console reportersFelix Mulder2016-10-102-115/+64
|
* Make relevant parts of compiler conform to new error handlingFelix Mulder2016-10-1014-313/+291
|
* Make `FancyConsoleReporter` and `Highlighting` obey color settingFelix Mulder2016-10-103-30/+29
| | | | | | | Fancy console reporter and the string interpolator for highlighting now obey the color setting - this means that the next step towards unifying the reporters is to make sure the tests work with `FancyConsoleReporter` under the `-color:never` flag.
* Add modifiers to highlightingFelix Mulder2016-10-102-2/+2
|
* Factor out explanation header to ReporterFelix Mulder2016-10-107-42/+77
|
* Complete better structure to diagnostic messagesFelix Mulder2016-10-1010-138/+188
|
* Refactor common error messages to `diagnostic.basic`Felix Mulder2016-10-107-43/+117
|
* Rename Diagnostic to diagnostic.MessageFelix Mulder2016-10-107-47/+64
|
* Add ability to choose between fancy and non-fancy outputFelix Mulder2016-10-102-43/+79
|
* Rename `ConsoleReporter` => `FancyConsoleReporter`Felix Mulder2016-10-101-1/+1
|
* Add error kind to diagnosticFelix Mulder2016-10-104-33/+23
|
* Add smart comment formatting in ConsoleReporterFelix Mulder2016-10-101-7/+65
|
* Change layout of ErrorMessagesFelix Mulder2016-10-103-115/+126
|
* Add more examples to TyperFelix Mulder2016-10-101-1/+31
|
* Use highlighting in explanation classesFelix Mulder2016-10-101-18/+27
|
* Add initial structure for improved explanations of error messagesFelix Mulder2016-10-102-0/+80
|
* Add accessors for non-public members accessed from inline methodsMartin Odersky2016-10-021-1/+1
| | | | | | | | This makes existsing uses of inline mostly compile. Todo: Verify that stdlib can be compiled. Todo: Implement accessors for assignments to priavte variables Todo: Figure out what to do with accesses to private types.
* Make inline annotation @scala.inline.Martin Odersky2016-10-021-3/+3
| | | | | | | | | | | | | | | | | | Drop @dotty.annotation.inline. This will inline all @inline marked methods in Scala for which a body is known (i.e. that are either compiled in the same run or have Tasty trees available). Option -Yno-inline suppresses inlining. This is needed for the moment because some @inline methods access private members or members that are otherwise inaccessible at the call-site. Also fixes some problems in Inliner - make sure type arguments to inline calls re fully defined - don't forget recursive calls in typeMap - don't forget positions in treeMap - drop dead code dealing with outer.
* Inline key operations in dottyMartin Odersky2016-10-021-12/+16
| | | | | Inlined operations are: Stats.track and all variants of Reporter.traceIndented.
* Print inlining positions in error messagesMartin Odersky2016-10-021-9/+10
| | | | | Error messages now print the inlined positions as well as the position of the inlined call, recursively.
* Clean up config.Printers importsOlivier Blanvillain2016-09-231-1/+1
| | | | And remove the not used Printer#echo
* New string infterpolatorsMartin Odersky2016-08-161-5/+5
| | | | | | Roll `sm` and `i` into one interpolator (also called `i`) Evolve `d` to `em` interpolator (for error messages) New interpolator `ex` with more explanations, replaces disambiguation.
* Add scala.Dynamic language feature check.Nicolas Stucki2016-07-071-1/+29
|
* Rename Reporting#println -> Reporting#echoMartin Odersky2016-04-271-5/+4
| | | | | | | | | | There's a trap otherwise that, when in a class inheriting from Context (and with it Reporting) a call to println will go to this.println and therefore might not print at all, if the current context buffers messages. I lost a lot of time on this on several occasions when I scratched my head why a simple debug println would not show. Better avoid this in the future for myself and others.
* Move Mode to coreMartin Odersky2016-04-011-1/+1
| | | | | Mode is used from a lot of low-level code, does not just reflect Typer info. So it makes more sense top to place it in the core package.
* Add a `dotty-interfaces` packageGuillaume Martres2016-02-282-9/+19
| | | | | | | | | | | | | | | | | | | | | | We introduce a new entry point for the compiler in `dotty.tools.dotc.Driver`: ``` def process(args: Array[String], simple: interfaces.SimpleReporter, callback: interfaces.CompilerCallback): interfaces.ReporterResult ``` Except for `args` which is just an array, the argument types and return type of this method are Java interfaces defined in a new package called `dotty-interfaces` which has a stable ABI. This means that you can programmatically run a compiler with a custom reporter and callbacks without having to recompile it against every version of dotty: you only need to have `dotty-interfaces` present at compile-time and call the `process` method using Java reflection. See `test/test/InterfaceEntryPointTest.scala` for a concrete example. This design is based on discussions with the IntelliJ IDEA Scala plugin team. Thanks to Nikolay Tropin for the discussions and his PR proposal (see #1011).
* Small API changes in preparation for dotty-interfacesGuillaume Martres2016-02-253-10/+10
| | | | | | | - Rename Diagnostic#msg to message, this is nicer for a public API - Rename SourceFile#lineContents and SourcePosition#lineContents to lineContent, the former is not grammatically correct. - Add some convenience methods to SourcePosition.
* ConsoleReporter: handling of non-sensical messages is now reusableGuillaume Martres2016-02-235-27/+39
| | | | | | | | | | This is now handled by a separate trait HideNonSensicalMessages that can be mixed in, similar to UniqueMessagePositions. This way we'll be able to reuse this functionality for other kind of Reporters. This also means that we don't need `doReport` to return a Boolean anymore, so we change it to return a Unit as it did before 065a0026924f722e9844c8e314180bb4cebca236
* Refactor DiagnosticMartin Odersky2016-02-235-40/+53
| | | | | | Break it out from Reporter and eliminate all dependencies to Context. This is done so that Diagnostics can be part of a public and minimal compiler API.
* New utility method: Reporter#errorOrMigrationWarningMartin Odersky2016-02-191-0/+3
|
* Negtests (JUnit only) check that each error line has a // errorvsalvis2016-02-181-1/+5
|
* Hide stack traces behind -YdebugGuillaume Martres2016-02-051-1/+1
| | | | | | | | | They're not very useful for end users and some tests like tests/neg/selfreq.scala always print these exceptions which makes it harder to read the test logs, Also use Thread.dumpStack() instead of creating an Exception and calling printStackTrace() on it.
* Reporter: make summary available without a ContextGuillaume Martres2016-02-041-5/+16
|
* ConsoleReporter: remove unused argument ctxGuillaume Martres2016-02-041-1/+1
|
* Avoid too eager computation in reporting.Martin Odersky2015-11-301-1/+1
| | | | | | | | I noted a slowdown of about 25% (66sec -> 81sec) when compiling dotty even after the subtype optimization (before it was 117sec). I tracked it down to the traceIndented fix which avoided questions to be evaluated twice. But it also caused the question to be evaluated Making the val lazy fixed the problem.
* Avoid repeated unnecessary logging in traceIndentedGuillaume Martres2015-11-261-1/+6
| | | | | | | While trying to debug #943 I noticed that the exception output from traceIndented was interspersed with unrelated logging output, this happened because `question` in traceIndented is by-name and was evaluated both before executing an operation and afterwards.
* Better diagnostic for migration warningsMartin Odersky2015-11-161-0/+2
| | | | Flag them as "migration warning" rather than just "warning".