[analyzer] change "tag" in ProgramPoint from "void*" to a ProgramPointTag*.
Having a notion of an actual ProgramPointTag will aid in introspection of the analyzer's behavior. For example, the GraphViz output of the analyzer will pretty-print the tags in a useful manner. llvm-svn: 137529
This commit is contained in:
26
clang/lib/Analysis/ProgramPoint.cpp
Normal file
26
clang/lib/Analysis/ProgramPoint.cpp
Normal file
@@ -0,0 +1,26 @@
|
||||
//==- ProgramPoint.cpp - Program Points for Path-Sensitive Analysis -*- C++ -*-/
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file defines the interface ProgramPoint, which identifies a
|
||||
// distinct location in a function.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include "clang/Analysis/ProgramPoint.h"
|
||||
|
||||
using namespace clang;
|
||||
|
||||
ProgramPointTag::~ProgramPointTag() {}
|
||||
|
||||
SimpleProgramPointTag::SimpleProgramPointTag(StringRef description)
|
||||
: desc(description) {}
|
||||
|
||||
StringRef SimpleProgramPointTag::getTagDescription() const {
|
||||
return desc;
|
||||
}
|
||||
Reference in New Issue
Block a user