r210075 - Don't assume an implicit IntrusiveRefCntPtr -> bool operator.

David Blaikie dblaikie at gmail.com
Mon Jun 2 22:17:08 PDT 2014


On Mon, Jun 2, 2014 at 10:04 PM, Rafael Espindola
<rafael.espindola at gmail.com> wrote:
> Author: rafael
> Date: Tue Jun  3 00:04:52 2014
> New Revision: 210075
>
> URL: http://llvm.org/viewvc/llvm-project?rev=210075&view=rev
> Log:
> Don't assume an implicit IntrusiveRefCntPtr -> bool operator.
>
> Modified:
>     cfe/trunk/include/clang/Frontend/CompilerInstance.h
>     cfe/trunk/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
>
> Modified: cfe/trunk/include/clang/Frontend/CompilerInstance.h
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Frontend/CompilerInstance.h?rev=210075&r1=210074&r2=210075&view=diff
> ==============================================================================
> --- cfe/trunk/include/clang/Frontend/CompilerInstance.h (original)
> +++ cfe/trunk/include/clang/Frontend/CompilerInstance.h Tue Jun  3 00:04:52 2014
> @@ -193,7 +193,7 @@ public:
>    /// @name Compiler Invocation and Options
>    /// {
>
> -  bool hasInvocation() const { return Invocation != nullptr; }
> +  bool hasInvocation() const { return (bool)Invocation; }

Perhaps IntrusiveRefCntPtr could ues an operator==(nullptr_t) though?

(& can we move from IntrusiveRefCntPtr to std::shared_ptr with
std::enable_shared_from_this where necessary?)

>
>    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!");
>
> Modified: cfe/trunk/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp
> URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp?rev=210075&r1=210074&r2=210075&view=diff
> ==============================================================================
> --- cfe/trunk/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp (original)
> +++ cfe/trunk/lib/StaticAnalyzer/Core/BugReporterVisitors.cpp Tue Jun  3 00:04:52 2014
> @@ -724,7 +724,7 @@ const char *TrackConstraintBRVisitor::ge
>  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 *
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits



More information about the cfe-commits mailing list