[{"data":1,"prerenderedAt":2118},["ShallowReactive",2],{"global-navigation":3,"page-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fprqa-qa-cpp":31,"surround-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fprqa-qa-cpp":1501,"sidebar-sei-cert-cpp-coding-standard":1510},[4,8],{"title":5,"path":6,"_path":6,"fromAppConfig":7},"Home","\u002F",true,{"title":9,"path":10,"children":11,"_path":30,"fromAppConfig":7},"Coding Standards","\u002Fcoding-standards\u002F",[12,15,18,21,24,27],{"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},"Fortran Coding Standard","\u002Fsei-cert-fortran-coding-standard\u002F",{"title":25,"path":26},"Java Coding Standard","\u002Fsei-cert-oracle-coding-standard-for-java\u002F",{"title":28,"path":29},"Perl Coding Standard","\u002Fsei-cert-perl-coding-standard\u002F","\u002Fcoding-standards",{"id":32,"title":33,"body":34,"description":44,"extension":1493,"meta":1494,"navigation":7,"path":1497,"seo":1498,"stem":1499,"__hash__":1500},"content\u002F5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F33.prqa-qa-cpp.md","PRQA QA-C++",{"type":35,"value":36,"toc":1489},"minimark",[37,41,45,48,51,58],[38,39,33],"h1",{"id":40},"prqa-qa-c",[42,43,44],"p",{},"This page was automatically generated and should not be edited.",[42,46,47],{},"The information on this page was provided by outside contributors and has not been verified by SEI CERT.",[42,49,50],{},"The table below can be re-ordered, by clicking column headers.",[42,52,53,57],{},[54,55,56],"strong",{},"Tool Version:"," 4.4",[59,60,61,72],"table",{},[62,63,64],"thead",{},[65,66,67,70],"tr",{},[68,69],"th",{},[68,71],{},[73,74,75,84,96,107,118,127,138,147,158,169,178,187,196,205,216,227,236,247,256,267,278,287,296,305,314,323,332,341,350,361,370,381,389,398,406,415,423,434,445,454,463,472,481,490,499,508,517,526,535,544,553,562,571,580,589,598,609,620,631,642,653,662,671,682,691,700,709,720,730,739,747,756,764,773,781,789,798,806,815,824,833,842,851,862,871,880,889,900,909,918,929,940,951,960,969,980,991,1002,1011,1021,1031,1040,1048,1057,1068,1079,1088,1099,1107,1117,1126,1134,1145,1154,1163,1172,1181,1190,1199,1208,1217,1226,1235,1244,1253,1262,1271,1282,1291,1300,1309,1317,1328,1337,1346,1355,1363,1372,1383,1392,1403,1414,1425,1436,1447,1458,1469,1480],"tbody",{},[65,76,77,81],{},[78,79,80],"td",{},"Checker",[78,82,83],{},"Guideline",[65,85,86,89],{},[78,87,88],{},"0014",[78,90,91],{},[92,93,95],"a",{"href":94},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl52-cpp","DCL52-CPP. Never qualify a reference type with const or volatile",[65,97,98,101],{},[78,99,100],{},"1510",[78,102,103],{},[92,104,106],{"href":105},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc52-cpp","MSC52-CPP. Value-returning functions must return a value from all exit paths",[65,108,109,112],{},[78,110,111],{},"1772",[78,113,114],{},[92,115,117],{"href":116},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon53-cpp","CON53-CPP. Avoid deadlock by locking in a predefined order",[65,119,120,123],{},[78,121,122],{},"1773",[78,124,125],{},[92,126,117],{"href":116},[65,128,129,132],{},[78,130,131],{},"1774",[78,133,134],{},[92,135,137],{"href":136},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon52-cpp","CON52-CPP. Prevent data races when accessing bit-fields from multiple threads",[65,139,140,143],{},[78,141,142],{},"1775",[78,144,145],{},[92,146,137],{"href":136},[65,148,149,152],{},[78,150,151],{},"2012",[78,153,154],{},[92,155,157],{"href":156},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl50-cpp","DCL50-CPP. Do not define a C-style variadic function",[65,159,160,163],{},[78,161,162],{},"2110",[78,164,165],{},[92,166,168],{"href":167},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem51-cpp","MEM51-CPP. Properly deallocate dynamically allocated resources",[65,170,171,174],{},[78,172,173],{},"2111",[78,175,176],{},[92,177,168],{"href":167},[65,179,180,183],{},[78,181,182],{},"2112",[78,184,185],{},[92,186,168],{"href":167},[65,188,189,192],{},[78,190,191],{},"2113",[78,193,194],{},[92,195,168],{"href":167},[65,197,198,201],{},[78,199,200],{},"2118",[78,202,203],{},[92,204,168],{"href":167},[65,206,207,210],{},[78,208,209],{},"2160",[78,211,212],{},[92,213,215],{"href":214},"\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",[65,217,218,221],{},[78,219,220],{},"2502",[78,222,223],{},[92,224,226],{"href":225},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl53-cpp","DCL53-CPP. Do not write syntactically ambiguous declarations",[65,228,229,232],{},[78,230,231],{},"2510",[78,233,234],{},[92,235,226],{"href":225},[65,237,238,241],{},[78,239,240],{},"2518",[78,242,243],{},[92,244,246],{"href":245},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl59-cpp","DCL59-CPP. Do not define an unnamed namespace in a header file",[65,248,249,252],{},[78,250,251],{},"2625",[78,253,254],{},[92,255,157],{"href":156},[65,257,258,261],{},[78,259,260],{},"2668",[78,262,263],{},[92,264,266],{"href":265},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr54-cpp","CTR54-CPP. Do not subtract iterators that do not refer to the same container",[65,268,269,272],{},[78,270,271],{},"2726",[78,273,274],{},[92,275,277],{"href":276},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp53-cpp","EXP53-CPP. Do not read uninitialized memory",[65,279,280,283],{},[78,281,282],{},"2727",[78,284,285],{},[92,286,277],{"href":276},[65,288,289,292],{},[78,290,291],{},"2728",[78,293,294],{},[92,295,277],{"href":276},[65,297,298,301],{},[78,299,300],{},"2761",[78,302,303],{},[92,304,266],{"href":265},[65,306,307,310],{},[78,308,309],{},"2762",[78,311,312],{},[92,313,266],{"href":265},[65,315,316,319],{},[78,317,318],{},"2763",[78,320,321],{},[92,322,266],{"href":265},[65,324,325,328],{},[78,326,327],{},"2766",[78,329,330],{},[92,331,266],{"href":265},[65,333,334,337],{},[78,335,336],{},"2767",[78,338,339],{},[92,340,266],{"href":265},[65,342,343,346],{},[78,344,345],{},"2768",[78,347,348],{},[92,349,266],{"href":265},[65,351,352,355],{},[78,353,354],{},"2810",[78,356,357],{},[92,358,360],{"href":359},"\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",[65,362,363,366],{},[78,364,365],{},"2811",[78,367,368],{},[92,369,360],{"href":359},[65,371,372,375],{},[78,373,374],{},"2812",[78,376,377],{},[92,378,380],{"href":379},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp54-cpp","EXP54-CPP. Do not access an object outside of its lifetime",[65,382,383,385],{},[78,384,374],{},[78,386,387],{},[92,388,360],{"href":359},[65,390,391,394],{},[78,392,393],{},"2813",[78,395,396],{},[92,397,380],{"href":379},[65,399,400,402],{},[78,401,393],{},[78,403,404],{},[92,405,360],{"href":359},[65,407,408,411],{},[78,409,410],{},"2814",[78,412,413],{},[92,414,380],{"href":379},[65,416,417,419],{},[78,418,410],{},[78,420,421],{},[92,422,360],{"href":359},[65,424,425,428],{},[78,426,427],{},"2888",[78,429,430],{},[92,431,433],{"href":432},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc54-cpp","MSC54-CPP. A signal handler must be a plain old function",[65,435,436,439],{},[78,437,438],{},"2891",[78,440,441],{},[92,442,444],{"href":443},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr50-cpp","CTR50-CPP. Guarantee that container indices and iterators are within the valid range",[65,446,447,450],{},[78,448,449],{},"2930",[78,451,452],{},[92,453,380],{"href":379},[65,455,456,459],{},[78,457,458],{},"2931",[78,460,461],{},[92,462,380],{"href":379},[65,464,465,468],{},[78,466,467],{},"2932",[78,469,470],{},[92,471,380],{"href":379},[65,473,474,477],{},[78,475,476],{},"2933",[78,478,479],{},[92,480,380],{"href":379},[65,482,483,486],{},[78,484,485],{},"2934",[78,487,488],{},[92,489,380],{"href":379},[65,491,492,495],{},[78,493,494],{},"2961",[78,496,497],{},[92,498,277],{"href":276},[65,500,501,504],{},[78,502,503],{},"2962",[78,505,506],{},[92,507,277],{"href":276},[65,509,510,513],{},[78,511,512],{},"2963",[78,514,515],{},[92,516,277],{"href":276},[65,518,519,522],{},[78,520,521],{},"2966",[78,523,524],{},[92,525,277],{"href":276},[65,527,528,531],{},[78,529,530],{},"2967",[78,532,533],{},[92,534,277],{"href":276},[65,536,537,540],{},[78,538,539],{},"2968",[78,541,542],{},[92,543,277],{"href":276},[65,545,546,549],{},[78,547,548],{},"2971",[78,550,551],{},[92,552,277],{"href":276},[65,554,555,558],{},[78,556,557],{},"2972",[78,559,560],{},[92,561,277],{"href":276},[65,563,564,567],{},[78,565,566],{},"2973",[78,568,569],{},[92,570,277],{"href":276},[65,572,573,576],{},[78,574,575],{},"2976",[78,577,578],{},[92,579,277],{"href":276},[65,581,582,585],{},[78,583,584],{},"2977",[78,586,587],{},[92,588,277],{"href":276},[65,590,591,594],{},[78,592,593],{},"2978",[78,595,596],{},[92,597,277],{"href":276},[65,599,600,603],{},[78,601,602],{},"3013",[78,604,605],{},[92,606,608],{"href":607},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fintegers-int\u002Fint50-cpp","INT50-CPP. Do not cast to an out-of-range enumeration value",[65,610,611,614],{},[78,612,613],{},"3033. 3038",[78,615,616],{},[92,617,619],{"href":618},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp56-cpp","EXP56-CPP. Do not call a function with a mismatched language linkage",[65,621,622,625],{},[78,623,624],{},"3066",[78,626,627],{},[92,628,630],{"href":629},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp55-cpp","EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type",[65,632,633,636],{},[78,634,635],{},"3072",[78,637,638],{},[92,639,641],{"href":640},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop51-cpp","OOP51-CPP. Do not slice derived objects",[65,643,644,647],{},[78,645,646],{},"3073",[78,648,649],{},[92,650,652],{"href":651},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr56-cpp","CTR56-CPP. Do not use pointer arithmetic on polymorphic objects",[65,654,655,658],{},[78,656,657],{},"3139",[78,659,660],{},[92,661,444],{"href":443},[65,663,664,667],{},[78,665,666],{},"3140",[78,668,669],{},[92,670,444],{"href":443},[65,672,673,676],{},[78,674,675],{},"3220",[78,677,678],{},[92,679,681],{"href":680},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp50-cpp","EXP50-CPP. Do not depend on the order of evaluation for side effects",[65,683,684,687],{},[78,685,686],{},"3221",[78,688,689],{},[92,690,681],{"href":680},[65,692,693,696],{},[78,694,695],{},"3222",[78,697,698],{},[92,699,681],{"href":680},[65,701,702,705],{},[78,703,704],{},"3223",[78,706,707],{},[92,708,681],{"href":680},[65,710,711,714],{},[78,712,713],{},"3225",[78,715,716],{},[92,717,719],{"href":718},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr58-cpp","CTR58-CPP. Predicate function objects should not be mutable",[65,721,722,724],{},[78,723,713],{},[78,725,726],{},[92,727,729],{"href":728},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem52-cpp","MEM52-CPP. Detect and handle memory allocation errors",[65,731,732,735],{},[78,733,734],{},"3226",[78,736,737],{},[92,738,719],{"href":718},[65,740,741,743],{},[78,742,734],{},[78,744,745],{},[92,746,729],{"href":728},[65,748,749,752],{},[78,750,751],{},"3227",[78,753,754],{},[92,755,719],{"href":718},[65,757,758,760],{},[78,759,751],{},[78,761,762],{},[92,763,729],{"href":728},[65,765,766,769],{},[78,767,768],{},"3228",[78,770,771],{},[92,772,681],{"href":680},[65,774,775,777],{},[78,776,768],{},[78,778,779],{},[92,780,719],{"href":718},[65,782,783,785],{},[78,784,768],{},[78,786,787],{},[92,788,729],{"href":728},[65,790,791,794],{},[78,792,793],{},"3229",[78,795,796],{},[92,797,719],{"href":718},[65,799,800,802],{},[78,801,793],{},[78,803,804],{},[92,805,729],{"href":728},[65,807,808,811],{},[78,809,810],{},"3230",[78,812,813],{},[92,814,719],{"href":718},[65,816,817,820],{},[78,818,819],{},"3231",[78,821,822],{},[92,823,719],{"href":718},[65,825,826,829],{},[78,827,828],{},"3232",[78,830,831],{},[92,832,719],{"href":718},[65,834,835,838],{},[78,836,837],{},"3233",[78,839,840],{},[92,841,719],{"href":718},[65,843,844,847],{},[78,845,846],{},"3234",[78,848,849],{},[92,850,719],{"href":718},[65,852,853,856],{},[78,854,855],{},"3240",[78,857,858],{},[92,859,861],{"href":860},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp52-cpp","EXP52-CPP. Do not rely on side effects in unevaluated operands",[65,863,864,867],{},[78,865,866],{},"3241",[78,868,869],{},[92,870,861],{"href":860},[65,872,873,876],{},[78,874,875],{},"3337",[78,877,878],{},[92,879,168],{"href":167},[65,881,882,885],{},[78,883,884],{},"3339",[78,886,887],{},[92,888,168],{"href":167},[65,890,891,894],{},[78,892,893],{},"3402",[78,895,896],{},[92,897,899],{"href":898},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop52-cpp","OOP52-CPP. Do not delete a polymorphic object without a virtual destructor",[65,901,902,905],{},[78,903,904],{},"3403",[78,906,907],{},[92,908,899],{"href":898},[65,910,911,914],{},[78,912,913],{},"3404",[78,915,916],{},[92,917,899],{"href":898},[65,919,920,923],{},[78,921,922],{},"3508",[78,924,925],{},[92,926,928],{"href":927},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr60-cpp","ERR60-CPP. Exception objects must be nothrow copy constructible",[65,930,931,934],{},[78,932,933],{},"3510",[78,935,936],{},[92,937,939],{"href":938},"\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",[65,941,942,945],{},[78,943,944],{},"3802",[78,946,947],{},[92,948,950],{"href":949},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr53-cpp","CTR53-CPP. Use valid iterator ranges",[65,952,953,956],{},[78,954,955],{},"4003",[78,957,958],{},[92,959,380],{"href":379},[65,961,962,965],{},[78,963,964],{},"4026",[78,966,967],{},[92,968,380],{"href":379},[65,970,971,974],{},[78,972,973],{},"4030",[78,975,976],{},[92,977,979],{"href":978},"\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",[65,981,982,985],{},[78,983,984],{},"4031",[78,986,987],{},[92,988,990],{"href":989},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr61-cpp","ERR61-CPP. Catch exceptions by lvalue reference",[65,992,993,996],{},[78,994,995],{},"4032",[78,997,998],{},[92,999,1001],{"href":1000},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl58-cpp","DCL58-CPP. Do not modify the standard namespaces",[65,1003,1004,1007],{},[78,1005,1006],{},"4035",[78,1008,1009],{},[92,1010,1001],{"href":1000},[65,1012,1013,1015],{},[78,1014,1006],{},[78,1016,1017],{},[92,1018,1020],{"href":1019},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr51-cpp","ERR51-CPP. Handle all exceptions",[65,1022,1023,1025],{},[78,1024,1006],{},[78,1026,1027],{},[92,1028,1030],{"href":1029},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr55-cpp","ERR55-CPP. Honor exception specifications",[65,1032,1033,1036],{},[78,1034,1035],{},"4036",[78,1037,1038],{},[92,1039,1020],{"href":1019},[65,1041,1042,1044],{},[78,1043,1035],{},[78,1045,1046],{},[92,1047,1030],{"href":1029},[65,1049,1050,1053],{},[78,1051,1052],{},"4037",[78,1054,1055],{},[92,1056,1020],{"href":1019},[65,1058,1059,1062],{},[78,1060,1061],{},"4053",[78,1063,1064],{},[92,1065,1067],{"href":1066},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop53-cpp","OOP53-CPP. Write constructor member initializers in the canonical order",[65,1069,1070,1073],{},[78,1071,1072],{},"4072",[78,1074,1075],{},[92,1076,1078],{"href":1077},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop54-cpp","OOP54-CPP. Gracefully handle self-copy assignment",[65,1080,1081,1084],{},[78,1082,1083],{},"4073",[78,1085,1086],{},[92,1087,1078],{"href":1077},[65,1089,1090,1093],{},[78,1091,1092],{},"4075",[78,1094,1095],{},[92,1096,1098],{"href":1097},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr56-cpp","ERR56-CPP. Guarantee exception safety",[65,1100,1101,1103],{},[78,1102,1092],{},[78,1104,1105],{},[92,1106,1078],{"href":1077},[65,1108,1109,1111],{},[78,1110,1092],{},[78,1112,1113],{},[92,1114,1116],{"href":1115},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop58-cpp","OOP58-CPP. Copy operations must not mutate the source object",[65,1118,1119,1122],{},[78,1120,1121],{},"4076",[78,1123,1124],{},[92,1125,1098],{"href":1097},[65,1127,1128,1130],{},[78,1129,1121],{},[78,1131,1132],{},[92,1133,1078],{"href":1077},[65,1135,1136,1139],{},[78,1137,1138],{},"4260",[78,1140,1141],{},[92,1142,1144],{"href":1143},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop50-cpp","OOP50-CPP. Do not invoke virtual functions from constructors or destructors",[65,1146,1147,1150],{},[78,1148,1149],{},"4261",[78,1151,1152],{},[92,1153,1144],{"href":1143},[65,1155,1156,1159],{},[78,1157,1158],{},"4262",[78,1160,1161],{},[92,1162,168],{"href":167},[65,1164,1165,1168],{},[78,1166,1167],{},"4263",[78,1169,1170],{},[92,1171,168],{"href":167},[65,1173,1174,1177],{},[78,1175,1176],{},"4264",[78,1178,1179],{},[92,1180,168],{"href":167},[65,1182,1183,1186],{},[78,1184,1185],{},"4273",[78,1187,1188],{},[92,1189,1144],{"href":1143},[65,1191,1192,1195],{},[78,1193,1194],{},"4274",[78,1196,1197],{},[92,1198,1144],{"href":1143},[65,1200,1201,1204],{},[78,1202,1203],{},"4275",[78,1205,1206],{},[92,1207,1144],{"href":1143},[65,1209,1210,1213],{},[78,1211,1212],{},"4276",[78,1214,1215],{},[92,1216,1144],{"href":1143},[65,1218,1219,1222],{},[78,1220,1221],{},"4277",[78,1223,1224],{},[92,1225,1144],{"href":1143},[65,1227,1228,1231],{},[78,1229,1230],{},"4278",[78,1232,1233],{},[92,1234,1144],{"href":1143},[65,1236,1237,1240],{},[78,1238,1239],{},"4279",[78,1241,1242],{},[92,1243,1144],{"href":1143},[65,1245,1246,1249],{},[78,1247,1248],{},"4280",[78,1250,1251],{},[92,1252,1144],{"href":1143},[65,1254,1255,1258],{},[78,1256,1257],{},"4281",[78,1259,1260],{},[92,1261,1144],{"href":1143},[65,1263,1264,1267],{},[78,1265,1266],{},"4282",[78,1268,1269],{},[92,1270,1144],{"href":1143},[65,1272,1273,1276],{},[78,1274,1275],{},"4303",[78,1277,1278],{},[92,1279,1281],{"href":1280},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem50-cpp","MEM50-CPP. Do not access freed memory",[65,1283,1284,1287],{},[78,1285,1286],{},"4304",[78,1288,1289],{},[92,1290,1281],{"href":1280},[65,1292,1293,1296],{},[78,1294,1295],{},"4631",[78,1297,1298],{},[92,1299,1001],{"href":1000},[65,1301,1302,1305],{},[78,1303,1304],{},"4632",[78,1306,1307],{},[92,1308,729],{"href":728},[65,1310,1311,1313],{},[78,1312,1304],{},[78,1314,1315],{},[92,1316,1030],{"href":1029},[65,1318,1319,1322],{},[78,1320,1321],{},"4634",[78,1323,1324],{},[92,1325,1327],{"href":1326},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr58-cpp","ERR58-CPP. Handle all exceptions thrown before main() begins executing",[65,1329,1330,1333],{},[78,1331,1332],{},"4636",[78,1334,1335],{},[92,1336,1327],{"href":1326},[65,1338,1339,1342],{},[78,1340,1341],{},"4637",[78,1343,1344],{},[92,1345,1327],{"href":1326},[65,1347,1348,1351],{},[78,1349,1350],{},"4639",[78,1352,1353],{},[92,1354,979],{"href":978},[65,1356,1357,1359],{},[78,1358,1350],{},[78,1360,1361],{},[92,1362,1327],{"href":1326},[65,1364,1365,1368],{},[78,1366,1367],{},"4671",[78,1369,1370],{},[92,1371,630],{"href":629},[65,1373,1374,1377],{},[78,1375,1376],{},"4961",[78,1378,1379],{},[92,1380,1382],{"href":1381},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon50-cpp","CON50-CPP. Do not destroy a mutex while it is locked",[65,1384,1385,1388],{},[78,1386,1387],{},"4962",[78,1389,1390],{},[92,1391,1382],{"href":1381},[65,1393,1394,1397],{},[78,1395,1396],{},"5003",[78,1398,1399],{},[92,1400,1402],{"href":1401},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl51-cpp","DCL51-CPP. Do not declare or define a reserved identifier",[65,1404,1405,1408],{},[78,1406,1407],{},"5014",[78,1409,1410],{},[92,1411,1413],{"href":1412},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr50-cpp","ERR50-CPP. Do not abruptly terminate the program",[65,1415,1416,1419],{},[78,1417,1418],{},"5015",[78,1420,1421],{},[92,1422,1424],{"href":1423},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr52-cpp","ERR52-CPP. Do not use setjmp() or longjmp()",[65,1426,1427,1430],{},[78,1428,1429],{},"5017",[78,1431,1432],{},[92,1433,1435],{"href":1434},"\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",[65,1437,1438,1441],{},[78,1439,1440],{},"5018",[78,1442,1443],{},[92,1444,1446],{"href":1445},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon51-cpp","CON51-CPP. Ensure actively held locks are released on exceptional conditions",[65,1448,1449,1452],{},[78,1450,1451],{},"5019",[78,1453,1454],{},[92,1455,1457],{"href":1456},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon54-cpp","CON54-CPP. Wrap functions that can spuriously wake up in a loop",[65,1459,1460,1463],{},[78,1461,1462],{},"5020",[78,1464,1465],{},[92,1466,1468],{"href":1467},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon55-cpp","CON55-CPP. Preserve thread safety and liveness when using condition variables",[65,1470,1471,1474],{},[78,1472,1473],{},"5028",[78,1475,1476],{},[92,1477,1479],{"href":1478},"\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc50-cpp","MSC50-CPP. Do not use std::rand() for generating pseudorandom numbers",[65,1481,1482,1485],{},[78,1483,1484],{},"5038",[78,1486,1487],{},[92,1488,1435],{"href":1434},{"title":1490,"searchDepth":1491,"depth":1491,"links":1492},"",2,[],"md",{"tags":1495},[1496],"analyzer","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fprqa-qa-cpp",{"title":33,"description":44},"5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F33.prqa-qa-cpp","LX0fJ-iiRn7UYvmCWpnADSZ3F7ZblH5Ebw7YFSw_8TI",[1502,1506],{"title":1503,"path":1504,"stem":1505,"children":-1},"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":1507,"path":1508,"stem":1509,"children":-1},"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",[1511],{"title":1512,"path":1513,"stem":1514,"children":1515},"SEI CERT C++ Coding Standard","\u002Fsei-cert-cpp-coding-standard","5.sei-cert-cpp-coding-standard\u002F1.index",[1516,1517,1581,1887,2104,2114],{"title":1512,"path":1513,"stem":1514},{"title":1518,"path":1519,"stem":1520,"children":1521},"Front Matter","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F1.index",[1522,1523],{"title":1518,"path":1519,"stem":1520},{"title":1524,"path":1525,"stem":1526,"children":1527},"Introduction","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F01.index",[1528,1529,1533,1537,1541,1545,1549,1553,1557,1561,1565,1569,1573,1577],{"title":1524,"path":1525,"stem":1526},{"title":1530,"path":1531,"stem":1532},"Scope","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fscope","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F02.scope",{"title":1534,"path":1535,"stem":1536},"Audience","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Faudience","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F03.audience",{"title":1538,"path":1539,"stem":1540},"Usage","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fusage","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F04.usage",{"title":1542,"path":1543,"stem":1544},"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":1546,"path":1547,"stem":1548},"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":1550,"path":1551,"stem":1552},"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":1554,"path":1555,"stem":1556},"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":1558,"path":1559,"stem":1560},"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":1562,"path":1563,"stem":1564},"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":1566,"path":1567,"stem":1568},"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":1570,"path":1571,"stem":1572},"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":1574,"path":1575,"stem":1576},"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":1578,"path":1579,"stem":1580},"Acknowledgments","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Facknowledgments","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F14.acknowledgments",{"title":1582,"path":1583,"stem":1584,"children":1585},"Rules","\u002Fsei-cert-cpp-coding-standard\u002Frules","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F01.index",[1586,1587,1609,1631,1663,1699,1737,1787,1801,1809,1841,1861],{"title":1582,"path":1583,"stem":1584},{"title":1588,"path":1589,"stem":1590,"children":1591},"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",[1592,1593,1597,1601,1605],{"title":1588,"path":1589,"stem":1590},{"title":1594,"path":1595,"stem":1596},"STR50-CPP. Guarantee that storage for strings has sufficient space for character data and the null terminator","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstr50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F2.str50-cpp",{"title":1598,"path":1599,"stem":1600},"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":1602,"path":1603,"stem":1604},"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":1606,"path":1607,"stem":1608},"STR51-CPP. Do not attempt to create a std::string from a null pointer","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstr51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F5.str51-cpp",{"title":1610,"path":1611,"stem":1612,"children":1613},"Concurrency (CON)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F1.index",[1614,1615,1617,1619,1621,1623,1625,1627],{"title":1610,"path":1611,"stem":1612},{"title":1382,"path":1381,"stem":1616},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F2.con50-cpp",{"title":1446,"path":1445,"stem":1618},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F3.con51-cpp",{"title":137,"path":136,"stem":1620},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F4.con52-cpp",{"title":117,"path":116,"stem":1622},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F5.con53-cpp",{"title":1457,"path":1456,"stem":1624},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F6.con54-cpp",{"title":1468,"path":1467,"stem":1626},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F7.con55-cpp",{"title":1628,"path":1629,"stem":1630},"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":1632,"path":1633,"stem":1634,"children":1635},"Containers (CTR)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F01.index",[1636,1637,1639,1643,1647,1649,1651,1655,1657,1661],{"title":1632,"path":1633,"stem":1634},{"title":444,"path":443,"stem":1638},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F02.ctr50-cpp",{"title":1640,"path":1641,"stem":1642},"CTR51-CPP. Use valid references, pointers, and iterators to reference elements of a container","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F03.ctr51-cpp",{"title":1644,"path":1645,"stem":1646},"CTR52-CPP. Guarantee that library functions do not overflow","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F04.ctr52-cpp",{"title":950,"path":949,"stem":1648},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F05.ctr53-cpp",{"title":266,"path":265,"stem":1650},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F06.ctr54-cpp",{"title":1652,"path":1653,"stem":1654},"CTR55-CPP. Do not use an additive operator on an iterator if the result would overflow","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F07.ctr55-cpp",{"title":652,"path":651,"stem":1656},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F08.ctr56-cpp",{"title":1658,"path":1659,"stem":1660},"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":719,"path":718,"stem":1662},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F10.ctr58-cpp",{"title":1664,"path":1665,"stem":1666,"children":1667},"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",[1668,1669,1671,1673,1675,1677,1679,1683,1687,1691,1693,1695],{"title":1664,"path":1665,"stem":1666},{"title":157,"path":156,"stem":1670},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F02.dcl50-cpp",{"title":1402,"path":1401,"stem":1672},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F03.dcl51-cpp",{"title":95,"path":94,"stem":1674},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F04.dcl52-cpp",{"title":226,"path":225,"stem":1676},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F05.dcl53-cpp",{"title":215,"path":214,"stem":1678},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F06.dcl54-cpp",{"title":1680,"path":1681,"stem":1682},"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":1684,"path":1685,"stem":1686},"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":1688,"path":1689,"stem":1690},"DCL57-CPP. Do not let exceptions escape from destructors or deallocation functions","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F09.dcl57-cpp",{"title":1001,"path":1000,"stem":1692},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F10.dcl58-cpp",{"title":246,"path":245,"stem":1694},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F11.dcl59-cpp",{"title":1696,"path":1697,"stem":1698},"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":1700,"path":1701,"stem":1702,"children":1703},"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",[1704,1705,1707,1709,1711,1713,1715,1717,1719,1723,1725,1729,1731,1733],{"title":1700,"path":1701,"stem":1702},{"title":1413,"path":1412,"stem":1706},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F02.err50-cpp",{"title":1020,"path":1019,"stem":1708},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F03.err51-cpp",{"title":1424,"path":1423,"stem":1710},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F04.err52-cpp",{"title":939,"path":938,"stem":1712},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F05.err53-cpp",{"title":979,"path":978,"stem":1714},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F06.err54-cpp",{"title":1030,"path":1029,"stem":1716},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F07.err55-cpp",{"title":1098,"path":1097,"stem":1718},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F08.err56-cpp",{"title":1720,"path":1721,"stem":1722},"ERR57-CPP. Do not leak resources when handling exceptions","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F09.err57-cpp",{"title":1327,"path":1326,"stem":1724},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F10.err58-cpp",{"title":1726,"path":1727,"stem":1728},"ERR59-CPP. Do not throw an exception across execution boundaries","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr59-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F11.err59-cpp",{"title":928,"path":927,"stem":1730},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F12.err60-cpp",{"title":990,"path":989,"stem":1732},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F13.err61-cpp",{"title":1734,"path":1735,"stem":1736},"ERR62-CPP. Detect errors when converting a string to a number","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr62-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F14.err62-cpp",{"title":1738,"path":1739,"stem":1740,"children":1741},"Expressions (EXP)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F01.index",[1742,1743,1745,1749,1751,1753,1755,1757,1759,1763,1767,1771,1775,1779,1783],{"title":1738,"path":1739,"stem":1740},{"title":681,"path":680,"stem":1744},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F02.exp50-cpp",{"title":1746,"path":1747,"stem":1748},"EXP51-CPP. Do not delete an array through a pointer of the incorrect type","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F03.exp51-cpp",{"title":861,"path":860,"stem":1750},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F04.exp52-cpp",{"title":277,"path":276,"stem":1752},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F05.exp53-cpp",{"title":380,"path":379,"stem":1754},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F06.exp54-cpp",{"title":630,"path":629,"stem":1756},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F07.exp55-cpp",{"title":619,"path":618,"stem":1758},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F08.exp56-cpp",{"title":1760,"path":1761,"stem":1762},"EXP57-CPP. Do not cast or delete pointers to incomplete classes","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F09.exp57-cpp",{"title":1764,"path":1765,"stem":1766},"EXP58-CPP. Pass an object of the correct type to va_start","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp58-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F10.exp58-cpp",{"title":1768,"path":1769,"stem":1770},"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":1772,"path":1773,"stem":1774},"EXP60-CPP. Do not pass a nonstandard-layout type object across execution boundaries","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp60-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F12.exp60-cpp",{"title":1776,"path":1777,"stem":1778},"EXP61-CPP. A lambda object must not outlive any of its reference captured objects","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp61-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F13.exp61-cpp",{"title":1780,"path":1781,"stem":1782},"EXP62-CPP. Do not access the bits of an object representation that are not part of the object's value representation","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp62-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F14.exp62-cpp",{"title":1784,"path":1785,"stem":1786},"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":1788,"path":1789,"stem":1790,"children":1791},"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",[1792,1793,1797],{"title":1788,"path":1789,"stem":1790},{"title":1794,"path":1795,"stem":1796},"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":1798,"path":1799,"stem":1800},"FIO51-CPP. Close files when they are no longer needed","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Finput-output-fio\u002Ffio51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F08.input-output-fio\u002F3.fio51-cpp",{"title":1802,"path":1803,"stem":1804,"children":1805},"Integers (INT)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fintegers-int","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F09.integers-int\u002F1.index",[1806,1807],{"title":1802,"path":1803,"stem":1804},{"title":608,"path":607,"stem":1808},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F09.integers-int\u002F2.int50-cpp",{"title":1810,"path":1811,"stem":1812,"children":1813},"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",[1814,1815,1817,1819,1821,1825,1829,1833,1837],{"title":1810,"path":1811,"stem":1812},{"title":1281,"path":1280,"stem":1816},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F2.mem50-cpp",{"title":168,"path":167,"stem":1818},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F3.mem51-cpp",{"title":729,"path":728,"stem":1820},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F4.mem52-cpp",{"title":1822,"path":1823,"stem":1824},"MEM53-CPP. Explicitly construct and destruct objects when manually managing object lifetime","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F5.mem53-cpp",{"title":1826,"path":1827,"stem":1828},"MEM54-CPP. Provide placement new with properly aligned pointers to sufficient storage capacity","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F6.mem54-cpp",{"title":1830,"path":1831,"stem":1832},"MEM55-CPP. Honor replacement dynamic storage management requirements","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F7.mem55-cpp",{"title":1834,"path":1835,"stem":1836},"MEM56-CPP. Do not store an already-owned pointer value in an unrelated smart pointer","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F8.mem56-cpp",{"title":1838,"path":1839,"stem":1840},"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":1842,"path":1843,"stem":1844,"children":1845},"Miscellaneous (MSC)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F1.index",[1846,1847,1851,1853,1857,1859],{"title":1842,"path":1843,"stem":1844},{"title":1848,"path":1849,"stem":1850},"MSC51-CPP. Ensure your random number generator is properly seeded","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F2.msc51-cpp",{"title":106,"path":105,"stem":1852},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F3.msc52-cpp",{"title":1854,"path":1855,"stem":1856},"MSC53-CPP. Do not return from a function declared [[noreturn]]","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F4.msc53-cpp",{"title":433,"path":432,"stem":1858},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F5.msc54-cpp",{"title":1479,"path":1478,"stem":1860},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F6.msc50-cpp",{"title":1862,"path":1863,"stem":1864,"children":1865},"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",[1866,1867,1869,1871,1873,1875,1877,1879,1883,1885],{"title":1862,"path":1863,"stem":1864},{"title":1144,"path":1143,"stem":1868},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F02.oop50-cpp",{"title":641,"path":640,"stem":1870},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F03.oop51-cpp",{"title":899,"path":898,"stem":1872},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F04.oop52-cpp",{"title":1067,"path":1066,"stem":1874},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F05.oop53-cpp",{"title":1078,"path":1077,"stem":1876},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F06.oop54-cpp",{"title":360,"path":359,"stem":1878},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F07.oop55-cpp",{"title":1880,"path":1881,"stem":1882},"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":1435,"path":1434,"stem":1884},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F09.oop57-cpp",{"title":1116,"path":1115,"stem":1886},"5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F10.oop58-cpp",{"title":1888,"path":1889,"stem":1890,"children":1891},"Back Matter","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F1.index",[1892,1893,1897,1901,2086,2100],{"title":1888,"path":1889,"stem":1890},{"title":1894,"path":1895,"stem":1896},"AA. Bibliography","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Faa-bibliography","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F2.aa-bibliography",{"title":1898,"path":1899,"stem":1900},"BB. Definitions","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fbb-definitions","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F3.bb-definitions",{"title":1902,"path":1903,"stem":1904,"children":1905},"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",[1906,1907,1911,1915,1919,1923,1927,1931,1935,1939,1943,1947,1951,1955,1959,1963,1967,1971,1975,1979,1983,1987,1991,1995,1999,2003,2007,2011,2015,2019,2023,2027,2028,2029,2030,2034,2038,2042,2046,2050,2054,2058,2062,2066,2070,2074,2078,2082],{"title":1902,"path":1903,"stem":1904},{"title":1908,"path":1909,"stem":1910},"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":1912,"path":1913,"stem":1914},"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":1916,"path":1917,"stem":1918},"Axivion Suite","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Faxivion-suite","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F04.axivion-suite",{"title":1920,"path":1921,"stem":1922},"Axivion Suite_V","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Faxivion-suite_v","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F05.axivion-suite_v",{"title":1924,"path":1925,"stem":1926},"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":1928,"path":1929,"stem":1930},"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":1932,"path":1933,"stem":1934},"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":1936,"path":1937,"stem":1938},"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":1940,"path":1941,"stem":1942},"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":1944,"path":1945,"stem":1946},"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":1948,"path":1949,"stem":1950},"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":1952,"path":1953,"stem":1954},"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":1956,"path":1957,"stem":1958},"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":1960,"path":1961,"stem":1962},"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":1964,"path":1965,"stem":1966},"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":1968,"path":1969,"stem":1970},"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":1972,"path":1973,"stem":1974},"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":1976,"path":1977,"stem":1978},"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":1980,"path":1981,"stem":1982},"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":1984,"path":1985,"stem":1986},"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":1988,"path":1989,"stem":1990},"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":1992,"path":1993,"stem":1994},"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":1996,"path":1997,"stem":1998},"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":2000,"path":2001,"stem":2002},"Klocwork","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fcc-analyzers\u002Fklocwork","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F4.cc-analyzers\u002F25.klocwork",{"title":2004,"path":2005,"stem":2006},"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",{"title":2008,"path":2009,"stem":2010},"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":2012,"path":2013,"stem":2014},"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":2016,"path":2017,"stem":2018},"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":2020,"path":2021,"stem":2022},"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":2024,"path":2025,"stem":2026},"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":1503,"path":1504,"stem":1505},{"title":33,"path":1497,"stem":1499},{"title":1507,"path":1508,"stem":1509},{"title":2031,"path":2032,"stem":2033},"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":2035,"path":2036,"stem":2037},"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":2039,"path":2040,"stem":2041},"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":2043,"path":2044,"stem":2045},"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":2047,"path":2048,"stem":2049},"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":2051,"path":2052,"stem":2053},"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":2055,"path":2056,"stem":2057},"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":2059,"path":2060,"stem":2061},"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":2063,"path":2064,"stem":2065},"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":2067,"path":2068,"stem":2069},"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":2071,"path":2072,"stem":2073},"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":2075,"path":2076,"stem":2077},"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":2079,"path":2080,"stem":2081},"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":2083,"path":2084,"stem":2085},"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":2087,"path":2088,"stem":2089,"children":2090},"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",[2091,2092,2096],{"title":2087,"path":2088,"stem":2089},{"title":2093,"path":2094,"stem":2095},"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":2097,"path":2098,"stem":2099},"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":2101,"path":2102,"stem":2103},"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":2105,"path":2106,"stem":2107,"children":2108},"Admin","\u002Fsei-cert-cpp-coding-standard\u002Fadmin","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F1.index",[2109,2110],{"title":2105,"path":2106,"stem":2107},{"title":2111,"path":2112,"stem":2113},"TODO List","\u002Fsei-cert-cpp-coding-standard\u002Fadmin\u002Ftodo-list","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F2.todo-list",{"title":2115,"path":2116,"stem":2117},"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",1788380831990]