[cling,tcling] Allow reporting cling diagnostics via the ROOT error handler#8737
Conversation
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
Failing tests: |
|
Build failed on mac11.0/cxx17. Failing tests: |
4739633 to
492d42e
Compare
|
Starting build on |
|
@Axel-Naumann, @vgvassilev, given that I will be off in August, feel free to merge this PR and the sibling PR in roottest if the code doesn't need changes after the review. |
|
Build failed on ROOT-debian10-i386/cxx14. Failing tests: |
492d42e to
faf1ace
Compare
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
|
@phsft-bot build just on ROOT-debian10-i386/cxx14 |
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
hahnjo
left a comment
There was a problem hiding this comment.
Very cool that you made the restoring work naturally, good job 👍
faf1ace to
13e08bc
Compare
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
Axel-Naumann
left a comment
There was a problem hiding this comment.
Looks great! But I have a question! :-)
|
@phsft-bot build |
|
Starting build on |
|
Build failed on windows10/cxx14. Errors:
|
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
13e08bc to
3fa0d5b
Compare
|
Starting build on |
These changes enable the replacement of the default DiagnosticConsumer provided by CIFactory. Concretely, two member functions have been added to the Interpreter class: - replaceDiagnosticConsumer(): replaces the default CIFactory-provided DiagnosticConsumer. - hasReplacedDiagnosticConsumer(): returns whether the default diagnostic consumer has been replaced.
This function allows users to route clang diagnostics to the ROOT error handler. Closes issue ROOT-7587.
3fa0d5b to
63caf67
Compare
|
Starting build on |
|
Build failed on windows10/cxx14. Errors:
|
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
|
Build failed on mac11.0/cxx17. Failing tests: |
|
@phsft-bot build just on ROOT-debian10-i386/cxx14 |
|
Starting build on |
|
Build failed on ROOT-debian10-i386/cxx14. Errors:
|
This PR enables cling diagnostics to be reported via the ROOT error handler, as required by the experiments. Independently, this error handler may be changed by the user (see
TError.h), e.g.Changes in this PR
FilteringDiagConsumer(in IncrementalParser.cpp).Interpreterclass:void replaceDiagnosticConsumer(clang::DiagnosticConsumer* Consumer, bool Own): replaces the default CIFactory-provided diagnostic consumer.bool hasReplacedDiagnosticConsumer(): returns whether the default diagnostic consumer has been replaced.void TCling::ReportDiagnosticsToErrorHandler(bool enable)member function.This PR closes JIRA issue ROOT-7587.
Link to sibling PR in
roottestrepository: root-project/roottest#761.