From: Rafael Espindola Date: Tue, 3 Jun 2014 05:04:52 +0000 (+0000) Subject: Don't assume an implicit IntrusiveRefCntPtr -> bool operator. X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a52f6237e83863fd602bd74ac627d63425bdea08;p=clang Don't assume an implicit IntrusiveRefCntPtr -> bool operator. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@210075 91177308-0d34-0410-b5e6-96231b3b80d8 --- diff --git a/include/clang/Frontend/CompilerInstance.h b/include/clang/Frontend/CompilerInstance.h index 97c140ecbd..53c9193ed0 100644 --- a/include/clang/Frontend/CompilerInstance.h +++ b/include/clang/Frontend/CompilerInstance.h @@ -193,7 +193,7 @@ public: /// @name Compiler Invocation and Options /// { - bool hasInvocation() const { return Invocation != nullptr; } + bool hasInvocation() const { return (bool)Invocation; } CompilerInvocation &getInvocation() { assert(Invocation && "Compiler instance has no invocation!"); @@ -291,7 +291,7 @@ public: /// @name Diagnostics Engine /// { - bool hasDiagnostics() const { return Diagnostics != nullptr; } + bool hasDiagnostics() const { return (bool)Diagnostics; } /// Get the current diagnostics engine. DiagnosticsEngine &getDiagnostics() const { @@ -312,7 +312,7 @@ public: /// @name Target Info /// { - bool hasTarget() const { return Target != nullptr; } + bool hasTarget() const { return (bool)Target; } TargetInfo &getTarget() const { assert(Target && "Compiler instance has no target!"); @@ -326,7 +326,7 @@ public: /// @name Virtual File System /// { - bool hasVirtualFileSystem() const { return VirtualFileSystem != nullptr; } + bool hasVirtualFileSystem() const { return (bool)VirtualFileSystem; } vfs::FileSystem &getVirtualFileSystem() const { assert(hasVirtualFileSystem() && @@ -346,7 +346,7 @@ public: /// @name File Manager /// { - bool hasFileManager() const { return FileMgr != nullptr; } + bool hasFileManager() const { return (bool)FileMgr; } /// Return the current file manager to the caller. FileManager &getFileManager() const { @@ -366,7 +366,7 @@ public: /// @name Source Manager /// { - bool hasSourceManager() const { return SourceMgr != nullptr; } + bool hasSourceManager() const { return (bool)SourceMgr; } /// Return the current source manager. SourceManager &getSourceManager() const { @@ -386,7 +386,7 @@ public: /// @name Preprocessor /// { - bool hasPreprocessor() const { return PP != nullptr; } + bool hasPreprocessor() const { return (bool)PP; } /// Return the current preprocessor. Preprocessor &getPreprocessor() const { @@ -406,7 +406,7 @@ public: /// @name ASTContext /// { - bool hasASTContext() const { return Context != nullptr; } + bool hasASTContext() const { return (bool)Context; } ASTContext &getASTContext() const { assert(Context && "Compiler instance has no AST context!"); diff --git a/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp b/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp index b415d5b53f..1fdcdbaf6a 100644 --- a/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp +++ b/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp @@ -724,7 +724,7 @@ const char *TrackConstraintBRVisitor::getTag() { bool TrackConstraintBRVisitor::isUnderconstrained(const ExplodedNode *N) const { if (IsZeroCheck) return N->getState()->isNull(Constraint).isUnderconstrained(); - return N->getState()->assume(Constraint, !Assumption); + return (bool)N->getState()->assume(Constraint, !Assumption); } PathDiagnosticPiece *