llvm/clang/lib/StaticAnalyzer/Checkers/BoolAssignmentChecker.cpp

//== BoolAssignmentChecker.cpp - Boolean assignment checker -----*- C++ -*--==//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
//
// This defines BoolAssignmentChecker, a builtin check in ExprEngine that
// performs checks for assignment of non-Boolean values to Boolean variables.
//
//===----------------------------------------------------------------------===//

#include "clang/StaticAnalyzer/Checkers/BuiltinCheckerRegistration.h"
#include "clang/StaticAnalyzer/Checkers/Taint.h"
#include "clang/StaticAnalyzer/Core/BugReporter/BugType.h"
#include "clang/StaticAnalyzer/Core/Checker.h"
#include "clang/StaticAnalyzer/Core/CheckerManager.h"
#include "clang/StaticAnalyzer/Core/PathSensitive/CheckerContext.h"
#include <optional>

usingnamespaceclang;
usingnamespaceento;

namespace {
class BoolAssignmentChecker : public Checker<check::Bind> {};
} // end anonymous namespace

void BoolAssignmentChecker::emitReport(ProgramStateRef State, CheckerContext &C,
                                       bool IsTainted) const {}

static bool isBooleanType(QualType Ty) {}

void BoolAssignmentChecker::checkBind(SVal Loc, SVal Val, const Stmt *S,
                                      CheckerContext &C) const {}

void ento::registerBoolAssignmentChecker(CheckerManager &Mgr) {}

bool ento::shouldRegisterBoolAssignmentChecker(const CheckerManager &Mgr) {}