[{"data":1,"prerenderedAt":2351},["ShallowReactive",2],{"global-navigation":3,"page-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fklocwork":28,"surround-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fklocwork":1746,"sidebar-sei-cert-cpp-coding-standard":1755},[4,8],{"title":5,"path":6,"_path":6,"fromAppConfig":7},"Home","\u002F",true,{"title":9,"path":10,"children":11,"_path":27,"fromAppConfig":7},"Coding Standards","\u002Fcoding-standards\u002F",[12,15,18,21,24],{"title":13,"path":14},"Android Coding Standard","\u002Fandroid-secure-coding-standard\u002F",{"title":16,"path":17},"C Coding Standard","\u002Fsei-cert-c-coding-standard\u002F",{"title":19,"path":20},"C++ Coding Standard","\u002Fsei-cert-cpp-coding-standard\u002F",{"title":22,"path":23},"Java Coding Standard","\u002Fsei-cert-oracle-coding-standard-for-java\u002F",{"title":25,"path":26},"Perl Coding Standard","\u002Fsei-cert-perl-coding-standard\u002F","\u002Fcoding-standards",{"id":29,"title":30,"body":31,"description":41,"extension":1738,"meta":1739,"navigation":7,"path":1742,"seo":1743,"stem":1744,"__hash__":1745},"content\u002F5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F25.klocwork.md","Klocwork",{"type":32,"value":33,"toc":1734},"minimark",[34,38,42,45,48,55],[35,36,30],"h1",{"id":37},"klocwork",[39,40,41],"p",{},"This page was automatically generated and should not be edited.",[39,43,44],{},"The information on this page was provided by outside contributors and has not been verified by SEI CERT.",[39,46,47],{},"The table below can be re-ordered, by clicking column headers.",[39,49,50,54],{},[51,52,53],"strong",{},"Tool Version:"," 2025.2",[56,57,58,69],"table",{},[59,60,61],"thead",{},[62,63,64,67],"tr",{},[65,66],"th",{},[65,68],{},[70,71,72,81,93,102,111,120,129,138,149,160,171,182,193,204,215,226,237,248,259,270,281,292,303,314,323,334,343,354,363,374,383,394,405,416,427,438,449,460,471,482,493,504,514,523,531,540,551,562,573,582,591,600,609,618,627,636,645,654,663,674,683,694,705,716,725,734,743,752,762,773,784,793,804,815,826,835,846,857,866,877,886,897,906,917,928,939,948,957,966,975,984,993,1002,1011,1020,1031,1040,1049,1060,1070,1079,1087,1096,1104,1113,1121,1130,1138,1147,1155,1164,1172,1181,1189,1198,1206,1215,1223,1232,1240,1249,1257,1266,1274,1283,1291,1300,1309,1318,1327,1338,1346,1355,1363,1372,1380,1389,1398,1407,1416,1425,1434,1444,1453,1461,1470,1478,1487,1495,1504,1512,1521,1529,1538,1546,1555,1563,1574,1582,1591,1599,1608,1616,1624,1633,1641,1649,1658,1666,1675,1683,1692,1700,1709,1717,1726],"tbody",{},[62,73,74,78],{},[75,76,77],"td",{},"Checker",[75,79,80],{},"Guideline",[62,82,83,86],{},[75,84,85],{},"ABV.ANY_SIZE_ARRAY",[75,87,88],{},[89,90,92],"a",{"href":91},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr50-cpp","CTR50-CPP. Guarantee that container indices and iterators are within the valid range",[62,94,95,98],{},[75,96,97],{},"ABV.GENERAL",[75,99,100],{},[89,101,92],{"href":91},[62,103,104,107],{},[75,105,106],{},"ABV.GENERAL.MULTIDIMENSION",[75,108,109],{},[89,110,92],{"href":91},[62,112,113,116],{},[75,114,115],{},"ABV.NON_ARRAY",[75,117,118],{},[89,119,92],{"href":91},[62,121,122,125],{},[75,123,124],{},"ABV.STACK",[75,126,127],{},[89,128,92],{"href":91},[62,130,131,134],{},[75,132,133],{},"ABV.TAINTED",[75,135,136],{},[89,137,92],{"href":91},[62,139,140,143],{},[75,141,142],{},"AUTOSAR.STDLIB.RANDOM.NBR_GEN_DEFAULT_INIT",[75,144,145],{},[89,146,148],{"href":147},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc51-cpp","MSC51-CPP. Ensure your random number generator is properly seeded",[62,150,151,154],{},[75,152,153],{},"CERT.CONC.MUTEX.DESTROY_WHILE_LOCKED",[75,155,156],{},[89,157,159],{"href":158},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon50-cpp","CON50-CPP. Do not destroy a mutex while it is locked",[62,161,162,165],{},[75,163,164],{},"CERT.CONC.UNSAFE_COND_VAR",[75,166,167],{},[89,168,170],{"href":169},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon55-cpp","CON55-CPP. Preserve thread safety and liveness when using condition variables",[62,172,173,176],{},[75,174,175],{},"CERT.CONC.WAKE_IN_LOOP",[75,177,178],{},[89,179,181],{"href":180},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon54-cpp","CON54-CPP. Wrap functions that can spuriously wake up in a loop",[62,183,184,187],{},[75,185,186],{},"CERT.DCL.AMBIGUOUS_DECL",[75,188,189],{},[89,190,192],{"href":191},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl53-cpp","DCL53-CPP. Do not write syntactically ambiguous declarations",[62,194,195,198],{},[75,196,197],{},"CERT.DCL.REF_TYPE.CONST_OR_VOLATILE",[75,199,200],{},[89,201,203],{"href":202},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl52-cpp","DCL52-CPP. Never qualify a reference type with const or volatile",[62,205,206,209],{},[75,207,208],{},"CERT.DCL.SAME_SCOPE_ALLOC_DEALLOC",[75,210,211],{},[89,212,214],{"href":213},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl54-cpp","DCL54-CPP. Overload allocation and deallocation functions as a pair in the same scope",[62,216,217,220],{},[75,218,219],{},"CERT.DCL.STD_NS_MODIFIED",[75,221,222],{},[89,223,225],{"href":224},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl58-cpp","DCL58-CPP. Do not modify the standard namespaces",[62,227,228,231],{},[75,229,230],{},"CERT.ERR.ABRUPT_TERM",[75,232,233],{},[89,234,236],{"href":235},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr50-cpp","ERR50-CPP. Do not abruptly terminate the program",[62,238,239,242],{},[75,240,241],{},"CERT.ERR.CONV.STR_TO_NUM",[75,243,244],{},[89,245,247],{"href":246},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr62-cpp","ERR62-CPP. Detect errors when converting a string to a number",[62,249,250,253],{},[75,251,252],{},"CERT.EXCEPTION.OVER.BOUNDARY",[75,254,255],{},[89,256,258],{"href":257},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr59-cpp","ERR59-CPP. Do not throw an exception across execution boundaries",[62,260,261,264],{},[75,262,263],{},"CERT.EXPR.DELETE_ARR.BASE_PTR",[75,265,266],{},[89,267,269],{"href":268},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp51-cpp","EXP51-CPP. Do not delete an array through a pointer of the incorrect type",[62,271,272,275],{},[75,273,274],{},"CERT.EXPR.DELETE_PTR.INCOMPLETE_TYPE",[75,276,277],{},[89,278,280],{"href":279},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp57-cpp","EXP57-CPP. Do not cast or delete pointers to incomplete classes",[62,282,283,286],{},[75,284,285],{},"CERT.EXPR.PARENS",[75,287,288],{},[89,289,291],{"href":290},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp50-cpp","EXP50-CPP. Do not depend on the order of evaluation for side effects",[62,293,294,297],{},[75,295,296],{},"CERT.EXPR.PASS_NON_STD_LAYOUT",[75,298,299],{},[89,300,302],{"href":301},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp60-cpp","EXP60-CPP. Do not pass a nonstandard-layout type object across execution boundaries",[62,304,305,308],{},[75,306,307],{},"CERT.MEM.OBJ_LIFETIME_CTOR",[75,309,310],{},[89,311,313],{"href":312},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem53-cpp","MEM53-CPP. Explicitly construct and destruct objects when manually managing object lifetime",[62,315,316,319],{},[75,317,318],{},"CERT.MEM.OBJ_LIFETIME_DTOR",[75,320,321],{},[89,322,313],{"href":312},[62,324,325,328],{},[75,326,327],{},"CERT.MEM.OVERRIDE.DELETE",[75,329,330],{},[89,331,333],{"href":332},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem55-cpp","MEM55-CPP. Honor replacement dynamic storage management requirements",[62,335,336,339],{},[75,337,338],{},"CERT.MEM.OVERRIDE.NEW",[75,340,341],{},[89,342,333],{"href":332},[62,344,345,348],{},[75,346,347],{},"CERT.MEM.PLACEMENTNEW.MISALIGNED",[75,349,350],{},[89,351,353],{"href":352},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem54-cpp","MEM54-CPP. Provide placement new with properly aligned pointers to sufficient storage capacity",[62,355,356,359],{},[75,357,358],{},"CERT.MEM.PLACEMENTNEW.TOOSMALL",[75,360,361],{},[89,362,353],{"href":352},[62,364,365,368],{},[75,366,367],{},"CERT.MEM.SMART_PTR.OWNED",[75,369,370],{},[89,371,373],{"href":372},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem56-cpp","MEM56-CPP. Do not store an already-owned pointer value in an unrelated smart pointer",[62,375,376,379],{},[75,377,378],{},"CERT.MEM.SMART_PTR.OWNED.THIS",[75,380,381],{},[89,382,373],{"href":372},[62,384,385,388],{},[75,386,387],{},"CERT.MEMCMP.PADDED_DATA",[75,389,390],{},[89,391,393],{"href":392},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp62-cpp","EXP62-CPP. Do not access the bits of an object representation that are not part of the object's value representation",[62,395,396,399],{},[75,397,398],{},"CERT.MSC.NORETURN_FUNC_RETURNS",[75,400,401],{},[89,402,404],{"href":403},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc53-cpp","MSC53-CPP. Do not return from a function declared [[noreturn]]",[62,406,407,410],{},[75,408,409],{},"CERT.MSC.SIG_HANDLER.POF",[75,411,412],{},[89,413,415],{"href":414},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc54-cpp","MSC54-CPP. A signal handler must be a plain old function",[62,417,418,421],{},[75,419,420],{},"CERT.MSC.STD_RAND_CALL",[75,422,423],{},[89,424,426],{"href":425},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Frand-for-generating-pseudorandom-numbers","MSC50-CPP. Do not use std::rand() for generating pseudorandom numbers",[62,428,429,432],{},[75,430,431],{},"CERT.OOP.COPY_MUTATES",[75,433,434],{},[89,435,437],{"href":436},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop58-cpp","OOP58-CPP. Copy operations must not mutate the source object",[62,439,440,443],{},[75,441,442],{},"CERT.OOP.CSTD_FUNC_USE",[75,444,445],{},[89,446,448],{"href":447},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop57-cpp","OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions",[62,450,451,454],{},[75,452,453],{},"CERT.OOP.CTOR.INIT_ORDER",[75,455,456],{},[89,457,459],{"href":458},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop53-cpp","OOP53-CPP. Write constructor member initializers in the canonical order",[62,461,462,465],{},[75,463,464],{},"CERT.OOP.CTOR.VIRTUAL_FUNC",[75,466,467],{},[89,468,470],{"href":469},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop50-cpp","OOP50-CPP. Do not invoke virtual functions from constructors or destructors",[62,472,473,476],{},[75,474,475],{},"CERT.OOP.PTR_MEMBER.NO_MEMBER",[75,477,478],{},[89,479,481],{"href":480},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop55-cpp","OOP55-CPP. Do not use pointer-to-member operators to access nonexistent members",[62,483,484,487],{},[75,485,486],{},"CERT.VA_START.TYPE",[75,488,489],{},[89,490,492],{"href":491},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp58-cpp","EXP58-CPP. Pass an object of the correct type to va_start",[62,494,495,498],{},[75,496,497],{},"CL.FFM.ASSIGN",[75,499,500],{},[89,501,503],{"href":502},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp54-cpp","EXP54-CPP. Do not access an object outside of its lifetime",[62,505,506,508],{},[75,507,497],{},[75,509,510],{},[89,511,513],{"href":512},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem51-cpp","MEM51-CPP. Properly deallocate dynamically allocated resources",[62,515,516,519],{},[75,517,518],{},"CL.FFM.COPY",[75,520,521],{},[89,522,503],{"href":502},[62,524,525,527],{},[75,526,518],{},[75,528,529],{},[89,530,513],{"href":512},[62,532,533,536],{},[75,534,535],{},"CL.FMM",[75,537,538],{},[89,539,513],{"href":512},[62,541,542,545],{},[75,543,544],{},"CL.MLK",[75,546,547],{},[89,548,550],{"href":549},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr57-cpp","ERR57-CPP. Do not leak resources when handling exceptions",[62,552,553,556],{},[75,554,555],{},"CL.MLK.VIRTUAL",[75,557,558],{},[89,559,561],{"href":560},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop52-cpp","OOP52-CPP. Do not delete a polymorphic object without a virtual destructor",[62,563,564,567],{},[75,565,566],{},"CL.SELF-ASSIGN",[75,568,569],{},[89,570,572],{"href":571},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop54-cpp","OOP54-CPP. Gracefully handle self-copy assignment",[62,574,575,578],{},[75,576,577],{},"CL.SHALLOW.ASSIGN",[75,579,580],{},[89,581,513],{"href":512},[62,583,584,587],{},[75,585,586],{},"CL.SHALLOW.COPY",[75,588,589],{},[89,590,513],{"href":512},[62,592,593,596],{},[75,594,595],{},"CWARN.DTOR.NONVIRT.DELETE",[75,597,598],{},[89,599,561],{"href":560},[62,601,602,605],{},[75,603,604],{},"CWARN.MEM.NONPOD",[75,606,607],{},[89,608,393],{"href":392},[62,610,611,614],{},[75,612,613],{},"FMM.MIGHT",[75,615,616],{},[89,617,513],{"href":512},[62,619,620,623],{},[75,621,622],{},"FMM.MUST",[75,624,625],{},[89,626,513],{"href":512},[62,628,629,632],{},[75,630,631],{},"FNH.MIGHT",[75,633,634],{},[89,635,513],{"href":512},[62,637,638,641],{},[75,639,640],{},"FNH.MUST",[75,642,643],{},[89,644,513],{"href":512},[62,646,647,650],{},[75,648,649],{},"FUM.GEN.MIGHT",[75,651,652],{},[89,653,513],{"href":512},[62,655,656,659],{},[75,657,658],{},"FUM.GEN.MUST",[75,660,661],{},[89,662,513],{"href":512},[62,664,665,668],{},[75,666,667],{},"FUNCRET.GEN",[75,669,670],{},[89,671,673],{"href":672},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc52-cpp","MSC52-CPP. Value-returning functions must return a value from all exit paths",[62,675,676,679],{},[75,677,678],{},"FUNCRET.IMPLICIT",[75,680,681],{},[89,682,673],{"href":672},[62,684,685,688],{},[75,686,687],{},"ITER.ADVANCE.NONADJACENT",[75,689,690],{},[89,691,693],{"href":692},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr55-cpp","CTR55-CPP. Do not use an additive operator on an iterator if the result would overflow",[62,695,696,699],{},[75,697,698],{},"ITER.CONTAINER.MODIFIED",[75,700,701],{},[89,702,704],{"href":703},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr51-cpp","CTR51-CPP. Use valid references, pointers, and iterators to reference elements of a container",[62,706,707,710],{},[75,708,709],{},"ITER.END.OUTPARAM.MIGHT",[75,711,712],{},[89,713,715],{"href":714},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr52-cpp","CTR52-CPP. Guarantee that library functions do not overflow",[62,717,718,721],{},[75,719,720],{},"ITER.END.OUTPARAM.MUST",[75,722,723],{},[89,724,715],{"href":714},[62,726,727,730],{},[75,728,729],{},"LOCRET.ARG",[75,731,732],{},[89,733,503],{"href":502},[62,735,736,739],{},[75,737,738],{},"LOCRET.GLOB",[75,740,741],{},[89,742,503],{"href":502},[62,744,745,748],{},[75,746,747],{},"LOCRET.RET",[75,749,750],{},[89,751,503],{"href":502},[62,753,754,756],{},[75,755,747],{},[75,757,758],{},[89,759,761],{"href":760},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp61-cpp","EXP61-CPP. A lambda object must not outlive any of its reference captured objects",[62,763,764,767],{},[75,765,766],{},"MISRA.CAST.CONST",[75,768,769],{},[89,770,772],{"href":771},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp55-cpp","EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type",[62,774,775,778],{},[75,776,777],{},"MISRA.CAST.PTR.UNRELATED",[75,779,780],{},[89,781,783],{"href":782},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp56-cpp","EXP56-CPP. Do not call a function with a mismatched language linkage",[62,785,786,789],{},[75,787,788],{},"MISRA.CAST.PTR_TO_INT",[75,790,791],{},[89,792,783],{"href":782},[62,794,795,798],{},[75,796,797],{},"MISRA.CATCH.ALL",[75,799,800],{},[89,801,803],{"href":802},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr51-cpp","ERR51-CPP. Handle all exceptions",[62,805,806,809],{},[75,807,808],{},"MISRA.CATCH.BY_VALUE",[75,810,811],{},[89,812,814],{"href":813},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr61-cpp","ERR61-CPP. Catch exceptions by lvalue reference",[62,816,817,820],{},[75,818,819],{},"MISRA.CATCH.NOALL",[75,821,822],{},[89,823,825],{"href":824},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr54-cpp","ERR54-CPP. Catch handlers should order their parameter types from most derived to least derived",[62,827,828,831],{},[75,829,830],{},"MISRA.CATCH.WRONGORD",[75,832,833],{},[89,834,825],{"href":824},[62,836,837,840],{},[75,838,839],{},"MISRA.CTOR.TRY.NON_STATIC",[75,841,842],{},[89,843,845],{"href":844},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr53-cpp","ERR53-CPP. Do not reference base classes or class data members in a constructor or destructor function-try-block handler",[62,847,848,851],{},[75,849,850],{},"MISRA.DEFINE.WRONGNAME",[75,852,853],{},[89,854,856],{"href":855},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl51-cpp","DCL51-CPP. Do not declare or define a reserved identifier",[62,858,859,862],{},[75,860,861],{},"MISRA.DEFINE.WRONGNAME.UNDERSCORE",[75,863,864],{},[89,865,856],{"href":855},[62,867,868,871],{},[75,869,870],{},"MISRA.DTOR.THROW",[75,872,873],{},[89,874,876],{"href":875},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl57-cpp","DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions",[62,878,879,882],{},[75,880,881],{},"MISRA.EXPR.PARENS.INSUFFICIENT",[75,883,884],{},[89,885,291],{"href":290},[62,887,888,891],{},[75,889,890],{},"MISRA.FUNC.VARARG",[75,892,893],{},[89,894,896],{"href":895},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl50-cpp","DCL50-CPP. Do not define a C-style variadic function",[62,898,899,902],{},[75,900,901],{},"MISRA.INCR_DECR.OTHER",[75,903,904],{},[89,905,291],{"href":290},[62,907,908,911],{},[75,909,910],{},"MISRA.NAMESPACE.UNMD",[75,912,913],{},[89,914,916],{"href":915},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl59-cpp","DCL59-CPP. Do not define an unnamed namespace in a header file",[62,918,919,922],{},[75,920,921],{},"MISRA.SIZEOF.SIDE_EFFECT",[75,923,924],{},[89,925,927],{"href":926},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp52-cpp","EXP52-CPP. Do not rely on side effects in unevaluated operands",[62,929,930,933],{},[75,931,932],{},"MISRA.STDLIB.LONGJMP",[75,934,935],{},[89,936,938],{"href":937},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr52-cpp","ERR52-CPP. Do not use setjmp() or longjmp()",[62,940,941,944],{},[75,942,943],{},"MISRA.STDLIB.WRONGNAME",[75,945,946],{},[89,947,856],{"href":855},[62,949,950,953],{},[75,951,952],{},"MISRA.STDLIB.WRONGNAME.UNDERSCORE",[75,954,955],{},[89,956,856],{"href":855},[62,958,959,962],{},[75,960,961],{},"MISRA.TERMINATE",[75,963,964],{},[89,965,236],{"href":235},[62,967,968,971],{},[75,969,970],{},"MISRA.UNDEF.WRONGNAME",[75,972,973],{},[89,974,856],{"href":855},[62,976,977,980],{},[75,978,979],{},"MISRA.UNDEF.WRONGNAME.UNDERSCORE",[75,981,982],{},[89,983,856],{"href":855},[62,985,986,989],{},[75,987,988],{},"MLK.MIGHT",[75,990,991],{},[89,992,550],{"href":549},[62,994,995,998],{},[75,996,997],{},"MLK.MUST",[75,999,1000],{},[89,1001,550],{"href":549},[62,1003,1004,1007],{},[75,1005,1006],{},"MLK.RET.MIGHT",[75,1008,1009],{},[89,1010,550],{"href":549},[62,1012,1013,1016],{},[75,1014,1015],{},"MLK.RET.MUST",[75,1017,1018],{},[89,1019,550],{"href":549},[62,1021,1022,1025],{},[75,1023,1024],{},"NNTS.MIGHT",[75,1026,1027],{},[89,1028,1030],{"href":1029},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstr50-cpp","STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator",[62,1032,1033,1036],{},[75,1034,1035],{},"NNTS.MUST",[75,1037,1038],{},[89,1039,1030],{"href":1029},[62,1041,1042,1045],{},[75,1043,1044],{},"NNTS.TAINTED",[75,1046,1047],{},[89,1048,1030],{"href":1029},[62,1050,1051,1054],{},[75,1052,1053],{},"NPD.CHECK.CALL.MIGHT",[75,1055,1056],{},[89,1057,1059],{"href":1058},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstring-from-a-null-pointer","STR51-CPP. Do not attempt to create a std::string from a null pointer",[62,1061,1062,1064],{},[75,1063,1053],{},[75,1065,1066],{},[89,1067,1069],{"href":1068},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem52-cpp","MEM52-CPP. Detect and handle memory allocation errors",[62,1071,1072,1075],{},[75,1073,1074],{},"NPD.CHECK.CALL.MUST",[75,1076,1077],{},[89,1078,1059],{"href":1058},[62,1080,1081,1083],{},[75,1082,1074],{},[75,1084,1085],{},[89,1086,1069],{"href":1068},[62,1088,1089,1092],{},[75,1090,1091],{},"NPD.CHECK.MIGHT",[75,1093,1094],{},[89,1095,1059],{"href":1058},[62,1097,1098,1100],{},[75,1099,1091],{},[75,1101,1102],{},[89,1103,1069],{"href":1068},[62,1105,1106,1109],{},[75,1107,1108],{},"NPD.CHECK.MUST",[75,1110,1111],{},[89,1112,1059],{"href":1058},[62,1114,1115,1117],{},[75,1116,1108],{},[75,1118,1119],{},[89,1120,1069],{"href":1068},[62,1122,1123,1126],{},[75,1124,1125],{},"NPD.CONST.CALL",[75,1127,1128],{},[89,1129,1059],{"href":1058},[62,1131,1132,1134],{},[75,1133,1125],{},[75,1135,1136],{},[89,1137,1069],{"href":1068},[62,1139,1140,1143],{},[75,1141,1142],{},"NPD.CONST.DEREF",[75,1144,1145],{},[89,1146,1059],{"href":1058},[62,1148,1149,1151],{},[75,1150,1142],{},[75,1152,1153],{},[89,1154,1069],{"href":1068},[62,1156,1157,1160],{},[75,1158,1159],{},"NPD.FUNC.CALL.MIGHT",[75,1161,1162],{},[89,1163,1059],{"href":1058},[62,1165,1166,1168],{},[75,1167,1159],{},[75,1169,1170],{},[89,1171,1069],{"href":1068},[62,1173,1174,1177],{},[75,1175,1176],{},"NPD.FUNC.CALL.MUST",[75,1178,1179],{},[89,1180,1059],{"href":1058},[62,1182,1183,1185],{},[75,1184,1176],{},[75,1186,1187],{},[89,1188,1069],{"href":1068},[62,1190,1191,1194],{},[75,1192,1193],{},"NPD.FUNC.MIGHT",[75,1195,1196],{},[89,1197,1059],{"href":1058},[62,1199,1200,1202],{},[75,1201,1193],{},[75,1203,1204],{},[89,1205,1069],{"href":1068},[62,1207,1208,1211],{},[75,1209,1210],{},"NPD.FUNC.MUST",[75,1212,1213],{},[89,1214,1059],{"href":1058},[62,1216,1217,1219],{},[75,1218,1210],{},[75,1220,1221],{},[89,1222,1069],{"href":1068},[62,1224,1225,1228],{},[75,1226,1227],{},"NPD.GEN.CALL.MIGHT",[75,1229,1230],{},[89,1231,1059],{"href":1058},[62,1233,1234,1236],{},[75,1235,1227],{},[75,1237,1238],{},[89,1239,1069],{"href":1068},[62,1241,1242,1245],{},[75,1243,1244],{},"NPD.GEN.CALL.MUST",[75,1246,1247],{},[89,1248,1059],{"href":1058},[62,1250,1251,1253],{},[75,1252,1244],{},[75,1254,1255],{},[89,1256,1069],{"href":1068},[62,1258,1259,1262],{},[75,1260,1261],{},"NPD.GEN.MIGHT",[75,1263,1264],{},[89,1265,1059],{"href":1058},[62,1267,1268,1270],{},[75,1269,1261],{},[75,1271,1272],{},[89,1273,1069],{"href":1068},[62,1275,1276,1279],{},[75,1277,1278],{},"NPD.GEN.MUST",[75,1280,1281],{},[89,1282,1059],{"href":1058},[62,1284,1285,1287],{},[75,1286,1278],{},[75,1288,1289],{},[89,1290,1069],{"href":1068},[62,1292,1293,1296],{},[75,1294,1295],{},"PORTING.CAST.PTR",[75,1297,1298],{},[89,1299,783],{"href":782},[62,1301,1302,1305],{},[75,1303,1304],{},"PORTING.CAST.PTR.FLTPNT",[75,1306,1307],{},[89,1308,783],{"href":782},[62,1310,1311,1314],{},[75,1312,1313],{},"PORTING.CAST.PTR.SIZE",[75,1315,1316],{},[89,1317,783],{"href":782},[62,1319,1320,1323],{},[75,1321,1322],{},"PORTING.VAR.EFFECTS",[75,1324,1325],{},[89,1326,291],{"href":290},[62,1328,1329,1332],{},[75,1330,1331],{},"RH.LEAK",[75,1333,1334],{},[89,1335,1337],{"href":1336},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Finput-output-fio\u002Ffio51-cpp","FIO51-CPP. Close files when they are no longer needed",[62,1339,1340,1342],{},[75,1341,1331],{},[75,1343,1344],{},[89,1345,550],{"href":549},[62,1347,1348,1351],{},[75,1349,1350],{},"RNPD.CALL",[75,1352,1353],{},[89,1354,1059],{"href":1058},[62,1356,1357,1359],{},[75,1358,1350],{},[75,1360,1361],{},[89,1362,1069],{"href":1068},[62,1364,1365,1368],{},[75,1366,1367],{},"RNPD.DEREF",[75,1369,1370],{},[89,1371,1059],{"href":1058},[62,1373,1374,1376],{},[75,1375,1367],{},[75,1377,1378],{},[89,1379,1069],{"href":1068},[62,1381,1382,1385],{},[75,1383,1384],{},"SV.TAINTED.ALLOC_SIZE",[75,1386,1387],{},[89,1388,92],{"href":91},[62,1390,1391,1394],{},[75,1392,1393],{},"SV.TAINTED.CALL.INDEX_ACCESS",[75,1395,1396],{},[89,1397,92],{"href":91},[62,1399,1400,1403],{},[75,1401,1402],{},"SV.TAINTED.CALL.LOOP_BOUND",[75,1404,1405],{},[89,1406,92],{"href":91},[62,1408,1409,1412],{},[75,1410,1411],{},"SV.TAINTED.INDEX_ACCESS",[75,1413,1414],{},[89,1415,92],{"href":91},[62,1417,1418,1421],{},[75,1419,1420],{},"SV.UNBOUND_STRING_INPUT.CIN",[75,1422,1423],{},[89,1424,1030],{"href":1029},[62,1426,1427,1430],{},[75,1428,1429],{},"UFM.DEREF.MIGHT",[75,1431,1432],{},[89,1433,503],{"href":502},[62,1435,1436,1438],{},[75,1437,1429],{},[75,1439,1440],{},[89,1441,1443],{"href":1442},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem50-cpp","MEM50-CPP. Do not access freed memory",[62,1445,1446,1449],{},[75,1447,1448],{},"UFM.DEREF.MUST",[75,1450,1451],{},[89,1452,503],{"href":502},[62,1454,1455,1457],{},[75,1456,1448],{},[75,1458,1459],{},[89,1460,1443],{"href":1442},[62,1462,1463,1466],{},[75,1464,1465],{},"UFM.FFM.MIGHT",[75,1467,1468],{},[89,1469,503],{"href":502},[62,1471,1472,1474],{},[75,1473,1465],{},[75,1475,1476],{},[89,1477,1443],{"href":1442},[62,1479,1480,1483],{},[75,1481,1482],{},"UFM.FFM.MUST",[75,1484,1485],{},[89,1486,503],{"href":502},[62,1488,1489,1491],{},[75,1490,1482],{},[75,1492,1493],{},[89,1494,1443],{"href":1442},[62,1496,1497,1500],{},[75,1498,1499],{},"UFM.RETURN.MIGHT",[75,1501,1502],{},[89,1503,503],{"href":502},[62,1505,1506,1508],{},[75,1507,1499],{},[75,1509,1510],{},[89,1511,1443],{"href":1442},[62,1513,1514,1517],{},[75,1515,1516],{},"UFM.RETURN.MUST",[75,1518,1519],{},[89,1520,503],{"href":502},[62,1522,1523,1525],{},[75,1524,1516],{},[75,1526,1527],{},[89,1528,1443],{"href":1442},[62,1530,1531,1534],{},[75,1532,1533],{},"UFM.USE.MIGHT",[75,1535,1536],{},[89,1537,503],{"href":502},[62,1539,1540,1542],{},[75,1541,1533],{},[75,1543,1544],{},[89,1545,1443],{"href":1442},[62,1547,1548,1551],{},[75,1549,1550],{},"UFM.USE.MUST",[75,1552,1553],{},[89,1554,503],{"href":502},[62,1556,1557,1559],{},[75,1558,1550],{},[75,1560,1561],{},[89,1562,1443],{"href":1442},[62,1564,1565,1568],{},[75,1566,1567],{},"UNINIT.CTOR.MIGHT",[75,1569,1570],{},[89,1571,1573],{"href":1572},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp53-cpp","EXP53-CPP. Do not read uninitialized memory",[62,1575,1576,1578],{},[75,1577,1567],{},[75,1579,1580],{},[89,1581,513],{"href":512},[62,1583,1584,1587],{},[75,1585,1586],{},"UNINIT.CTOR.MUST",[75,1588,1589],{},[89,1590,1573],{"href":1572},[62,1592,1593,1595],{},[75,1594,1586],{},[75,1596,1597],{},[89,1598,513],{"href":512},[62,1600,1601,1604],{},[75,1602,1603],{},"UNINIT.HEAP.MIGHT",[75,1605,1606],{},[89,1607,1573],{"href":1572},[62,1609,1610,1612],{},[75,1611,1603],{},[75,1613,1614],{},[89,1615,503],{"href":502},[62,1617,1618,1620],{},[75,1619,1603],{},[75,1621,1622],{},[89,1623,513],{"href":512},[62,1625,1626,1629],{},[75,1627,1628],{},"UNINIT.HEAP.MUST",[75,1630,1631],{},[89,1632,1573],{"href":1572},[62,1634,1635,1637],{},[75,1636,1628],{},[75,1638,1639],{},[89,1640,503],{"href":502},[62,1642,1643,1645],{},[75,1644,1628],{},[75,1646,1647],{},[89,1648,513],{"href":512},[62,1650,1651,1654],{},[75,1652,1653],{},"UNINIT.STACK.ARRAY.MIGHT",[75,1655,1656],{},[89,1657,1573],{"href":1572},[62,1659,1660,1662],{},[75,1661,1653],{},[75,1663,1664],{},[89,1665,503],{"href":502},[62,1667,1668,1671],{},[75,1669,1670],{},"UNINIT.STACK.ARRAY.MUST",[75,1672,1673],{},[89,1674,1573],{"href":1572},[62,1676,1677,1679],{},[75,1678,1670],{},[75,1680,1681],{},[89,1682,503],{"href":502},[62,1684,1685,1688],{},[75,1686,1687],{},"UNINIT.STACK.ARRAY.PARTIAL.MUST",[75,1689,1690],{},[89,1691,1573],{"href":1572},[62,1693,1694,1696],{},[75,1695,1687],{},[75,1697,1698],{},[89,1699,503],{"href":502},[62,1701,1702,1705],{},[75,1703,1704],{},"UNINIT.STACK.MIGHT",[75,1706,1707],{},[89,1708,1573],{"href":1572},[62,1710,1711,1713],{},[75,1712,1704],{},[75,1714,1715],{},[89,1716,503],{"href":502},[62,1718,1719,1722],{},[75,1720,1721],{},"UNINIT.STACK.MUST",[75,1723,1724],{},[89,1725,1573],{"href":1572},[62,1727,1728,1730],{},[75,1729,1721],{},[75,1731,1732],{},[89,1733,503],{"href":502},{"title":1735,"searchDepth":1736,"depth":1736,"links":1737},"",2,[],"md",{"tags":1740},[1741],"analyzer","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fklocwork",{"title":30,"description":41},"5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F25.klocwork","xhnwujwjIisApbOj-6qPrpPtKOVBmxDgnw34d4Q0V-Q",[1747,1751],{"title":1748,"path":1749,"stem":1750,"children":-1},"Helix QAC_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fhelix-qac_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F24.helix-qac_v",{"title":1752,"path":1753,"stem":1754,"children":-1},"Klocwork_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fklocwork_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F26.klocwork_v",[1756],{"title":1757,"path":1758,"stem":1759,"children":1760},"SEI CERT C++ Coding Standard","\u002Fsei-cert-cpp-coding-standard","5.sei-cert-cpp-coding-standard\u002F1.index",[1761,1762,1830,2120,2337,2347],{"title":1757,"path":1758,"stem":1759},{"title":1763,"path":1764,"stem":1765,"children":1766},"Front Matter","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F1.index",[1767,1768],{"title":1763,"path":1764,"stem":1765},{"title":1769,"path":1770,"stem":1771,"children":1772},"Introduction","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F01.index",[1773,1774,1778,1782,1786,1790,1794,1798,1802,1806,1810,1814,1818,1822,1826],{"title":1769,"path":1770,"stem":1771},{"title":1775,"path":1776,"stem":1777},"Scope","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fscope","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F02.scope",{"title":1779,"path":1780,"stem":1781},"Audience","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Faudience","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F03.audience",{"title":1783,"path":1784,"stem":1785},"Usage","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fusage","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F04.usage",{"title":1787,"path":1788,"stem":1789},"How this Coding Standard Is Organized","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fhow-this-coding-standard-is-organized","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F05.how-this-coding-standard-is-organized",{"title":1791,"path":1792,"stem":1793},"Relation to the CERT C Coding Standard","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Frelation-to-the-cert-c-coding-standard","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F06.relation-to-the-cert-c-coding-standard",{"title":1795,"path":1796,"stem":1797},"Rules Versus Recommendations","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Frules-versus-recommendations","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F07.rules-versus-recommendations",{"title":1799,"path":1800,"stem":1801},"Tool Selection and Validation","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Ftool-selection-and-validation","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F08.tool-selection-and-validation",{"title":1803,"path":1804,"stem":1805},"Conformance Testing","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fconformance-testing","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F09.conformance-testing",{"title":1807,"path":1808,"stem":1809},"Development Process","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fdevelopment-process","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F10.development-process",{"title":1811,"path":1812,"stem":1813},"System Qualities","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fsystem-qualities","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F11.system-qualities",{"title":1815,"path":1816,"stem":1817},"Automatically Generated Code","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fautomatically-generated-code","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F12.automatically-generated-code",{"title":1819,"path":1820,"stem":1821},"Government Regulations","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fgovernment-regulations","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F13.government-regulations",{"title":1823,"path":1824,"stem":1825},"Acknowledgments","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Facknowledgments","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F14.acknowledgments",{"title":1827,"path":1828,"stem":1829},"Automated Detection","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fautomated-detection","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F15.automated-detection",{"title":1831,"path":1832,"stem":1833,"children":1834},"Rules","\u002Fsei-cert-cpp-coding-standard\u002Frules","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F01.index",[1835,1836,1855,1883,1917,1951,1991,2029,2041,2051,2075,2092],{"title":1831,"path":1832,"stem":1833},{"title":1837,"path":1838,"stem":1839,"children":1840},"Characters and Strings (STR)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F1.index",[1841,1842,1844,1848,1852],{"title":1837,"path":1838,"stem":1839},{"title":1030,"path":1029,"stem":1843},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F2.str50-cpp",{"title":1845,"path":1846,"stem":1847},"STR52-CPP. Use valid references, pointers, and iterators to reference elements of a basic_string","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstr52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F3.str52-cpp",{"title":1849,"path":1850,"stem":1851},"STR53-CPP. Range check element access","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstr53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F4.str53-cpp",{"title":1853,"path":1058,"stem":1854},"string from a null pointer","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F5.string-from-a-null-pointer",{"title":1856,"path":1857,"stem":1858,"children":1859},"Concurrency (CON)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F1.index",[1860,1861,1863,1867,1871,1875,1877,1879],{"title":1856,"path":1857,"stem":1858},{"title":159,"path":158,"stem":1862},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F2.con50-cpp",{"title":1864,"path":1865,"stem":1866},"CON51-CPP. Ensure actively held locks are released on exceptional conditions","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F3.con51-cpp",{"title":1868,"path":1869,"stem":1870},"CON52-CPP. Prevent data races when accessing bit-fields from multiple threads","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F4.con52-cpp",{"title":1872,"path":1873,"stem":1874},"CON53-CPP. Avoid deadlock by locking in a predefined order","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F5.con53-cpp",{"title":181,"path":180,"stem":1876},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F6.con54-cpp",{"title":170,"path":169,"stem":1878},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F7.con55-cpp",{"title":1880,"path":1881,"stem":1882},"CON56-CPP. Do not speculatively lock a non-recursive mutex that is already owned by the calling thread","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F8.con56-cpp",{"title":1884,"path":1885,"stem":1886,"children":1887},"Containers (CTR)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F01.index",[1888,1889,1891,1893,1895,1899,1903,1905,1909,1913],{"title":1884,"path":1885,"stem":1886},{"title":92,"path":91,"stem":1890},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F02.ctr50-cpp",{"title":704,"path":703,"stem":1892},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F03.ctr51-cpp",{"title":715,"path":714,"stem":1894},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F04.ctr52-cpp",{"title":1896,"path":1897,"stem":1898},"CTR53-CPP. Use valid iterator ranges","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F05.ctr53-cpp",{"title":1900,"path":1901,"stem":1902},"CTR54-CPP. Do not subtract iterators that do not refer to the same container","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F06.ctr54-cpp",{"title":693,"path":692,"stem":1904},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F07.ctr55-cpp",{"title":1906,"path":1907,"stem":1908},"CTR56-CPP. Do not use pointer arithmetic on polymorphic objects","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F08.ctr56-cpp",{"title":1910,"path":1911,"stem":1912},"CTR57-CPP. Provide a valid ordering predicate","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F09.ctr57-cpp",{"title":1914,"path":1915,"stem":1916},"CTR58-CPP. Predicate function objects should not be mutable","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr58-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F10.ctr58-cpp",{"title":1918,"path":1919,"stem":1920,"children":1921},"Declarations and Initialization (DCL)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F01.index",[1922,1923,1925,1927,1929,1931,1933,1937,1941,1943,1945,1947],{"title":1918,"path":1919,"stem":1920},{"title":896,"path":895,"stem":1924},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F02.dcl50-cpp",{"title":856,"path":855,"stem":1926},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F03.dcl51-cpp",{"title":203,"path":202,"stem":1928},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F04.dcl52-cpp",{"title":192,"path":191,"stem":1930},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F05.dcl53-cpp",{"title":214,"path":213,"stem":1932},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F06.dcl54-cpp",{"title":1934,"path":1935,"stem":1936},"DCL55-CPP. Avoid information leakage when passing a class object across a trust boundary","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F07.dcl55-cpp",{"title":1938,"path":1939,"stem":1940},"DCL56-CPP. Avoid cycles during initialization of static objects","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F08.dcl56-cpp",{"title":876,"path":875,"stem":1942},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F09.dcl57-cpp",{"title":225,"path":224,"stem":1944},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F10.dcl58-cpp",{"title":916,"path":915,"stem":1946},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F11.dcl59-cpp",{"title":1948,"path":1949,"stem":1950},"DCL60-CPP. Obey the one-definition rule","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl60-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F12.dcl60-cpp",{"title":1952,"path":1953,"stem":1954,"children":1955},"Exceptions and Error Handling (ERR)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F01.index",[1956,1957,1959,1961,1963,1965,1967,1971,1975,1977,1981,1983,1987,1989],{"title":1952,"path":1953,"stem":1954},{"title":236,"path":235,"stem":1958},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F02.err50-cpp",{"title":803,"path":802,"stem":1960},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F03.err51-cpp",{"title":938,"path":937,"stem":1962},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F04.err52-cpp",{"title":845,"path":844,"stem":1964},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F05.err53-cpp",{"title":825,"path":824,"stem":1966},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F06.err54-cpp",{"title":1968,"path":1969,"stem":1970},"ERR55-CPP. Honor exception specifications","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F07.err55-cpp",{"title":1972,"path":1973,"stem":1974},"ERR56-CPP. Guarantee exception safety","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F08.err56-cpp",{"title":550,"path":549,"stem":1976},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F09.err57-cpp",{"title":1978,"path":1979,"stem":1980},"ERR58-CPP. Handle all exceptions thrown before main() begins executing","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr58-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F10.err58-cpp",{"title":258,"path":257,"stem":1982},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F11.err59-cpp",{"title":1984,"path":1985,"stem":1986},"ERR60-CPP. Exception objects must be nothrow copy constructible","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr60-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F12.err60-cpp",{"title":814,"path":813,"stem":1988},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F13.err61-cpp",{"title":247,"path":246,"stem":1990},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F14.err62-cpp",{"title":1992,"path":1993,"stem":1994,"children":1995},"Expressions (EXP)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F01.index",[1996,1997,1999,2001,2003,2005,2007,2009,2011,2013,2015,2019,2021,2023,2025],{"title":1992,"path":1993,"stem":1994},{"title":291,"path":290,"stem":1998},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F02.exp50-cpp",{"title":269,"path":268,"stem":2000},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F03.exp51-cpp",{"title":927,"path":926,"stem":2002},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F04.exp52-cpp",{"title":1573,"path":1572,"stem":2004},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F05.exp53-cpp",{"title":503,"path":502,"stem":2006},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F06.exp54-cpp",{"title":772,"path":771,"stem":2008},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F07.exp55-cpp",{"title":783,"path":782,"stem":2010},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F08.exp56-cpp",{"title":280,"path":279,"stem":2012},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F09.exp57-cpp",{"title":492,"path":491,"stem":2014},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F10.exp58-cpp",{"title":2016,"path":2017,"stem":2018},"EXP59-CPP. Use offsetof() on valid types and members","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp59-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F11.exp59-cpp",{"title":302,"path":301,"stem":2020},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F12.exp60-cpp",{"title":761,"path":760,"stem":2022},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F13.exp61-cpp",{"title":393,"path":392,"stem":2024},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F14.exp62-cpp",{"title":2026,"path":2027,"stem":2028},"EXP63-CPP. Do not rely on the value of a moved-from object","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp63-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F15.exp63-cpp",{"title":2030,"path":2031,"stem":2032,"children":2033},"Input Output (FIO)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Finput-output-fio","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F08.input-output-fio\u002F1.index",[2034,2035,2039],{"title":2030,"path":2031,"stem":2032},{"title":2036,"path":2037,"stem":2038},"FIO50-CPP. Do not alternately input and output from a file stream without an intervening positioning call","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Finput-output-fio\u002Ffio50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F08.input-output-fio\u002F2.fio50-cpp",{"title":1337,"path":1336,"stem":2040},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F08.input-output-fio\u002F3.fio51-cpp",{"title":2042,"path":2043,"stem":2044,"children":2045},"Integers (INT)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fintegers-int","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F09.integers-int\u002F1.index",[2046,2047],{"title":2042,"path":2043,"stem":2044},{"title":2048,"path":2049,"stem":2050},"INT50-CPP. Do not cast to an out-of-range enumeration value","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fintegers-int\u002Fint50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F09.integers-int\u002F2.int50-cpp",{"title":2052,"path":2053,"stem":2054,"children":2055},"Memory Management (MEM)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F1.index",[2056,2057,2059,2061,2063,2065,2067,2069,2071],{"title":2052,"path":2053,"stem":2054},{"title":1443,"path":1442,"stem":2058},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F2.mem50-cpp",{"title":513,"path":512,"stem":2060},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F3.mem51-cpp",{"title":1069,"path":1068,"stem":2062},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F4.mem52-cpp",{"title":313,"path":312,"stem":2064},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F5.mem53-cpp",{"title":353,"path":352,"stem":2066},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F6.mem54-cpp",{"title":333,"path":332,"stem":2068},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F7.mem55-cpp",{"title":373,"path":372,"stem":2070},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F8.mem56-cpp",{"title":2072,"path":2073,"stem":2074},"MEM57-CPP. Avoid using default operator new for over-aligned types","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F9.mem57-cpp",{"title":2076,"path":2077,"stem":2078,"children":2079},"Miscellaneous (MSC)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F1.index",[2080,2081,2083,2085,2087,2089],{"title":2076,"path":2077,"stem":2078},{"title":148,"path":147,"stem":2082},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F2.msc51-cpp",{"title":673,"path":672,"stem":2084},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F3.msc52-cpp",{"title":404,"path":403,"stem":2086},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F4.msc53-cpp",{"title":415,"path":414,"stem":2088},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F5.msc54-cpp",{"title":2090,"path":425,"stem":2091},"rand() for generating pseudorandom numbers","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F6.rand-for-generating-pseudorandom-numbers",{"title":2093,"path":2094,"stem":2095,"children":2096},"Object Oriented Programming (OOP)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F01.index",[2097,2098,2100,2104,2106,2108,2110,2112,2116,2118],{"title":2093,"path":2094,"stem":2095},{"title":470,"path":469,"stem":2099},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F02.oop50-cpp",{"title":2101,"path":2102,"stem":2103},"OOP51-CPP. Do not slice derived objects","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F03.oop51-cpp",{"title":561,"path":560,"stem":2105},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F04.oop52-cpp",{"title":459,"path":458,"stem":2107},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F05.oop53-cpp",{"title":572,"path":571,"stem":2109},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F06.oop54-cpp",{"title":481,"path":480,"stem":2111},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F07.oop55-cpp",{"title":2113,"path":2114,"stem":2115},"OOP56-CPP. Honor replacement handler requirements","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F08.oop56-cpp",{"title":448,"path":447,"stem":2117},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F09.oop57-cpp",{"title":437,"path":436,"stem":2119},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F10.oop58-cpp",{"title":2121,"path":2122,"stem":2123,"children":2124},"Back Matter","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F1.index",[2125,2126,2130,2134,2319,2333],{"title":2121,"path":2122,"stem":2123},{"title":2127,"path":2128,"stem":2129},"AA. Bibliography","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Faa-bibliography","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F2.aa-bibliography",{"title":2131,"path":2132,"stem":2133},"BB. Definitions","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fbb-definitions","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F3.bb-definitions",{"title":2135,"path":2136,"stem":2137,"children":2138},"CC. Analyzers","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F01.index",[2139,2140,2144,2148,2152,2156,2160,2164,2168,2172,2176,2180,2184,2188,2192,2196,2200,2204,2208,2212,2216,2220,2224,2228,2229,2230,2231,2235,2239,2243,2247,2251,2255,2259,2263,2267,2271,2275,2279,2283,2287,2291,2295,2299,2303,2307,2311,2315],{"title":2135,"path":2136,"stem":2137},{"title":2141,"path":2142,"stem":2143},"Astrée","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fastree","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F02.astree",{"title":2145,"path":2146,"stem":2147},"Astrée_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fastree_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F03.astree_v",{"title":2149,"path":2150,"stem":2151},"Axivion Bauhaus Suite","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Faxivion-bauhaus-suite","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F04.axivion-bauhaus-suite",{"title":2153,"path":2154,"stem":2155},"Axivion Bauhaus Suite_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Faxivion-bauhaus-suite_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F05.axivion-bauhaus-suite_v",{"title":2157,"path":2158,"stem":2159},"Clang","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fclang","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F06.clang",{"title":2161,"path":2162,"stem":2163},"Clang_38_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fclang_38_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F07.clang_38_v",{"title":2165,"path":2166,"stem":2167},"Clang_39_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fclang_39_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F08.clang_39_v",{"title":2169,"path":2170,"stem":2171},"Clang_40_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fclang_40_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F09.clang_40_v",{"title":2173,"path":2174,"stem":2175},"Clang_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fclang_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F10.clang_v",{"title":2177,"path":2178,"stem":2179},"Codee","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcodee","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F11.codee",{"title":2181,"path":2182,"stem":2183},"Codee_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcodee_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F12.codee_v",{"title":2185,"path":2186,"stem":2187},"CodeSonar","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcodesonar","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F13.codesonar",{"title":2189,"path":2190,"stem":2191},"CodeSonar_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcodesonar_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F14.codesonar_v",{"title":2193,"path":2194,"stem":2195},"Coverity","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcoverity","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F15.coverity",{"title":2197,"path":2198,"stem":2199},"Coverity_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fcoverity_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F16.coverity_v",{"title":2201,"path":2202,"stem":2203},"ECLAIR","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Feclair","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F17.eclair",{"title":2205,"path":2206,"stem":2207},"ECLAIR_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Feclair_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F18.eclair_v",{"title":2209,"path":2210,"stem":2211},"EDG","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fedg","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F19.edg",{"title":2213,"path":2214,"stem":2215},"Edg_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fedg_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F20.edg_v",{"title":2217,"path":2218,"stem":2219},"GCC","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fgcc","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F21.gcc",{"title":2221,"path":2222,"stem":2223},"Gcc_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fgcc_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F22.gcc_v",{"title":2225,"path":2226,"stem":2227},"Helix QAC","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fhelix-qac","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F23.helix-qac",{"title":1748,"path":1749,"stem":1750},{"title":30,"path":1742,"stem":1744},{"title":1752,"path":1753,"stem":1754},{"title":2232,"path":2233,"stem":2234},"LDRA","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fldra","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F27.ldra",{"title":2236,"path":2237,"stem":2238},"Ldra_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fldra_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F28.ldra_v",{"title":2240,"path":2241,"stem":2242},"Parasoft","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fparasoft","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F29.parasoft",{"title":2244,"path":2245,"stem":2246},"Parasoft_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fparasoft_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F30.parasoft_v",{"title":2248,"path":2249,"stem":2250},"Polyspace Bug Finder","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fpolyspace-bug-finder","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F31.polyspace-bug-finder",{"title":2252,"path":2253,"stem":2254},"Polyspace Bug Finder_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fpolyspace-bug-finder_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F32.polyspace-bug-finder_v",{"title":2256,"path":2257,"stem":2258},"PRQA QA-C++","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fprqa-qa-cpp","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F33.prqa-qa-cpp",{"title":2260,"path":2261,"stem":2262},"PRQA QA-C++_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fprqa-qa-cpp_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F34.prqa-qa-cpp_v",{"title":2264,"path":2265,"stem":2266},"PVS-Studio","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fpvs-studio","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F35.pvs-studio",{"title":2268,"path":2269,"stem":2270},"PVS-Studio_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fpvs-studio_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F36.pvs-studio_v",{"title":2272,"path":2273,"stem":2274},"Rose","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Frose","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F37.rose",{"title":2276,"path":2277,"stem":2278},"Rose_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Frose_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F38.rose_v",{"title":2280,"path":2281,"stem":2282},"RuleChecker","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Frulechecker","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F39.rulechecker",{"title":2284,"path":2285,"stem":2286},"RuleChecker_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Frulechecker_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F40.rulechecker_v",{"title":2288,"path":2289,"stem":2290},"Security Reviewer - Static Reviewer","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsecurity-reviewer-static-reviewer","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F41.security-reviewer-static-reviewer",{"title":2292,"path":2293,"stem":2294},"Security Reviewer - Static Reviewer_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsecurity-reviewer-static-reviewer_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F42.security-reviewer-static-reviewer_v",{"title":2296,"path":2297,"stem":2298},"Semgrep","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsemgrep","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F43.semgrep",{"title":2300,"path":2301,"stem":2302},"Semgrep_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsemgrep_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F44.semgrep_v",{"title":2304,"path":2305,"stem":2306},"SonarQube C\u002FC++ Plugin","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsonarqube-ccpp-plugin","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F45.sonarqube-ccpp-plugin",{"title":2308,"path":2309,"stem":2310},"SonarQube C\u002FC++ Plugin_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsonarqube-ccpp-plugin_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F46.sonarqube-ccpp-plugin_v",{"title":2312,"path":2313,"stem":2314},"Splint","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsplint","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F47.splint",{"title":2316,"path":2317,"stem":2318},"Splint_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fsplint_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F48.splint_v",{"title":2320,"path":2321,"stem":2322,"children":2323},"DD. Related Guidelines","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fdd-related-guidelines","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F5.dd-related-guidelines\u002F1.index",[2324,2325,2329],{"title":2320,"path":2321,"stem":2322},{"title":2326,"path":2327,"stem":2328},"2008","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fdd-related-guidelines\u002F2.2008","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F5.dd-related-guidelines\u002F2.2008",{"title":2330,"path":2331,"stem":2332},"MITRE CWE","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fdd-related-guidelines\u002Fmitre-cwe","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F5.dd-related-guidelines\u002F3.mitre-cwe",{"title":2334,"path":2335,"stem":2336},"EE. Risk Assessments","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fee-risk-assessments","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F6.ee-risk-assessments",{"title":2338,"path":2339,"stem":2340,"children":2341},"Admin","\u002Fsei-cert-cpp-coding-standard\u002Fadmin","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F1.index",[2342,2343],{"title":2338,"path":2339,"stem":2340},{"title":2344,"path":2345,"stem":2346},"TODO List","\u002Fsei-cert-cpp-coding-standard\u002Fadmin\u002Ftodo-list","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F2.todo-list",{"title":2348,"path":2349,"stem":2350},"Errata for SEI CERT C++ Coding Standard (2016 Edition)","\u002Fsei-cert-cpp-coding-standard\u002Ferrata-for-sei-cert-cpp-coding-standard-2016-edition","5.sei-cert-cpp-coding-standard\u002F6.errata-for-sei-cert-cpp-coding-standard-2016-edition",1775657785857]