[{"data":1,"prerenderedAt":1916},["ShallowReactive",2],{"global-navigation":3,"page-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Faa-bibliography":28,"surround-\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Faa-bibliography":1197,"sidebar-sei-cert-cpp-coding-standard":1206},[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":1185,"extension":1186,"meta":1187,"navigation":7,"path":1193,"seo":1194,"stem":1195,"__hash__":1196},"content\u002F5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F2.aa-bibliography.md","AA. Bibliography",{"type":32,"value":33,"toc":1181},"minimark",[34,38,53,68,80,92,103,115,127,139,150,160,172,182,192,204,216,228,243,255,267,277,288,300,314,328,340,352,358,372,387,399,411,421,432,446,459,469,479,489,499,505,515,526,533,547,559,576,585,594,606,616,626,635,644,656,675,692,702,718,732,745,756,767,780,802,824,847,857,867,881,896,911,921,936,948,962,977,987,1001,1013,1025,1035,1045,1055,1065,1075,1087,1099,1114,1126,1138,1148,1159,1170],[35,36,30],"h1",{"id":37},"aa-bibliography",[39,40,41,45,46,52],"p",{},[42,43],"a",{"id":44},"AA.Bibliography-Abrahams10"," [Abrahams 2010] Abrahams, David. ",[42,47,51],{"href":48,"rel":49},"http:\u002F\u002Fwww.boost.org\u002Fcommunity\u002Ferror_handling.html",[50],"nofollow","Error and Exception Handling, #7"," . Boost Library. 2010.",[39,54,55,58,59,67],{},[42,56],{"id":57},"AA.Bibliography-Banahan03"," [Banahan 2003] Banahan, Mike. ",[42,60,63],{"href":61,"rel":62},"http:\u002F\u002Fwww.phy.duke.edu\u002F~rgb\u002FGeneral\u002Fc_book\u002Fc_book\u002Findex.html",[50],[64,65,66],"em",{},"The C Book"," . 2003.",[39,69,70,73,74,79],{},[42,71],{"id":72},"AA.Bibliography-Barney10"," [Barney 2010] Barney, Blaise. ",[42,75,78],{"href":76,"rel":77},"https:\u002F\u002Fcomputing.llnl.gov\u002Ftutorials\u002Fpthreads\u002F",[50],"POSIX Threads Programming"," . Lawrence Livermore National Security, LLC. 2010.",[39,81,82,85,86,91],{},[42,83],{"id":84},"AA.Bibliography-Becker08"," [Becker 2008] Becker, Pete. ",[42,87,90],{"href":88,"rel":89},"http:\u002F\u002Fwww.open-std.org\u002Fjtc1\u002Fsc22\u002Fwg21\u002Fdocs\u002Fpapers\u002F2008\u002Fn2521.pdf",[50],"Working Draft, Standard for Programming Language C++"," . April 2008.",[39,93,94,97,98,102],{},[42,95],{"id":96},"AA.Bibliography-Becker09"," [Becker 2009] Becker, Pete ",[42,99,90],{"href":100,"rel":101},"http:\u002F\u002Fwww.open-std.org\u002FJTC1\u002FSC22\u002FWG21\u002Fdocs\u002Fpapers\u002F2009\u002Fn3000.pdf",[50]," . September 2009.",[39,104,105,108,109,114],{},[42,106],{"id":107},"AA.Bibliography-Black07"," [Black 2007] Black, Paul E.; Kass, Michael; & Koo, Michael. ",[42,110,113],{"href":111,"rel":112},"http:\u002F\u002Fsamate.nist.gov\u002Fdocs\u002Fsource_code_security_analysis_spec_SP500-268.pdf",[50],"Source Code Security Analysis Tool Functional Specification Version 1.0"," . Special Publication 500-268. Information Technology Laboratory (ITL). May 2007.",[39,116,117,120,121,126],{},[42,118],{"id":119},"AA.Bibliography-Cline09"," [Cline 2009] Cline, Marshall. ",[42,122,125],{"href":123,"rel":124},"http:\u002F\u002Fwww.graphics.cornell.edu\u002F~martin\u002Fdocs\u002Fc++-faq",[50],"C++ FAQ Lite—Frequently Asked Questions"," . 1991-2009.",[39,128,129,132,133,138],{},[42,130],{"id":131},"AA.Bibliography-codesourcery2016a"," [CodeSourcery 2016a] CodeSourcery, Compaq, EDG, HP, IBM, Intel, Red Hat, SGI, et al. ",[42,134,137],{"href":135,"rel":136},"https:\u002F\u002Fmentorembedded.github.io\u002Fcxx-abi\u002Fabi.html",[50],"Itanium C++ ABI"," . December 2016 [accessed].",[39,140,141,144,145,138],{},[42,142],{"id":143},"AA.Bibliography-codesourcery2016b"," [CodeSourcery 2016b] CodeSourcery, Compaq, EDG, HP, IBM, Intel, Red Hat, SGI, et al. ",[42,146,149],{"href":147,"rel":148},"https:\u002F\u002Frefspecs.linuxbase.org\u002Fcxxabi-1.86.html#array-cookies",[50],"Itanium C++ ABI (Revision: 1,86)",[39,151,152,155,156,159],{},[42,153],{"id":154},"AA.Bibliography-Coverity07"," [Coverity 2007] Coverity. ",[64,157,158],{},"Coverity Prevent User's Manual (3.3.0)"," . 2007.",[39,161,162,165,166,171],{},[42,163],{"id":164},"AA.Bibliography-CWE"," [CWE] MITRE. ",[42,167,170],{"href":168,"rel":169},"http:\u002F\u002Fcwe.mitre.org\u002F",[50],"Common Weakness Enumeration"," – A Community-Developed Dictionary of Software Weakness Types.",[39,173,174,177,178,181],{},[42,175],{"id":176},"AA.Bibliography-Dewhurst02"," [Dewhurst 2002] Dewhurst, Stephen C. ",[64,179,180],{},"C++ Gotchas: Avoiding Common Problems in Coding and Design"," . Addison-Wesley Professional. 2002.",[39,183,184,187,188,191],{},[42,185],{"id":186},"AA.Bibliography-Dewhurst05"," [Dewhurst 2005] Dewhurst, Stephen C. ",[64,189,190],{},"C++ Common Knowledge: Essential Intermediate Programming"," . Addison-Wesley Professional. 2005.",[39,193,194,197,198,203],{},[42,195],{"id":196},"AA.Bibliography-DISA2015"," [DISA 2015] DISA. ",[42,199,202],{"href":200,"rel":201},"http:\u002F\u002Fiase.disa.mil\u002Fstigs\u002FDocuments\u002FU_Application_Security_and_Development_V3R10_STIG.zip",[50],"Application Security and Development Security Technical Implementation Guide, Version 3, Release 10"," . Accessed April 2015.",[39,205,206,209,210,215],{},[42,207],{"id":208},"AA.Bibliography-DISA2016"," [DISA 2016] DISA. ",[42,211,214],{"href":212,"rel":213},"http:\u002F\u002Fiasecontent.disa.mil\u002Fstigs\u002Fzip\u002FAug2016\u002FU_ASD_V4R1_STIG.zip",[50],"Application Security and Development Security Technical Implementation Guide, Version 4, Release 1"," . Accessed January 2017.",[39,217,218,221,222,227],{},[42,219],{"id":220},"AA.Bibliography-DISA2018"," [DISA 2018] DISA. ",[42,223,226],{"href":224,"rel":225},"https:\u002F\u002Fiasecontent.disa.mil\u002Fstigs\u002Fzip\u002FU_ASD_V4R8_STIG.zip",[50],"Application Security and Development Security Technical Implementation Guide, Version 4, Release 8"," . Accessed January 2019.",[39,229,230,233,234,242],{},[42,231],{"id":232},"AA.Bibliography-Dowd06"," [Dowd 2006] Dowd, Mark; McDonald, John; & Schuh, Justin. Attacking delete and delete[] in C++. In ",[64,235,236,241],{},[42,237,240],{"href":238,"rel":239},"http:\u002F\u002Fwww.informit.com\u002Fstore\u002Fart-of-software-security-assessment-identifying-and-9780321444424",[50],"The Art of Software Security Assessment"," ."," Addison-Wesley Professional. 2006.",[39,244,245,248,249,254],{},[42,246],{"id":247},"AA.Bibliography-Fortify06"," [Fortify 2006] Fortify Software Inc. ",[42,250,253],{"href":251,"rel":252},"http:\u002F\u002Fwww.fortifysoftware.com\u002Fvulncat\u002F",[50],"Fortify Taxonomy: Software Security Errors"," . 2006.",[39,256,257,260,261,266],{},[42,258],{"id":259},"AA.Bibliography-FSF05"," [FSF 2005] Free Software Foundation. ",[42,262,265],{"href":263,"rel":264},"http:\u002F\u002Fgcc.gnu.org\u002Fonlinedocs",[50],"GCC Online Documentation."," 2005.",[39,268,269,272,273,276],{},[42,270],{"id":271},"AA.Bibliography-Gamma94"," [Gamma 1994] Gamma, Erich; Helm, Richard; Johnson, Ralph, & Vlissides, John. ",[64,274,275],{},"Design Patterns Elements of Reusable Object Oriented Software"," . Addison-Wesley Professional. 1994.",[39,278,279,282,283,138],{},[42,280],{"id":281},"AA.Bibliography-gnu2016"," [GNU 2016] gnu.org. ",[42,284,287],{"href":285,"rel":286},"https:\u002F\u002Fgcc.gnu.org\u002Fonlinedocs\u002Fgcc\u002FFunction-Attributes.html",[50],"GCC, the GNU Compiler Collection: Declaring Attributes of Functions",[39,289,290,293,294,299],{},[42,291],{"id":292},"AA.Bibliography-Goldberg91"," [Goldberg 1991] Goldberg, David. ",[42,295,298],{"href":296,"rel":297},"http:\u002F\u002Fdocs.sun.com\u002Fsource\u002F806-3568\u002Fncg_goldberg.html",[50],"What Every Computer Scientist Should Know About Floating-Point Arithmetic"," . Sun Microsystems. March 1991.",[39,301,302,305,306,313],{},[42,303],{"id":304},"AA.Bibliography-Graff03"," [Graff 2003] Graff, Mark G. & Van Wyk, Kenneth R. ",[42,307,310],{"href":308,"rel":309},"http:\u002F\u002Fshop.oreilly.com\u002Fproduct\u002F9780596002428.do",[50],[64,311,312],{},"Secure Coding: Principles and Practices"," . O'Reilly. 2003. ISBN 0596002424.",[39,315,316,319,320,327],{},[42,317],{"id":318},"AA.Bibliography-Henricson97"," [Henricson 1997] Henricson, Mats & Nyquist, Erik. ",[42,321,324],{"href":322,"rel":323},"http:\u002F\u002Fwww.mypearsonstore.com\u002Fbookstore\u002Findustrial-strength-c-plus-plus-rules-and-recommendations-9780131209657?xid=PSED",[50],[64,325,326],{},"Industrial Strength C++"," . Prentice Hall PTR. 1997. ISBN 0-13-120965-5.",[39,329,330,333,334,339],{},[42,331],{"id":332},"AA.Bibliography-Hinnant05"," [Hinnant 2005] Hinnant, Howard. ",[42,335,338],{"href":336,"rel":337},"http:\u002F\u002Fwww.open-std.org\u002Fjtc1\u002Fsc22\u002Fwg21\u002Fdocs\u002Fpapers\u002F2005\u002Fn1856.html",[50],"RValue Reference Recommendations for Chapter 20"," . N1856=05-0116. August 2005.",[39,341,342,345,346,351],{},[42,343],{"id":344},"AA.Bibliography-Hinnant15"," [Hinnant 2015] Hinnant, Howard. Reply to \" std::exception Why what() is returning a const char* and not a string? \" ",[42,347,350],{"href":348,"rel":349},"https:\u002F\u002Fgroups.google.com\u002Fa\u002Fisocpp.org\u002Fd\u002Fmsg\u002Fstd-discussion\u002FNiPG1hmo4ik\u002FDePB57IPmJwJ",[50],"ISO C++ Standard—Discussion"," . June 2015 .",[39,353,354,357],{},[42,355],{"id":356},"AA.Bibliography-IEC608122006"," [IEC 60812 2006] Analysis techniques for system reliability - Procedure for failure mode and effects analysis (FMEA), 2nd ed. IEC 60812. IEC. January 2006.",[39,359,360,363,364,371],{},[42,361],{"id":362},"AA.Bibliography-IEEEStd610.121990"," [IEEE Std 610.12 1990] IEEE. ",[42,365,368],{"href":366,"rel":367},"http:\u002F\u002Fieeexplore.ieee.org\u002Fxpls\u002Fabs_all.jsp?arnumber=159342",[50],[64,369,370],{},"IEEE Standard Glossary of Software Engineering Terminology"," . 1990.",[39,373,374,377,380,381,386],{},[42,375],{"id":376},"AA.Bibliography-IEEEStd1003.1-2013",[378,379],"br",{},"\n[IEEE Std 1003.1:2013] IEEE & The Open Group. ",[42,382,385],{"href":383,"rel":384},"http:\u002F\u002Fieeexplore.ieee.org\u002Fservlet\u002Fopac?punumber=6506089",[50],"Standard for Information Technology—Portable Operating System Interface (POSIX)"," . Base Specifications. Issue 7. 2013.",[39,388,389,392,393,398],{},[42,390],{"id":391},"AA.Bibliography-incits2012"," [INCITS 2012] INCITS Document number N3396= 12-0096. ",[42,394,397],{"href":395,"rel":396},"https:\u002F\u002Fhttp\u002F\u002Fwww.open-std.org\u002Fjtcl\u002Fsc22\u002Fwg21\u002Fdocs\u002Fpapers\u002F2012\u002Fn3396.html",[50],"Dynamic memory allocation for over-aligned data"," . 2012.",[39,400,401,404,405,410],{},[42,402],{"id":403},"AA.Bibliography-INCITS2014"," [INCITS 2014] INCITS PL22.16 & ISO WG21 C++ Standards Committee, Library Working Group (LWG). ",[42,406,409],{"href":407,"rel":408},"http:\u002F\u002Fwww.open-std.org\u002Fjtc1\u002Fsc22\u002Fwg21\u002Fdocs\u002Flwg-active.html",[50],"C++ Standard Library Active Issues List (Revision R88)."," N3967. 2014.",[39,412,413,416,417,420],{},[42,414],{"id":415},"AA.Bibliography-INCITS2020"," [INCITS 2020] INCITS PL22.16 & ISO WG21 C++ Standards Committee, Library Working Group (LWG). ",[42,418,409],{"href":407,"rel":419},[50]," N4860. 2020.",[39,422,423,426,427,431],{},[42,424],{"id":425},"AA.Bibliography-InternetSociety00"," [Internet Society 2000] The Internet Society. ",[42,428,430],{"href":429},"ftp:\u002F\u002Fftp.rfc-editor.org\u002Fin-notes\u002Frfc2828.txt","Internet Security Glossary (RFC 2828)"," . 2000.",[39,433,434,437,438,441,442,445],{},[42,435],{"id":436},"AA.Bibliography-ISO\u002FIEC9899-1999"," ",[42,439],{"id":440},"AA.Bibliography-ISO-IEC9899-1999"," [ISO\u002FIEC 9899-1999] ISO\u002FIEC 9899-1999. ",[64,443,444],{},"Programming Languages — C, Second Edition."," 1999.",[39,447,448,437,451,454,455,458],{},[42,449],{"id":450},"AA.Bibliography-ISO\u002FIEC9899-2011",[42,452],{"id":453},"AA.Bibliography-ISO-IEC9899-2011"," [ISO\u002FIEC 9899:2011] ISO\u002FIEC. ",[64,456,457],{},"Programming Languages—C, 3rd ed."," ISO\u002FIEC 9899:2011. 2011.",[39,460,461,464,465,468],{},[42,462],{"id":463},"AA.Bibliography-ISO\u002FIEC14882-1998"," [ISO\u002FIEC 14882-1998] ISO\u002FIEC 14882-1998. ",[64,466,467],{},"Programming Languages — C++, First Edition."," 1998.",[39,470,471,474,475,478],{},[42,472],{"id":473},"AA.Bibliography-ISO\u002FIEC14882-2003"," [ISO\u002FIEC 14882-2003] ISO\u002FIEC 14882-2003. ",[64,476,477],{},"Programming Languages — C++, Second Edition."," 2003.",[39,480,481,484,485,488],{},[42,482],{"id":483},"AA.Bibliography-ISO\u002FIEC14882-2011"," [ISO\u002FIEC 14882-2011] ISO\u002FIEC 14882-2011. ",[64,486,487],{},"Programming Languages — C++, Third Edition."," 2011.",[39,490,491,494,495,498],{},[42,492],{"id":493},"AA.Bibliography-ISO\u002FIEC14882-2014"," [ISO\u002FIEC 14882-2014] ISO\u002FIEC 14882-2014. ",[64,496,497],{},"Programming Languages — C++, Fourth Edition."," 2014.",[39,500,501,504],{},[42,502],{"id":503},"AA.Bibliography-ISO\u002FIECN3000"," [ISO\u002FIEC N3000 2009] Working Draft, Standard for Programming Language C++. November 2009.",[39,506,507,510,511,514],{},[42,508],{"id":509},"AA.Bibliography-ISO\u002FIECTR24772-2013"," [ISO\u002FIEC TR 24772:2013] ISO\u002FIEC. ",[64,512,513],{},"Information Technology—Programming Languages—Guidance to Avoiding Vulnerabilities in Programming Languages through Language Selection and Use"," . TR 24772-2013. ISO. March 2013.",[39,516,517,437,520,437,523],{},[42,518],{"id":519},"AA.Bibliography-ISO\u002FIECTS17961",[42,521],{"id":522},"AA.Bibliography-ISO-IECTS17961",[42,524],{"id":525},"AA.Bibliography-ISO\u002FIECTS17961-2013",[39,527,528,529,532],{},"[ISO\u002FIEC TS 17961:2012] ISO\u002FIEC TS 17961. ",[64,530,531],{},"Information Technology—Programming Languages, Their Environments and System Software Interfaces—C Secure Coding Rules."," ISO. 2012.",[39,534,535,538,539,546],{},[42,536],{"id":537},"AA.Bibliography-Jack07"," [Jack 2007] Jack, Barnaby. ",[42,540,543],{"href":541,"rel":542},"http:\u002F\u002Fcansecwest.com\u002Fcsw07\u002FVector-Rewrite-Attack.pdf",[50],[64,544,545],{},"Vector Rewrite Attack"," . Juniper Networks. May 2007.",[39,548,549,437,552,555,556],{},[42,550],{"id":551},"AA.Bibliography-kalev99",[42,553],{"id":554},"AA.Bibliography-kalev1999"," [Kalev 1999] Kalev, Danny. ",[64,557,558],{},"ANSI\u002FISO C++ Professional Programmer's Handbook. Que. Corporation. 1999",[39,560,561,564,565,437,572,575],{},[42,562],{"id":563},"AA.Bibliography-Lea2000"," [Lea 2000] Lea, Doug. ",[42,566,569],{"href":567,"rel":568},"http:\u002F\u002Fwww.informit.com\u002Fstore\u002Fconcurrent-programming-in-java-design-principles-and-9780201310092",[50],[64,570,571],{},"Concurrent Programming in Java, 2nd Edition",[64,573,574],{},"."," Addison-Wesley Professional. 2000.",[39,577,578,579,584],{},"[Lions 1996] Lions, J. L. ",[42,580,583],{"href":581,"rel":582},"http:\u002F\u002Fen.wikisource.org\u002Fwiki\u002FAriane_501_Inquiry_Board_report",[50],"ARIANE 5 Flight 501 Failure Report"," . European Space Agency (ESA) & National Center for Space Study (CNES). July 1996.",[39,586,587,590,591,584],{},[42,588],{"id":589},"AA.Bibliography-Lions96"," [Lions 1996] Lions, J. L. ",[42,592,583],{"href":581,"rel":593},[50],[39,595,596,599,600,605],{},[42,597],{"id":598},"AA.Bibliography-LockheedMartin05"," [Lockheed Martin 2005] Lockheed Martin. ",[42,601,604],{"href":602,"rel":603},"http:\u002F\u002Fwww.stroustrup.com\u002FJSF-AV-rules.pdf",[50],"Joint Strike Fighter Air Vehicle C++ Coding Standards for the System Development and Demonstration Program."," Document Number 2RDU00001, Rev C. December 2005.",[39,607,608,611,612,615],{},[42,609],{"id":610},"AA.Bibliography-Meyers96"," [Meyers 1996] Meyers, Scott. ",[64,613,614],{},"More Effective C++: 35 New Ways to Improve Your Programs and Designs"," . Addison-Wesley. 1996.",[39,617,618,621,622,625],{},[42,619],{"id":620},"AA.Bibliography-Meyers01"," [Meyers 2001] Meyers, Scott. ",[64,623,624],{},"Effective STL: 50 Specific Ways to Improve Your Use of the Standard Template Library"," . Addison-Wesley Professional. 2001.",[39,627,628,631,632,191],{},[42,629],{"id":630},"AA.Bibliography-Meyers05"," [Meyers 2005] Meyers, Scott. ",[64,633,634],{},"Effective C++: 55 Specific Ways to Improve Your Programs and Designs (3rd Edition)",[39,636,637,640,641,498],{},[42,638],{"id":639},"AA.Bibliography-Meyers14"," [Meyers 2014] Meyers, Scott. Reply to The Drawbacks of Implementing Move Assignment in Terms of Swap [blog post]. ",[64,642,643],{},"The View from Aristeia: Scott Meyers' Professional Activities and Interests.",[39,645,646,649,650,655],{},[42,647],{"id":648},"AA.Bibliography-Microsoft10"," [Microsoft 2010] ",[42,651,654],{"href":652,"rel":653},"http:\u002F\u002Fsupport.microsoft.com\u002Fkb\u002F813810",[50],"STL std::string class causes crashes and memory corruption on multi-processor machines"," . 2010.",[39,657,658,661,662,674],{},[42,659],{"id":660},"AA.Bibliography-MISRA04"," [MISRA 2004] MIRA Limited. ",[64,663,664,669,670],{},[42,665,668],{"href":666,"rel":667},"http:\u002F\u002Fwww.misra.org.uk\u002F",[50],"MISRA C"," : ",[42,671,673],{"href":666,"rel":672},[50],"2004 Guidelines for the Use of the C Language in Critical Systems"," . MIRA Limited. ISBN 095241564X. October 2004.",[39,676,677,680,681,691],{},[42,678],{"id":679},"AA.Bibliography-MISRA08"," [MISRA 2008] MISRA Limited. ",[64,682,683,437,687],{},[42,684,686],{"href":666,"rel":685},[50],"MISRA C++",[42,688,690],{"href":666,"rel":689},[50],"2008 Guidelines for the Use of the C++ Language in Critical Systems"," . ISBN 978-906400-03-3 (paperback);  ISBN 978-906400-04-0 (PDF). June 2008.",[39,693,694,697,698,91],{},[42,695],{"id":696},"AA.Bibliography-MITRE07"," [MITRE 2007] MITRE. ",[42,699,701],{"href":168,"rel":700},[50],"Common Weakness Enumeration, Draft 9",[39,703,704,707,708,713,714,717],{},[42,705],{"id":706},"AA.Bibliography-MITRE08a"," [MITRE 2008a] MITRE. ",[42,709,712],{"href":710,"rel":711},"http:\u002F\u002Fcwe.mitre.org\u002Fdata\u002Fdefinitions\u002F327.html",[50],"CWE ID 327"," . ",[64,715,716],{},"Use of a Broken or Risky Cryptographic Algorithm."," 2008.",[39,719,720,723,724,713,729,717],{},[42,721],{"id":722},"AA.Bibliography-MITRE08b"," [MITRE 2008b] MITRE. ",[42,725,728],{"href":726,"rel":727},"http:\u002F\u002Fcwe.mitre.org\u002Fdata\u002Fdefinitions\u002F330.html",[50],"CWE ID 330",[64,730,731],{},"Use of Insufficiently Random Values.",[39,733,734,737,738,744],{},[42,735],{"id":736},"AA.Bibliography-MITRE"," [MITRE] MITRE. ",[42,739,741,241],{"href":168,"rel":740},[50],[64,742,743],{},"Common Weakness Enumeration, Version 1.8"," February 2010.",[39,746,747,750,751,138],{},[42,748],{"id":749},"AA.Bibliography-MSDN10"," [MSDN 2010] Microsoft Developer Network. ",[42,752,755],{"href":753,"rel":754},"http:\u002F\u002Fmsdn.microsoft.com\u002Fen-us\u002Flibrary\u002Faa379942.aspx",[50],"CryptGenRandom Function",[39,757,758,761,762,138],{},[42,759],{"id":760},"AA.Bibliography-msdn2016"," [MDSN 2016] Microsoft Developer Network. ",[42,763,766],{"href":764,"rel":765},"https:\u002F\u002Fmsdn.microsoft.com\u002Fen-us\u002Flibrary\u002F49147z04.aspx",[50],"nothrow (C++)",[39,768,769,772,773,254],{},[42,770],{"id":771},"AA.Bibliography-NIST06"," [NIST 2006] NIST. ",[42,774,777],{"href":775,"rel":776},"http:\u002F\u002Fsamate.nist.gov\u002FSRD\u002F",[50],[64,778,779],{},"SAMATE Reference Dataset",[39,781,782,437,785,437,787,437,790,793,794,801],{},[42,783],{"id":784},"AA.Bibliography-POSIX.1-2013",[42,786],{"id":376},[42,788],{"id":789},"AA.Bibliography-ISO\u002FIEC9945:2013",[42,791],{"id":792},"AA.Bibliography-OpenGroup13"," [Open Group 2013] The Open Group. ",[42,795,798],{"href":796,"rel":797},"http:\u002F\u002Fwww.opengroup.org\u002Fonlinepubs\u002F9699919799\u002Ftoc.htm",[50],[64,799,800],{},"The Open Group Base Specifications Issue 7, IEEE Std 1003.1, 2013 Edition"," . 2013.",[39,803,804,437,807,437,810,437,813,816,817,823],{},[42,805],{"id":806},"AA.Bibliography-POSIX.1-2008",[42,808],{"id":809},"AA.Bibliography-IEEEStd1003.1-2008",[42,811],{"id":812},"AA.Bibliography-ISO\u002FIEC9945:2008",[42,814],{"id":815},"AA.Bibliography-OpenGroup08"," [Open Group 2008] The Open Group. ",[42,818,820],{"href":796,"rel":819},[50],[64,821,822],{},"The Open Group Base Specifications Issue 7, IEEE Std 1003.1, 2008 Edition"," . 2008.",[39,825,826,437,829,437,832,437,835,838,839,846],{},[42,827],{"id":828},"AA.Bibliography-POSIX.1-2004",[42,830],{"id":831},"AA.Bibliography-IEEEStd1003.1-2004",[42,833],{"id":834},"AA.Bibliography-ISO\u002FIEC9945:2003",[42,836],{"id":837},"AA.Bibliography-OpenGroup04"," [Open Group 2004] The Open Group. ",[42,840,843],{"href":841,"rel":842},"http:\u002F\u002Fwww.opengroup.org\u002Fonlinepubs\u002F009695399\u002Ftoc.htm",[50],[64,844,845],{},"The Open Group Base Specifications Issue 6, IEEE Std 1003.1, 2004 Edition"," . 2004.",[39,848,849,852,853,856],{},[42,850],{"id":851},"AA.Bibliography-Plum91"," [Plum 1991] Plum, Thomas. ",[64,854,855],{},"C++ Programming"," . Plum Hall, Inc. November 1991. ISBN 0911537104.",[39,858,859,862,863,866],{},[42,860],{"id":861},"AA.Bibliography-Quinlan06"," [Quinlan 2006] Quinlan, Dan; Vuduc, Richard; Panas, Thomas; Härdtlein, Jochen; & Sæbjørnsen, Andreas. Support for Whole-Program Analysis and the Verification of the One-Definition Rule in C++. 27-35. Page 500-262. In ",[64,864,865],{},"Proceedings of the Static Analysis Summit"," . July 2006.",[39,868,869,872,873,880],{},[42,870],{"id":871},"AA.Bibliography-rohlf2009"," [Rohlf 2009] Rohlf, Chris. ",[42,874,877],{"href":875,"rel":876},"http:\u002F\u002Fem386.blogspot.com\u002F2009\u002F06\u002Ffun-with-erase.html",[50],[64,878,879],{},"Fun with erase ()"," . 2009.",[39,882,883,886,887,713,892,895],{},[42,884],{"id":885},"AA.Bibliography-Saks99"," [Saks 1999] Saks, Dan. ",[42,888,891],{"href":889,"rel":890},"http:\u002F\u002Fwww.dansaks.com\u002Farticles\u002F1999-02%20const%20T%20vs%20T%20const.pdf",[50],"const T vs.T const",[64,893,894],{},"Embedded Systems Programming"," . February 1999. Pages 13-16.",[39,897,898,901,902,713,907,910],{},[42,899],{"id":900},"AA.Bibliography-Saks07"," [Saks 2007] Saks, Dan. ",[42,903,906],{"href":904,"rel":905},"http:\u002F\u002Fwww.embedded.com\u002Fcolumns\u002Fprogrammingpointers\u002F9900661?_requestid=481957",[50],"Sequence Points",[64,908,909],{},"Embedded Systems Design."," 2007.",[39,912,913,916,917,920],{},[42,914],{"id":915},"AA.Bibliography-Seacord05"," [Seacord 2005] Seacord, Robert C. ",[64,918,919],{},"Secure Coding in C and C++"," . Addison-Wesley. 2005. ISBN 0321335724.",[39,922,923,437,926,929,931,932,935],{},[42,924],{"id":925},"AA.Bibliography-Seacord2013",[42,927],{"id":928},"AA.Bibliography-Seacord13",[378,930],{},"\n[Seacord 2013] Seacord, Robert C. ",[64,933,934],{},"Secure Coding in C and C++, Second Edition"," . Addison-Wesley. 2013.",[39,937,938,941,942,947],{},[42,939],{"id":940},"AA.Bibliography-Sebor04"," [Sebor 2004] Sebor, Martin. ",[42,943,946],{"href":944,"rel":945},"http:\u002F\u002Fwww.open-std.org\u002Fjtc1\u002Fsc22\u002Fwg21\u002Fdocs\u002Fpapers\u002F2010\u002Fn3026.html#475",[50],"C++ Standard Core Language Active Issues, Revision 68."," 2010.",[39,949,950,953,954,713,959,254],{},[42,951],{"id":952},"AA.Bibliography-SGI06"," [SGI 2006] Silicon Graphics, Inc. ",[42,955,958],{"href":956,"rel":957},"http:\u002F\u002Fwww.sgi.com\u002Ftech\u002Fstl\u002Fbasic_string.html",[50],"basic_string\u003CcharT, traits, Alloc>",[64,960,961],{},"Standard Template Library Programmer's Guide",[39,963,964,967,968,437,973,976],{},[42,965],{"id":966},"AA.Bibliography-Steele77"," [Steele 1977] Steele, G. L. ",[42,969,972],{"href":970,"rel":971},"http:\u002F\u002Fdoi.acm.org\u002F10.1145\u002F956641.956647",[50],"Arithmetic shifting considered harmful.",[64,974,975],{},"SIGPLAN Notices."," Volume 12. Issue 11. November 1977. Pages 61-69.",[39,978,979,982,983,986],{},[42,980],{"id":981},"AA.Bibliography-Stroustrup97"," [Stroustrup 1997] Stroustrup, Bjarne. ",[64,984,985],{},"The C++ Programming Language, Third Edition"," . Addison-Wesley. 1997. ISBN 978-0201700732 .",[39,988,989,992,993,1000],{},[42,990],{"id":991},"AA.Bibliography-Stroustrup06"," [Stroustrup 2006] Stroustrup, Bjarne. ",[42,994,997],{"href":995,"rel":996},"http:\u002F\u002Fwww.stroustrup.com\u002Fbs_faq2.html",[50],[64,998,999],{},"C++ Style and Technique FAQ."," 2006. December 2016 [accessed].",[39,1002,1003,1006,1007,1012],{},[42,1004],{"id":1005},"AA.Bibliography-Stroustrup01"," [Stroustrup 2001] Stroustrup, Bjarne. ",[42,1008,1011],{"href":1009,"rel":1010},"http:\u002F\u002Fwww.stroustrup.com\u002Fexcept.pdf",[50],"Exception Safety: Concepts and Techniques"," . AT&T Labs. 2001.",[39,1014,1015,1018,1019,1024],{},[42,1016],{"id":1017},"AA.Bibliography-Sun93"," [Sun 1993] ",[42,1020,1023],{"href":1021,"rel":1022},"http:\u002F\u002Fwww.securityfocus.com\u002Fadvisories\u002F198",[50],"Sun Security Bulletin #00122"," . 1993.",[39,1026,1027,1030,1031,1034],{},[42,1028],{"id":1029},"AA.Bibliography-Sutter00"," [Sutter 2000] Sutter, Herb. ",[64,1032,1033],{},"Exceptional C++: 47 Engineering Puzzles, Programming Problems, and Solutions"," . Addison-Wesley Professional. 2000. ISBN 0201615622.",[39,1036,1037,1040,1041,1044],{},[42,1038],{"id":1039},"AA.Bibliography-Sutter01"," [Sutter 2001] Sutter, Herb. ",[64,1042,1043],{},"More Exceptional C++: 40 New Engineering Puzzles, Programming Problems, and Solutions"," . Addison-Wesley Professional. 2001. ISBN 020170434.",[39,1046,1047,1050,1051,1054],{},[42,1048],{"id":1049},"AA.Bibliography-Sutter04"," [Sutter 2004] Sutter, Herb & Alexandrescu, Andrei. ",[64,1052,1053],{},"C++ Coding Standards: 101 Rules, Guidelines, and Best Practices"," . Addison-Wesley Professional. 2004. ISBN 0321113586.",[39,1056,1057,1060,1061,1064],{},[42,1058],{"id":1059},"AA.Bibliography-vanSprundel06"," [van Sprundel 2006] van Sprundel, Ilja. ",[64,1062,1063],{},"Unusual bugs."," 2006.",[39,1066,1067,1070,1071,1074],{},[42,1068],{"id":1069},"AA.Bibliography-Viega03"," [Viega 2003] Viega, John & Messier, Matt. ",[64,1072,1073],{},"Secure Programming Cookbook for C and C++: Recipes for Cryptography, Authentication, Networking, Input Validation & More"," . O'Reilly. 2003. ISBN 0-596-00394-3.",[39,1076,1077,1080,1081,1086],{},[42,1078],{"id":1079},"AA.Bibliography-Viega05"," [Viega 2005] Viega, John. ",[42,1082,1085],{"href":1083,"rel":1084},"http:\u002F\u002Fwww.securesoftware.com\u002Fprocess\u002F",[50],"CLASP Reference Guide, Volume 1.1."," Secure Software. 2005.",[39,1088,1089,1092,1093,1098],{},[42,1090],{"id":1091},"AA.Bibliography-VU#159523"," [VU#159523] Giobbi, Ryan. ",[42,1094,1097],{"href":1095,"rel":1096},"http:\u002F\u002Fwww.kb.cert.org\u002Fvuls\u002Fid\u002F159523",[50],"Vulnerability Note VU#159523"," . Adobe Flash Player integer overflow vulnerability. April 2008.",[39,1100,1101,1104,1105,1110,1111,1113],{},[42,1102],{"id":1103},"AA.Bibliography-VU#162289"," [VU#162289] Dougherty, Chad. ",[42,1106,1109],{"href":1107,"rel":1108},"http:\u002F\u002Fwww.kb.cert.org\u002Fvuls\u002Fid\u002F162289",[50],"Vulnerability Note VU#162289"," . GCC Silently Discards Some Wraparound Checks ",[64,1112,574],{}," April 2008.",[39,1115,1116,1119,1120,1125],{},[42,1117],{"id":1118},"AA.Bibliography-VU623332"," [VU#623332] Mead, Robert. ",[42,1121,1124],{"href":1122,"rel":1123},"http:\u002F\u002Fwww.kb.cert.org\u002Fvuls\u002Fid\u002F623332",[50],"Vulnerability Note VU#623332"," . MIT Kerberos 5 contains double free vulnerability in \"krb5_recvauth()\" function. July 2005.",[39,1127,1128,1131,1132,1137],{},[42,1129],{"id":1130},"AA.Bibliography-VU925211"," [VU#925211] Weimer, Florian. ",[42,1133,1136],{"href":1134,"rel":1135},"http:\u002F\u002Fwww.kb.cert.org\u002Fvuls\u002Fid\u002F925211",[50],"Vulnerability Note VU#925211"," . Debian and Ubuntu OpenSSL packages contain a predictable random number generator. May 2008.",[39,1139,1140,1143,1144,1147],{},[42,1141],{"id":1142},"AA.Bibliography-Warren02"," [Warren 2002] Warren, Henry S. ",[64,1145,1146],{},"Hacker's Delight"," . Addison Wesley Professional. 2002. ISBN 0201914654.",[39,1149,1150,1153,1154,52],{},[42,1151],{"id":1152},"AA.Bibliography-Williams10"," [Williams 2010a] Williams, Anthony. ",[42,1155,1158],{"href":1156,"rel":1157},"http:\u002F\u002Fwww.boost.org\u002Fdoc\u002Flibs\u002F1_44_0\u002Fdoc\u002Fhtml\u002Fthread.html",[50],"Thread",[39,1160,1161,1163,1164,1169],{},[42,1162],{"id":1152}," [Williams 2010b] Williams, Anthony. ",[42,1165,1168],{"href":1166,"rel":1167},"http:\u002F\u002Fwww.devx.com\u002FSpecialReports\u002FArticle\u002F38883\u002F1954",[50],"Simpler Multithreading in C++0x"," . Internet.com. 2010.",[39,1171,1172,1175,1176,138],{},[42,1173],{"id":1174},"AA.Bibliography-xorl2009"," [xorl 2009] xorl. ",[42,1177,1180],{"href":1178,"rel":1179},"http:\u002F\u002Fxorl.wordpress.com\u002F",[50],"xorl %eax, %eax",{"title":1182,"searchDepth":1183,"depth":1183,"links":1184},"",2,[]," [Abrahams 2010] Abrahams, David. Error and Exception Handling, #7 . Boost Library. 2010.","md",{"tags":1188},[1189,1190,1191,1192],"section","recommendation","rule","bm","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Faa-bibliography",{"title":30,"description":1185},"5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F2.aa-bibliography","t2F0jFAplYx10klV75_LKw0l7EcsJpdBtVHQ6MlUBso",[1198,1202],{"title":1199,"path":1200,"stem":1201,"children":-1},"Back Matter","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F1.index",{"title":1203,"path":1204,"stem":1205,"children":-1},"BB. Definitions","\u002Fsei-cert-cpp-coding-standard\u002Fback-matter\u002Fbb-definitions","5.sei-cert-cpp-coding-standard\u002F4.back-matter\u002F3.bb-definitions",[1207],{"title":1208,"path":1209,"stem":1210,"children":1211},"SEI CERT C++ Coding Standard","\u002Fsei-cert-cpp-coding-standard","5.sei-cert-cpp-coding-standard\u002F1.index",[1212,1213,1281,1685,1902,1912],{"title":1208,"path":1209,"stem":1210},{"title":1214,"path":1215,"stem":1216,"children":1217},"Front Matter","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F1.index",[1218,1219],{"title":1214,"path":1215,"stem":1216},{"title":1220,"path":1221,"stem":1222,"children":1223},"Introduction","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F01.index",[1224,1225,1229,1233,1237,1241,1245,1249,1253,1257,1261,1265,1269,1273,1277],{"title":1220,"path":1221,"stem":1222},{"title":1226,"path":1227,"stem":1228},"Scope","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fscope","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F02.scope",{"title":1230,"path":1231,"stem":1232},"Audience","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Faudience","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F03.audience",{"title":1234,"path":1235,"stem":1236},"Usage","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Fusage","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F04.usage",{"title":1238,"path":1239,"stem":1240},"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":1242,"path":1243,"stem":1244},"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":1246,"path":1247,"stem":1248},"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":1250,"path":1251,"stem":1252},"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":1254,"path":1255,"stem":1256},"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":1258,"path":1259,"stem":1260},"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":1262,"path":1263,"stem":1264},"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":1266,"path":1267,"stem":1268},"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":1270,"path":1271,"stem":1272},"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":1274,"path":1275,"stem":1276},"Acknowledgments","\u002Fsei-cert-cpp-coding-standard\u002Ffront-matter\u002Fintroduction\u002Facknowledgments","5.sei-cert-cpp-coding-standard\u002F2.front-matter\u002F2.introduction\u002F14.acknowledgments",{"title":1278,"path":1279,"stem":1280},"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":1282,"path":1283,"stem":1284,"children":1285},"Rules","\u002Fsei-cert-cpp-coding-standard\u002Frules","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F01.index",[1286,1287,1309,1343,1385,1435,1493,1555,1569,1579,1617,1643],{"title":1282,"path":1283,"stem":1284},{"title":1288,"path":1289,"stem":1290,"children":1291},"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",[1292,1293,1297,1301,1305],{"title":1288,"path":1289,"stem":1290},{"title":1294,"path":1295,"stem":1296},"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":1298,"path":1299,"stem":1300},"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":1302,"path":1303,"stem":1304},"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":1306,"path":1307,"stem":1308},"string from a null pointer","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcharacters-and-strings-str\u002Fstring-from-a-null-pointer","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F02.characters-and-strings-str\u002F5.string-from-a-null-pointer",{"title":1310,"path":1311,"stem":1312,"children":1313},"Concurrency (CON)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F1.index",[1314,1315,1319,1323,1327,1331,1335,1339],{"title":1310,"path":1311,"stem":1312},{"title":1316,"path":1317,"stem":1318},"CON50-CPP. Do not destroy a mutex while it is locked","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F2.con50-cpp",{"title":1320,"path":1321,"stem":1322},"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":1324,"path":1325,"stem":1326},"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":1328,"path":1329,"stem":1330},"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":1332,"path":1333,"stem":1334},"CON54-CPP. Wrap functions that can spuriously wake up in a loop","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F6.con54-cpp",{"title":1336,"path":1337,"stem":1338},"CON55-CPP. Preserve thread safety and liveness when using condition variables","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fconcurrency-con\u002Fcon55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F03.concurrency-con\u002F7.con55-cpp",{"title":1340,"path":1341,"stem":1342},"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":1344,"path":1345,"stem":1346,"children":1347},"Containers (CTR)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F01.index",[1348,1349,1353,1357,1361,1365,1369,1373,1377,1381],{"title":1344,"path":1345,"stem":1346},{"title":1350,"path":1351,"stem":1352},"CTR50-CPP. Guarantee that container indices and iterators are within the valid range","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fcontainers-ctr\u002Fctr50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F04.containers-ctr\u002F02.ctr50-cpp",{"title":1354,"path":1355,"stem":1356},"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":1358,"path":1359,"stem":1360},"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":1362,"path":1363,"stem":1364},"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":1366,"path":1367,"stem":1368},"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":1370,"path":1371,"stem":1372},"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":1374,"path":1375,"stem":1376},"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":1378,"path":1379,"stem":1380},"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":1382,"path":1383,"stem":1384},"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":1386,"path":1387,"stem":1388,"children":1389},"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",[1390,1391,1395,1399,1403,1407,1411,1415,1419,1423,1427,1431],{"title":1386,"path":1387,"stem":1388},{"title":1392,"path":1393,"stem":1394},"DCL50-CPP. Do not define a C-style variadic function","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F02.dcl50-cpp",{"title":1396,"path":1397,"stem":1398},"DCL51-CPP. Do not declare or define a reserved identifier","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F03.dcl51-cpp",{"title":1400,"path":1401,"stem":1402},"DCL52-CPP. Never qualify a reference type with const or volatile","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F04.dcl52-cpp",{"title":1404,"path":1405,"stem":1406},"DCL53-CPP. Do not write syntactically ambiguous declarations","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F05.dcl53-cpp",{"title":1408,"path":1409,"stem":1410},"DCL54-CPP. Overload allocation and deallocation functions as a pair in the same scope","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F06.dcl54-cpp",{"title":1412,"path":1413,"stem":1414},"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":1416,"path":1417,"stem":1418},"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":1420,"path":1421,"stem":1422},"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":1424,"path":1425,"stem":1426},"DCL58-CPP. Do not modify the standard namespaces","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl58-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F10.dcl58-cpp",{"title":1428,"path":1429,"stem":1430},"DCL59-CPP. Do not define an unnamed namespace in a header file","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fdeclarations-and-initialization-dcl\u002Fdcl59-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F05.declarations-and-initialization-dcl\u002F11.dcl59-cpp",{"title":1432,"path":1433,"stem":1434},"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":1436,"path":1437,"stem":1438,"children":1439},"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",[1440,1441,1445,1449,1453,1457,1461,1465,1469,1473,1477,1481,1485,1489],{"title":1436,"path":1437,"stem":1438},{"title":1442,"path":1443,"stem":1444},"ERR50-CPP. Do not abruptly terminate the program","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F02.err50-cpp",{"title":1446,"path":1447,"stem":1448},"ERR51-CPP. Handle all exceptions","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F03.err51-cpp",{"title":1450,"path":1451,"stem":1452},"ERR52-CPP. Do not use setjmp() or longjmp()","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F04.err52-cpp",{"title":1454,"path":1455,"stem":1456},"ERR53-CPP. Do not reference base classes or class data members in a constructor or destructor function-try-block handler","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F05.err53-cpp",{"title":1458,"path":1459,"stem":1460},"ERR54-CPP. Catch handlers should order their parameter types from most derived to least derived","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F06.err54-cpp",{"title":1462,"path":1463,"stem":1464},"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":1466,"path":1467,"stem":1468},"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":1470,"path":1471,"stem":1472},"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":1474,"path":1475,"stem":1476},"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":1478,"path":1479,"stem":1480},"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":1482,"path":1483,"stem":1484},"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":1486,"path":1487,"stem":1488},"ERR61-CPP. Catch exceptions by lvalue reference","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexceptions-and-error-handling-err\u002Ferr61-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F06.exceptions-and-error-handling-err\u002F13.err61-cpp",{"title":1490,"path":1491,"stem":1492},"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":1494,"path":1495,"stem":1496,"children":1497},"Expressions (EXP)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F01.index",[1498,1499,1503,1507,1511,1515,1519,1523,1527,1531,1535,1539,1543,1547,1551],{"title":1494,"path":1495,"stem":1496},{"title":1500,"path":1501,"stem":1502},"EXP50-CPP. Do not depend on the order of evaluation for side effects","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F02.exp50-cpp",{"title":1504,"path":1505,"stem":1506},"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":1508,"path":1509,"stem":1510},"EXP52-CPP. Do not rely on side effects in unevaluated operands","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F04.exp52-cpp",{"title":1512,"path":1513,"stem":1514},"EXP53-CPP. Do not read uninitialized memory","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F05.exp53-cpp",{"title":1516,"path":1517,"stem":1518},"EXP54-CPP. Do not access an object outside of its lifetime","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F06.exp54-cpp",{"title":1520,"path":1521,"stem":1522},"EXP55-CPP. Do not access a cv-qualified object through a cv-unqualified type","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F07.exp55-cpp",{"title":1524,"path":1525,"stem":1526},"EXP56-CPP. Do not call a function with a mismatched language linkage","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fexpressions-exp\u002Fexp56-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F07.expressions-exp\u002F08.exp56-cpp",{"title":1528,"path":1529,"stem":1530},"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":1532,"path":1533,"stem":1534},"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":1536,"path":1537,"stem":1538},"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":1540,"path":1541,"stem":1542},"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":1544,"path":1545,"stem":1546},"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":1548,"path":1549,"stem":1550},"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":1552,"path":1553,"stem":1554},"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":1556,"path":1557,"stem":1558,"children":1559},"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",[1560,1561,1565],{"title":1556,"path":1557,"stem":1558},{"title":1562,"path":1563,"stem":1564},"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":1566,"path":1567,"stem":1568},"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":1570,"path":1571,"stem":1572,"children":1573},"Integers (INT)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fintegers-int","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F09.integers-int\u002F1.index",[1574,1575],{"title":1570,"path":1571,"stem":1572},{"title":1576,"path":1577,"stem":1578},"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":1580,"path":1581,"stem":1582,"children":1583},"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",[1584,1585,1589,1593,1597,1601,1605,1609,1613],{"title":1580,"path":1581,"stem":1582},{"title":1586,"path":1587,"stem":1588},"MEM50-CPP. Do not access freed memory","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F2.mem50-cpp",{"title":1590,"path":1591,"stem":1592},"MEM51-CPP. Properly deallocate dynamically allocated resources","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem51-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F3.mem51-cpp",{"title":1594,"path":1595,"stem":1596},"MEM52-CPP. Detect and handle memory allocation errors","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmemory-management-mem\u002Fmem52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F10.memory-management-mem\u002F4.mem52-cpp",{"title":1598,"path":1599,"stem":1600},"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":1602,"path":1603,"stem":1604},"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":1606,"path":1607,"stem":1608},"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":1610,"path":1611,"stem":1612},"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":1614,"path":1615,"stem":1616},"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":1618,"path":1619,"stem":1620,"children":1621},"Miscellaneous (MSC)","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F1.index",[1622,1623,1627,1631,1635,1639],{"title":1618,"path":1619,"stem":1620},{"title":1624,"path":1625,"stem":1626},"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":1628,"path":1629,"stem":1630},"MSC52-CPP. Value-returning functions must return a value from all exit paths","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F3.msc52-cpp",{"title":1632,"path":1633,"stem":1634},"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":1636,"path":1637,"stem":1638},"MSC54-CPP. A signal handler must be a plain old function","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Fmsc54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F5.msc54-cpp",{"title":1640,"path":1641,"stem":1642},"rand() for generating pseudorandom numbers","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fmiscellaneous-msc\u002Frand-for-generating-pseudorandom-numbers","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F11.miscellaneous-msc\u002F6.rand-for-generating-pseudorandom-numbers",{"title":1644,"path":1645,"stem":1646,"children":1647},"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",[1648,1649,1653,1657,1661,1665,1669,1673,1677,1681],{"title":1644,"path":1645,"stem":1646},{"title":1650,"path":1651,"stem":1652},"OOP50-CPP. Do not invoke virtual functions from constructors or destructors","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop50-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F02.oop50-cpp",{"title":1654,"path":1655,"stem":1656},"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":1658,"path":1659,"stem":1660},"OOP52-CPP. Do not delete a polymorphic object without a virtual destructor","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop52-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F04.oop52-cpp",{"title":1662,"path":1663,"stem":1664},"OOP53-CPP. Write constructor member initializers in the canonical order","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop53-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F05.oop53-cpp",{"title":1666,"path":1667,"stem":1668},"OOP54-CPP. Gracefully handle self-copy assignment","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop54-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F06.oop54-cpp",{"title":1670,"path":1671,"stem":1672},"OOP55-CPP. Do not use pointer-to-member operators to access nonexistent members","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop55-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F07.oop55-cpp",{"title":1674,"path":1675,"stem":1676},"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":1678,"path":1679,"stem":1680},"OOP57-CPP. Prefer special member functions and overloaded operators to C Standard Library functions","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop57-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F09.oop57-cpp",{"title":1682,"path":1683,"stem":1684},"OOP58-CPP. Copy operations must not mutate the source object","\u002Fsei-cert-cpp-coding-standard\u002Frules\u002Fobject-oriented-programming-oop\u002Foop58-cpp","5.sei-cert-cpp-coding-standard\u002F3.rules\u002F12.object-oriented-programming-oop\u002F10.oop58-cpp",{"title":1199,"path":1200,"stem":1201,"children":1686},[1687,1688,1689,1690,1884,1898],{"title":1199,"path":1200,"stem":1201},{"title":30,"path":1193,"stem":1195},{"title":1203,"path":1204,"stem":1205},{"title":1691,"path":1692,"stem":1693,"children":1694},"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",[1695,1696,1700,1704,1708,1712,1716,1720,1724,1728,1732,1736,1740,1744,1748,1752,1756,1760,1764,1768,1772,1776,1780,1784,1788,1792,1796,1800,1804,1808,1812,1816,1820,1824,1828,1832,1836,1840,1844,1848,1852,1856,1860,1864,1868,1872,1876,1880],{"title":1691,"path":1692,"stem":1693},{"title":1697,"path":1698,"stem":1699},"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":1701,"path":1702,"stem":1703},"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":1705,"path":1706,"stem":1707},"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":1709,"path":1710,"stem":1711},"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":1713,"path":1714,"stem":1715},"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":1717,"path":1718,"stem":1719},"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":1721,"path":1722,"stem":1723},"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":1725,"path":1726,"stem":1727},"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":1729,"path":1730,"stem":1731},"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":1733,"path":1734,"stem":1735},"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":1737,"path":1738,"stem":1739},"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":1741,"path":1742,"stem":1743},"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":1745,"path":1746,"stem":1747},"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":1749,"path":1750,"stem":1751},"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":1753,"path":1754,"stem":1755},"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":1757,"path":1758,"stem":1759},"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":1761,"path":1762,"stem":1763},"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":1765,"path":1766,"stem":1767},"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":1769,"path":1770,"stem":1771},"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":1773,"path":1774,"stem":1775},"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":1777,"path":1778,"stem":1779},"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":1781,"path":1782,"stem":1783},"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":1785,"path":1786,"stem":1787},"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":1789,"path":1790,"stem":1791},"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":1793,"path":1794,"stem":1795},"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":1797,"path":1798,"stem":1799},"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":1801,"path":1802,"stem":1803},"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":1805,"path":1806,"stem":1807},"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":1809,"path":1810,"stem":1811},"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":1813,"path":1814,"stem":1815},"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":1817,"path":1818,"stem":1819},"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":1821,"path":1822,"stem":1823},"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":1825,"path":1826,"stem":1827},"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":1829,"path":1830,"stem":1831},"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":1833,"path":1834,"stem":1835},"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":1837,"path":1838,"stem":1839},"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":1841,"path":1842,"stem":1843},"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":1845,"path":1846,"stem":1847},"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":1849,"path":1850,"stem":1851},"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":1853,"path":1854,"stem":1855},"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":1857,"path":1858,"stem":1859},"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":1861,"path":1862,"stem":1863},"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":1865,"path":1866,"stem":1867},"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":1869,"path":1870,"stem":1871},"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":1873,"path":1874,"stem":1875},"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":1877,"path":1878,"stem":1879},"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":1881,"path":1882,"stem":1883},"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":1885,"path":1886,"stem":1887,"children":1888},"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",[1889,1890,1894],{"title":1885,"path":1886,"stem":1887},{"title":1891,"path":1892,"stem":1893},"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":1895,"path":1896,"stem":1897},"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":1899,"path":1900,"stem":1901},"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":1903,"path":1904,"stem":1905,"children":1906},"Admin","\u002Fsei-cert-cpp-coding-standard\u002Fadmin","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F1.index",[1907,1908],{"title":1903,"path":1904,"stem":1905},{"title":1909,"path":1910,"stem":1911},"TODO List","\u002Fsei-cert-cpp-coding-standard\u002Fadmin\u002Ftodo-list","5.sei-cert-cpp-coding-standard\u002F5.admin\u002F2.todo-list",{"title":1913,"path":1914,"stem":1915},"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",1775657764678]