// This program is free software; you can redistribute it and/or modify it
// under the terms of either the GNU Lesser General Public License Version 3
// or the Perl Artistic License Version 2.0.
// SPDX-FileCopyrightText: 2003-2026 Wilson Snyder
// SPDX-License-Identifier: LGPL-3.0-only OR Artistic-2.0

ctunullpointer
derefInvalidIteratorRedundantCheck
nullPointer
nullPointerRedundantCheck
templateRecursion
unusedFunction
unusedScopedObject
useInitializationList
useStlAlgorithm

// Do not warn that analysis failed due to complexity
checkLevelNormal
// Seems useless
missingIncludeSystem
// Tedious
unmatchedSuppression
// Not our code
*:include/gtkwave/*
*:include/vltstd/*
// flex/bison output
*:verilog.c
*:V3Lexer_pregen.yy.cpp
*:V3PreLex_pregen.yy.cpp
constParameterPointer:V3ParseBison.c
cstyleCast:../V3PreLex.l
cstyleCast:../verilog.l
cstyleCast:../verilog.y
cstyleCast:V3ParseBison.c
redundantContinue:V3ParseBison.c
// Just check the hand written code
missingInclude:examples/*
// We intentionally redefine AstNode methods to improve type safety
duplInheritedMember:src/V3AstNode*.h
duplInheritedMember:src/obj_*/V3Ast__gen_impl.h
// We intentionally redefine DfgVertex methods to match Ast
duplInheritedMember:src/obj_*/V3Dfg__gen_auto_classes.h
// They are used after astgen expansion
unusedPrivateFunction:src/V3Const.cpp
// These are all inappropriate
constVariablePointer:src/V3DfgPeephole.cpp
constParameterPointer:src/V3DfgPeephole.cpp
// Class in non-copyable
noCopyConstructor:src/V3DfgDfgToAst.cpp
noOperatorEq:src/V3DfgDfgToAst.cpp

// TODO: these need fixing/signing off in source
constParameterPointer:src/V3EmitCFunc.cpp
constVariablePointer:src/V3EmitCFunc.cpp
constParameterPointer:src/V3EmitCFunc.h
constVariablePointer:src/V3EmitCFunc.h
constParameterPointer:src/V3EmitCImp.cpp
constParameterPointer:src/V3EmitCModel.cpp
constVariablePointer:src/V3EmitCModel.cpp
constVariablePointer:src/V3EmitV.cpp
constParameterReference:src/V3Error.cpp
constParameterPointer:src/V3ExecGraph.cpp
constVariablePointer:src/V3ExecGraph.cpp
constVariableReference:src/V3ExecGraph.cpp
constParameterPointer:src/V3Expand.cpp
constParameterPointer:src/V3FileLine.cpp
constParameterReference:src/V3FileLine.cpp
constParameterPointer:src/V3Force.cpp
constParameterPointer:src/V3Fork.cpp
constVariablePointer:src/V3Fork.cpp
constParameterPointer:src/V3FuncOpt.cpp
constVariablePointer:src/V3FuncOpt.cpp
constParameterPointer:src/V3Gate.cpp
constVariablePointer:src/V3Gate.cpp
constVariableReference:src/V3Gate.cpp
constParameterPointer:src/V3GraphAcyc.cpp
constVariableReference:src/V3GraphAcyc.cpp
constVariablePointer:src/V3GraphAlg.cpp
constVariableReference:src/V3GraphAlg.cpp
constParameterPointer:src/V3Graph.cpp
constVariableReference:src/V3Graph.cpp
constParameterPointer:src/V3LinkDot.cpp
constVariablePointer:src/V3LinkDot.cpp
constVariablePointer:src/V3LinkInc.cpp
constVariablePointer:src/V3LinkJump.cpp
constVariablePointer:src/V3LinkLevel.cpp
constParameterPointer:src/V3LinkParse.cpp
constVariablePointer:src/V3LinkParse.cpp
constVariablePointer:src/V3MergeCond.cpp
constParameterPointer:src/V3OrderCFuncEmitter.h
constVariablePointer:src/V3OrderMoveGraph.cpp
constParameterPointer:src/V3OrderParallel.cpp
constVariablePointer:src/V3OrderParallel.cpp
constVariableReference:src/V3OrderParallel.cpp
constParameterPointer:src/V3OrderProcessDomains.cpp
constVariablePointer:src/V3OrderProcessDomains.cpp
constVariablePointer:src/V3OrderSerial.cpp
constParameterPointer:src/V3Param.cpp
constVariablePointer:src/V3Param.cpp
constParameterPointer:src/V3ParseImp.cpp
constVariableReference:src/V3ParseImp.cpp
constVariableReference:src/V3PreProc.cpp
constParameterPointer:src/V3Randomize.cpp
constVariablePointer:src/V3Randomize.cpp
constVariablePointer:src/V3SchedAcyclic.cpp
constVariableReference:src/V3SchedAcyclic.cpp
constParameterPointer:src/V3Sched.cpp
constParameterReference:src/V3Sched.cpp
constVariablePointer:src/V3Sched.cpp
constParameterPointer:src/V3SchedPartition.cpp
constVariablePointer:src/V3SchedPartition.cpp
constVariableReference:src/V3SchedPartition.cpp
constParameterPointer:src/V3SchedReplicate.cpp
constParameterReference:src/V3SchedReplicate.cpp
constVariableReference:src/V3SchedReplicate.cpp
constVariablePointer:src/V3SchedTiming.cpp
constVariableReference:src/V3SchedTiming.cpp
constParameterPointer:src/V3SchedVirtIface.cpp
constVariablePointer:src/V3SchedVirtIface.cpp
constVariablePointer:src/V3SenExprBuilder.h
constVariablePointer:src/V3Slice.cpp
constParameterPointer:src/V3Split.cpp
constVariablePointer:src/V3Split.cpp
constParameterPointer:src/V3SplitVar.cpp
constParameterReference:src/V3SplitVar.cpp
constVariablePointer:src/V3SplitVar.cpp
constParameterPointer:src/V3Subst.cpp
constParameterPointer:src/V3Task.cpp
constParameterReference:src/V3Task.cpp
constVariablePointer:src/V3Task.cpp
constVariableReference:src/V3Task.cpp
constParameterPointer:src/V3Timing.cpp
constVariablePointer:src/V3Timing.cpp
constVariableReference:src/V3Timing.cpp
constVariablePointer:src/V3Trace.cpp
constParameterPointer:src/V3Tristate.cpp
constParameterReference:src/V3Tristate.cpp
constVariablePointer:src/V3Tristate.cpp
constVariableReference:src/V3Tristate.cpp
constParameterPointer:src/V3Undriven.cpp
constVariablePointer:src/V3Undriven.cpp
constParameterPointer:src/V3Unroll.cpp
constVariablePointer:src/V3Unroll.cpp
constParameterPointer:src/V3WidthCommit.cpp
constVariablePointer:src/V3WidthCommit.cpp
constParameterPointer:src/V3Width.cpp
constParameterReference:src/V3Width.cpp
constVariablePointer:src/V3Width.cpp
constVariableReference:src/V3Width.cpp
constVariablePointer:src/V3WidthSel.cpp
constParameterPointer:verilog.y
