clang
3.9.0
|
#include <PathDiagnostic.h>
Public Member Functions | |
~PathDiagnosticCallPiece () override | |
const Decl * | getCaller () const |
const Decl * | getCallee () const |
void | setCallee (const CallEnter &CE, const SourceManager &SM) |
bool | hasCallStackMessage () |
void | setCallStackMessage (StringRef st) |
PathDiagnosticLocation | getLocation () const override |
IntrusiveRefCntPtr < PathDiagnosticEventPiece > | getCallEnterEvent () const |
IntrusiveRefCntPtr < PathDiagnosticEventPiece > | getCallEnterWithinCallerEvent () const |
IntrusiveRefCntPtr < PathDiagnosticEventPiece > | getCallExitEvent () const |
void | flattenLocations () override |
void | dump () const override |
void | Profile (llvm::FoldingSetNodeID &ID) const override |
![]() | |
~PathDiagnosticPiece () override | |
StringRef | getString () const |
void | setTag (const char *tag) |
Tag this PathDiagnosticPiece with the given C-string. More... | |
const void * | getTag () const |
Return the opaque tag (if any) on the PathDiagnosticPiece. More... | |
StringRef | getTagStr () const |
Return the string representation of the tag. More... | |
DisplayHint | getDisplayHint () const |
getDisplayHint - Return a hint indicating where the diagnostic should be displayed by the PathDiagnosticConsumer. More... | |
Kind | getKind () const |
void | addRange (SourceRange R) |
void | addRange (SourceLocation B, SourceLocation E) |
ArrayRef< SourceRange > | getRanges () const |
Return the SourceRanges associated with this PathDiagnosticPiece. More... | |
void | setAsLastInMainSourceFile () |
bool | isLastInMainSourceFile () const |
Static Public Member Functions | |
static PathDiagnosticCallPiece * | construct (const ExplodedNode *N, const CallExitEnd &CE, const SourceManager &SM) |
static PathDiagnosticCallPiece * | construct (PathPieces &pieces, const Decl *caller) |
static bool | classof (const PathDiagnosticPiece *P) |
Public Attributes | |
PathDiagnosticLocation | callEnter |
PathDiagnosticLocation | callEnterWithin |
PathDiagnosticLocation | callReturn |
PathPieces | path |
Additional Inherited Members | |
![]() | |
enum | Kind { ControlFlow, Event, Macro, Call } |
enum | DisplayHint { Above, Below } |
![]() | |
PathDiagnosticPiece (StringRef s, Kind k, DisplayHint hint=Below) | |
PathDiagnosticPiece (Kind k, DisplayHint hint=Below) | |
Definition at line 550 of file PathDiagnostic.h.
|
override |
Definition at line 60 of file PathDiagnostic.cpp.
|
inlinestatic |
Definition at line 616 of file PathDiagnostic.h.
References clang::ento::PathDiagnosticPiece::Call, and clang::ento::PathDiagnosticPiece::getKind().
|
static |
Definition at line 879 of file PathDiagnostic.cpp.
References clang::CallExitEnd::getCalleeContext(), clang::LocationContext::getDecl(), clang::ProgramPoint::getLocationContext(), getLocationForCaller(), and SM.
Referenced by GenerateAlternateExtensivePathDiagnostic(), GenerateExtensivePathDiagnostic(), and GenerateMinimalPathDiagnostic().
|
static |
Definition at line 890 of file PathDiagnostic.cpp.
|
overridevirtual |
Implements clang::ento::PathDiagnosticPiece.
Definition at line 3490 of file BugReporter.cpp.
References clang::ento::PathDiagnosticLocation::dump(), clang::ento::BugReport::getLocation(), and getLocStmt().
|
inlineoverridevirtual |
Implements clang::ento::PathDiagnosticPiece.
Definition at line 598 of file PathDiagnostic.h.
References callEnter, callReturn, E, clang::ento::PathDiagnosticLocation::flatten(), I, and path.
|
inline |
Definition at line 581 of file PathDiagnostic.h.
Referenced by adjustCallLocations().
IntrusiveRefCntPtr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallEnterEvent | ( | ) | const |
Definition at line 978 of file PathDiagnostic.cpp.
References describeCodeDecl().
Referenced by ReportCall().
IntrusiveRefCntPtr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallEnterWithinCallerEvent | ( | ) | const |
Definition at line 993 of file PathDiagnostic.cpp.
References describeCodeDecl().
Referenced by ReportCall().
|
inline |
Definition at line 579 of file PathDiagnostic.h.
Referenced by adjustCallLocations().
IntrusiveRefCntPtr< PathDiagnosticEventPiece > PathDiagnosticCallPiece::getCallExitEvent | ( | ) | const |
Definition at line 1012 of file PathDiagnostic.cpp.
References describeCodeDecl().
Referenced by ReportCall().
|
inlineoverridevirtual |
Implements clang::ento::PathDiagnosticPiece.
Definition at line 589 of file PathDiagnostic.h.
References callEnter.
Referenced by GenerateAlternateExtensivePathDiagnostic(), and GenerateExtensivePathDiagnostic().
|
inline |
Definition at line 584 of file PathDiagnostic.h.
Referenced by updateStackPiecesWithMessage().
|
overridevirtual |
Reimplemented from clang::ento::PathDiagnosticPiece.
Definition at line 1075 of file PathDiagnostic.cpp.
References clang::ento::PathDiagnosticPiece::Profile().
void PathDiagnosticCallPiece::setCallee | ( | const CallEnter & | CE, |
const SourceManager & | SM | ||
) |
Definition at line 898 of file PathDiagnostic.cpp.
References clang::ento::PathDiagnosticLocation::createBegin(), clang::CallEnter::getCalleeContext(), clang::LocationContext::getDecl(), clang::ProgramPoint::getLocationContext(), getLocationForCaller(), and SM.
Referenced by GenerateAlternateExtensivePathDiagnostic(), GenerateExtensivePathDiagnostic(), and GenerateMinimalPathDiagnostic().
|
inline |
Definition at line 585 of file PathDiagnostic.h.
Referenced by updateStackPiecesWithMessage().
PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnter |
Definition at line 572 of file PathDiagnostic.h.
Referenced by adjustCallLocations(), compareCall(), flattenLocations(), getFirstStackedCallToHeaderFile(), and getLocation().
PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callEnterWithin |
Definition at line 573 of file PathDiagnostic.h.
Referenced by adjustCallLocations(), compareCall(), and getFirstStackedCallToHeaderFile().
PathDiagnosticLocation clang::ento::PathDiagnosticCallPiece::callReturn |
Definition at line 574 of file PathDiagnostic.h.
Referenced by adjustCallLocations(), compareCall(), flattenLocations(), GenerateAlternateExtensivePathDiagnostic(), and GenerateExtensivePathDiagnostic().
PathPieces clang::ento::PathDiagnosticCallPiece::path |
Definition at line 575 of file PathDiagnostic.h.
Referenced by adjustCallLocations(), compareCall(), flattenLocations(), GenerateAlternateExtensivePathDiagnostic(), GenerateExtensivePathDiagnostic(), GenerateMinimalPathDiagnostic(), getFirstStackedCallToHeaderFile(), removeUnneededCalls(), and ReportCall().