diff --git a/analyzer/tests/functional/cmdline/test_cmdline.py b/analyzer/tests/functional/cmdline/test_cmdline.py
index 5c52f1108a..4225f4d5d3 100644
--- a/analyzer/tests/functional/cmdline/test_cmdline.py
+++ b/analyzer/tests/functional/cmdline/test_cmdline.py
@@ -154,21 +154,21 @@ def test_checkers_guideline(self):
         """ Listing checkers by guideline. """
 
         checkers_cmd = [env.codechecker_cmd(), 'checkers',
-                        '--guideline', 'sei-cert']
+                        '--guideline', 'sei-cert-cpp']
         _, out, _ = run_cmd(checkers_cmd)
 
         self.assertIn('cert-dcl58-cpp', out)
         self.assertNotIn('android', out)
 
         checkers_cmd = [env.codechecker_cmd(), 'checkers',
-                        '--guideline', 'sei-cert:mem35-c']
+                        '--guideline', 'sei-cert-c:mem35-c']
         _, out, _ = run_cmd(checkers_cmd)
 
         self.assertIn('MallocSizeof', out)
         self.assertNotIn('CastToStruct', out)
 
         checkers_cmd = [env.codechecker_cmd(), 'checkers',
-                        '--guideline', 'sei-cert:mem35-c', '-o', 'json',
+                        '--guideline', 'sei-cert-c:mem35-c', '-o', 'json',
                         '--details']
         _, out, _ = run_cmd(checkers_cmd)
         out = json.loads(out)
diff --git a/config/guidelines/sei-cert.yaml b/config/guidelines/sei-cert-c.yaml
similarity index 57%
rename from config/guidelines/sei-cert.yaml
rename to config/guidelines/sei-cert-c.yaml
index 0d8cd31f5d..fe1c6c3399 100644
--- a/config/guidelines/sei-cert.yaml
+++ b/config/guidelines/sei-cert-c.yaml
@@ -1,172 +1,6 @@
-guideline: sei-cert
-guideline_title: SEI CERT Coding Standard
+guideline: sei-cert-c
+guideline_title: SEI CERT Coding Standard (C)
 rules:
-- rule_id: con50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON50-CPP.+Do+not+destroy+a+mutex+while+it+is+locked
-- rule_id: con51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON51-CPP.+Ensure+actively+held+locks+are+released+on+exceptional+conditions
-- rule_id: con52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON52-CPP.+Prevent+data+races+when+accessing+bit-fields+from+multiple+threads
-- rule_id: con53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON53-CPP.+Avoid+deadlock+by+locking+in+a+predefined+order
-- rule_id: con54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON54-CPP.+Wrap+functions+that+can+spuriously+wake+up+in+a+loop
-- rule_id: con55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON55-CPP.+Preserve+thread+safety+and+liveness+when+using+condition+variables
-- rule_id: con56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON56-CPP.+Do+not+speculatively+lock+a+non-recursive+mutex+that+is+already+owned+by+the+calling+thread
-- rule_id: ctr50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR50-CPP.+Guarantee+that+container+indices+and+iterators+are+within+the+valid+range
-- rule_id: ctr51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR51-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+container
-- rule_id: ctr52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR52-CPP.+Guarantee+that+library+functions+do+not+overflow
-- rule_id: ctr53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR53-CPP.+Use+valid+iterator+ranges
-- rule_id: ctr54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR54-CPP.+Do+not+subtract+iterators+that+do+not+refer+to+the+same+container
-- rule_id: ctr55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR55-CPP.+Do+not+use+an+additive+operator+on+an+iterator+if+the+result+would+overflow
-- rule_id: ctr56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR56-CPP.+Do+not+use+pointer+arithmetic+on+polymorphic+objects
-- rule_id: ctr57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR57-CPP.+Provide+a+valid+ordering+predicate
-- rule_id: ctr58-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR58-CPP.+Predicate+function+objects+should+not+be+mutable
-- rule_id: dcl50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL50-CPP.+Do+not+define+a+C-style+variadic+function
-- rule_id: dcl51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL51-CPP.+Do+not+declare+or+define+a+reserved+identifier
-- rule_id: dcl52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL52-CPP.+Never+qualify+a+reference+type+with+const+or+volatile
-- rule_id: dcl53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL53-CPP.+Do+not+write+syntactically+ambiguous+declarations
-- rule_id: dcl54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL54-CPP.+Overload+allocation+and+deallocation+functions+as+a+pair+in+the+same+scope
-- rule_id: dcl55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL55-CPP.+Avoid+information+leakage+when+passing+a+class+object+across+a+trust+boundary
-- rule_id: dcl56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL56-CPP.+Avoid+cycles+during+initialization+of+static+objects
-- rule_id: dcl57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL57-CPP.+Do+not+let+exceptions+escape+from+destructors+or+deallocation+functions
-- rule_id: dcl58-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL58-CPP.+Do+not+modify+the+standard+namespaces
-- rule_id: dcl59-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL59-CPP.+Do+not+define+an+unnamed+namespace+in+a+header+file
-- rule_id: dcl60-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL60-CPP.+Obey+the+one-definition+rule
-- rule_id: err50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR50-CPP.+Do+not+abruptly+terminate+the+program
-- rule_id: err51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR51-CPP.+Handle+all+exceptions
-- rule_id: err52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046492
-- rule_id: err53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR53-CPP.+Do+not+reference+base+classes+or+class+data+members+in+a+constructor+or+destructor+function-try-block+handler
-- rule_id: err54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR54-CPP.+Catch+handlers+should+order+their+parameter+types+from+most+derived+to+least+derived
-- rule_id: err55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR55-CPP.+Honor+exception+specifications
-- rule_id: err56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR56-CPP.+Guarantee+exception+safety
-- rule_id: err57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR57-CPP.+Do+not+leak+resources+when+handling+exceptions
-- rule_id: err58-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR58-CPP.+Handle+all+exceptions+thrown+before+main%28%29+begins+executing
-- rule_id: err59-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR59-CPP.+Do+not+throw+an+exception+across+execution+boundaries
-- rule_id: err60-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible
-- rule_id: err61-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR61-CPP.+Catch+exceptions+by+lvalue+reference
-- rule_id: err62-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR62-CPP.+Detect+errors+when+converting+a+string+to+a+number
-- rule_id: exp50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP50-CPP.+Do+not+depend+on+the+order+of+evaluation+for+side+effects
-- rule_id: exp51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP51-CPP.+Do+not+delete+an+array+through+a+pointer+of+the+incorrect+type
-- rule_id: exp52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP52-CPP.+Do+not+rely+on+side+effects+in+unevaluated+operands
-- rule_id: exp53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP53-CPP.+Do+not+read+uninitialized+memory
-- rule_id: exp54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP54-CPP.+Do+not+access+an+object+outside+of+its+lifetime
-- rule_id: exp55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP55-CPP.+Do+not+access+a+cv-qualified+object+through+a+cv-unqualified+type
-- rule_id: exp56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP56-CPP.+Do+not+call+a+function+with+a+mismatched+language+linkage
-- rule_id: exp57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP57-CPP.+Do+not+cast+or+delete+pointers+to+incomplete+classes
-- rule_id: exp58-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start
-- rule_id: exp59-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP59-CPP.+Use+offsetof%28%29+on+valid+types+and+members
-- rule_id: exp60-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP60-CPP.+Do+not+pass+a+nonstandard-layout+type+object+across+execution+boundaries
-- rule_id: exp61-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP61-CPP.+A+lambda+object+must+not+outlive+any+of+its+reference+captured+objects
-- rule_id: exp62-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP62-CPP.+Do+not+access+the+bits+of+an+object+representation+that+are+not+part+of+the+object%27s+value+representation
-- rule_id: exp63-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP63-CPP.+Do+not+rely+on+the+value+of+a+moved-from+object
-- rule_id: fio50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO50-CPP.+Do+not+alternately+input+and+output+from+a+file+stream+without+an+intervening+positioning+call
-- rule_id: fio51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO51-CPP.+Close+files+when+they+are+no+longer+needed
-- rule_id: int50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/INT50-CPP.+Do+not+cast+to+an+out-of-range+enumeration+value
-- rule_id: mem50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM50-CPP.+Do+not+access+freed+memory
-- rule_id: mem51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM51-CPP.+Properly+deallocate+dynamically+allocated+resources
-- rule_id: mem52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM52-CPP.+Detect+and+handle+memory+allocation+errors
-- rule_id: mem53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM53-CPP.+Explicitly+construct+and+destruct+objects+when+manually+managing+object+lifetime
-- rule_id: mem54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM54-CPP.+Provide+placement+new+with+properly+aligned+pointers+to+sufficient+storage+capacity
-- rule_id: mem55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM55-CPP.+Honor+replacement+dynamic+storage+management+requirements
-- rule_id: mem56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM56-CPP.+Do+not+store+an+already-owned+pointer+value+in+an+unrelated+smart+pointer
-- rule_id: mem57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM57-CPP.+Avoid+using+default+operator+new+for+over-aligned+types
-- rule_id: msc50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC50-CPP.+Do+not+use+std%3A%3Arand%28%29+for+generating+pseudorandom+numbers
-- rule_id: msc51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC51-CPP.+Ensure+your+random+number+generator+is+properly+seeded
-- rule_id: msc52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC52-CPP.+Value-returning+functions+must+return+a+value+from+all+exit+paths
-- rule_id: msc53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046346
-- rule_id: msc54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC54-CPP.+A+signal+handler+must+be+a+plain+old+function
-- rule_id: oop50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP50-CPP.+Do+not+invoke+virtual+functions+from+constructors+or+destructors
-- rule_id: oop51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP51-CPP.+Do+not+slice+derived+objects
-- rule_id: oop52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP52-CPP.+Do+not+delete+a+polymorphic+object+without+a+virtual+destructor
-- rule_id: oop53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP53-CPP.+Write+constructor+member+initializers+in+the+canonical+order
-- rule_id: oop54-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP54-CPP.+Gracefully+handle+self-copy+assignment
-- rule_id: oop55-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP55-CPP.+Do+not+use+pointer-to-member+operators+to+access+nonexistent+members
-- rule_id: oop56-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP56-CPP.+Honor+replacement+handler+requirements
-- rule_id: oop57-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP57-CPP.+Prefer+special+member+functions+and+overloaded+operators+to+C+Standard+Library+functions
-- rule_id: oop58-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP58-CPP.+Copy+operations+must+not+mutate+the+source+object
-- rule_id: str50-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR50-CPP.+Guarantee+that+storage+for+strings+has+sufficient+space+for+character+data+and+the+null+terminator
-- rule_id: str51-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR51-CPP.+Do+not+attempt+to+create+a+std%3A%3Astring+from+a+null+pointer
-- rule_id: str52-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR52-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+basic_string
-- rule_id: str53-cpp
-  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR53-CPP.+Range+check+element+access
 - rule_id: arr30-c
   rule_url: https://wiki.sei.cmu.edu/confluence/display/c/ARR30-C.+Do+not+form+or+use+out-of-bounds+pointers+or+array+subscripts
 - rule_id: arr32-c
diff --git a/config/guidelines/sei-cert-cpp.yaml b/config/guidelines/sei-cert-cpp.yaml
new file mode 100644
index 0000000000..cd5b6cd7ef
--- /dev/null
+++ b/config/guidelines/sei-cert-cpp.yaml
@@ -0,0 +1,169 @@
+guideline: sei-cert-cpp
+guideline_title: SEI CERT Coding Standard (C++)
+rules:
+- rule_id: con50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON50-CPP.+Do+not+destroy+a+mutex+while+it+is+locked
+- rule_id: con51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON51-CPP.+Ensure+actively+held+locks+are+released+on+exceptional+conditions
+- rule_id: con52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON52-CPP.+Prevent+data+races+when+accessing+bit-fields+from+multiple+threads
+- rule_id: con53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON53-CPP.+Avoid+deadlock+by+locking+in+a+predefined+order
+- rule_id: con54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON54-CPP.+Wrap+functions+that+can+spuriously+wake+up+in+a+loop
+- rule_id: con55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON55-CPP.+Preserve+thread+safety+and+liveness+when+using+condition+variables
+- rule_id: con56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CON56-CPP.+Do+not+speculatively+lock+a+non-recursive+mutex+that+is+already+owned+by+the+calling+thread
+- rule_id: ctr50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR50-CPP.+Guarantee+that+container+indices+and+iterators+are+within+the+valid+range
+- rule_id: ctr51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR51-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+container
+- rule_id: ctr52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR52-CPP.+Guarantee+that+library+functions+do+not+overflow
+- rule_id: ctr53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR53-CPP.+Use+valid+iterator+ranges
+- rule_id: ctr54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR54-CPP.+Do+not+subtract+iterators+that+do+not+refer+to+the+same+container
+- rule_id: ctr55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR55-CPP.+Do+not+use+an+additive+operator+on+an+iterator+if+the+result+would+overflow
+- rule_id: ctr56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR56-CPP.+Do+not+use+pointer+arithmetic+on+polymorphic+objects
+- rule_id: ctr57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR57-CPP.+Provide+a+valid+ordering+predicate
+- rule_id: ctr58-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/CTR58-CPP.+Predicate+function+objects+should+not+be+mutable
+- rule_id: dcl50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL50-CPP.+Do+not+define+a+C-style+variadic+function
+- rule_id: dcl51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL51-CPP.+Do+not+declare+or+define+a+reserved+identifier
+- rule_id: dcl52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL52-CPP.+Never+qualify+a+reference+type+with+const+or+volatile
+- rule_id: dcl53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL53-CPP.+Do+not+write+syntactically+ambiguous+declarations
+- rule_id: dcl54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL54-CPP.+Overload+allocation+and+deallocation+functions+as+a+pair+in+the+same+scope
+- rule_id: dcl55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL55-CPP.+Avoid+information+leakage+when+passing+a+class+object+across+a+trust+boundary
+- rule_id: dcl56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL56-CPP.+Avoid+cycles+during+initialization+of+static+objects
+- rule_id: dcl57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL57-CPP.+Do+not+let+exceptions+escape+from+destructors+or+deallocation+functions
+- rule_id: dcl58-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL58-CPP.+Do+not+modify+the+standard+namespaces
+- rule_id: dcl59-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL59-CPP.+Do+not+define+an+unnamed+namespace+in+a+header+file
+- rule_id: dcl60-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/DCL60-CPP.+Obey+the+one-definition+rule
+- rule_id: err50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR50-CPP.+Do+not+abruptly+terminate+the+program
+- rule_id: err51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR51-CPP.+Handle+all+exceptions
+- rule_id: err52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046492
+- rule_id: err53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR53-CPP.+Do+not+reference+base+classes+or+class+data+members+in+a+constructor+or+destructor+function-try-block+handler
+- rule_id: err54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR54-CPP.+Catch+handlers+should+order+their+parameter+types+from+most+derived+to+least+derived
+- rule_id: err55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR55-CPP.+Honor+exception+specifications
+- rule_id: err56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR56-CPP.+Guarantee+exception+safety
+- rule_id: err57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR57-CPP.+Do+not+leak+resources+when+handling+exceptions
+- rule_id: err58-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR58-CPP.+Handle+all+exceptions+thrown+before+main%28%29+begins+executing
+- rule_id: err59-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR59-CPP.+Do+not+throw+an+exception+across+execution+boundaries
+- rule_id: err60-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR60-CPP.+Exception+objects+must+be+nothrow+copy+constructible
+- rule_id: err61-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR61-CPP.+Catch+exceptions+by+lvalue+reference
+- rule_id: err62-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/ERR62-CPP.+Detect+errors+when+converting+a+string+to+a+number
+- rule_id: exp50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP50-CPP.+Do+not+depend+on+the+order+of+evaluation+for+side+effects
+- rule_id: exp51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP51-CPP.+Do+not+delete+an+array+through+a+pointer+of+the+incorrect+type
+- rule_id: exp52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP52-CPP.+Do+not+rely+on+side+effects+in+unevaluated+operands
+- rule_id: exp53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP53-CPP.+Do+not+read+uninitialized+memory
+- rule_id: exp54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP54-CPP.+Do+not+access+an+object+outside+of+its+lifetime
+- rule_id: exp55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP55-CPP.+Do+not+access+a+cv-qualified+object+through+a+cv-unqualified+type
+- rule_id: exp56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP56-CPP.+Do+not+call+a+function+with+a+mismatched+language+linkage
+- rule_id: exp57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP57-CPP.+Do+not+cast+or+delete+pointers+to+incomplete+classes
+- rule_id: exp58-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP58-CPP.+Pass+an+object+of+the+correct+type+to+va_start
+- rule_id: exp59-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP59-CPP.+Use+offsetof%28%29+on+valid+types+and+members
+- rule_id: exp60-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP60-CPP.+Do+not+pass+a+nonstandard-layout+type+object+across+execution+boundaries
+- rule_id: exp61-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP61-CPP.+A+lambda+object+must+not+outlive+any+of+its+reference+captured+objects
+- rule_id: exp62-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP62-CPP.+Do+not+access+the+bits+of+an+object+representation+that+are+not+part+of+the+object%27s+value+representation
+- rule_id: exp63-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/EXP63-CPP.+Do+not+rely+on+the+value+of+a+moved-from+object
+- rule_id: fio50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO50-CPP.+Do+not+alternately+input+and+output+from+a+file+stream+without+an+intervening+positioning+call
+- rule_id: fio51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/FIO51-CPP.+Close+files+when+they+are+no+longer+needed
+- rule_id: int50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/INT50-CPP.+Do+not+cast+to+an+out-of-range+enumeration+value
+- rule_id: mem50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM50-CPP.+Do+not+access+freed+memory
+- rule_id: mem51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM51-CPP.+Properly+deallocate+dynamically+allocated+resources
+- rule_id: mem52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM52-CPP.+Detect+and+handle+memory+allocation+errors
+- rule_id: mem53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM53-CPP.+Explicitly+construct+and+destruct+objects+when+manually+managing+object+lifetime
+- rule_id: mem54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM54-CPP.+Provide+placement+new+with+properly+aligned+pointers+to+sufficient+storage+capacity
+- rule_id: mem55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM55-CPP.+Honor+replacement+dynamic+storage+management+requirements
+- rule_id: mem56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM56-CPP.+Do+not+store+an+already-owned+pointer+value+in+an+unrelated+smart+pointer
+- rule_id: mem57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MEM57-CPP.+Avoid+using+default+operator+new+for+over-aligned+types
+- rule_id: msc50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC50-CPP.+Do+not+use+std%3A%3Arand%28%29+for+generating+pseudorandom+numbers
+- rule_id: msc51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC51-CPP.+Ensure+your+random+number+generator+is+properly+seeded
+- rule_id: msc52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC52-CPP.+Value-returning+functions+must+return+a+value+from+all+exit+paths
+- rule_id: msc53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/pages/viewpage.action?pageId=88046346
+- rule_id: msc54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/MSC54-CPP.+A+signal+handler+must+be+a+plain+old+function
+- rule_id: oop50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP50-CPP.+Do+not+invoke+virtual+functions+from+constructors+or+destructors
+- rule_id: oop51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP51-CPP.+Do+not+slice+derived+objects
+- rule_id: oop52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP52-CPP.+Do+not+delete+a+polymorphic+object+without+a+virtual+destructor
+- rule_id: oop53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP53-CPP.+Write+constructor+member+initializers+in+the+canonical+order
+- rule_id: oop54-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP54-CPP.+Gracefully+handle+self-copy+assignment
+- rule_id: oop55-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP55-CPP.+Do+not+use+pointer-to-member+operators+to+access+nonexistent+members
+- rule_id: oop56-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP56-CPP.+Honor+replacement+handler+requirements
+- rule_id: oop57-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP57-CPP.+Prefer+special+member+functions+and+overloaded+operators+to+C+Standard+Library+functions
+- rule_id: oop58-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/OOP58-CPP.+Copy+operations+must+not+mutate+the+source+object
+- rule_id: str50-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR50-CPP.+Guarantee+that+storage+for+strings+has+sufficient+space+for+character+data+and+the+null+terminator
+- rule_id: str51-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR51-CPP.+Do+not+attempt+to+create+a+std%3A%3Astring+from+a+null+pointer
+- rule_id: str52-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR52-CPP.+Use+valid+references%2C+pointers%2C+and+iterators+to+reference+elements+of+a+basic_string
+- rule_id: str53-cpp
+  rule_url: https://wiki.sei.cmu.edu/confluence/display/cplusplus/STR53-CPP.+Range+check+element+access
\ No newline at end of file
diff --git a/config/labels/analyzers/clang-tidy.json b/config/labels/analyzers/clang-tidy.json
index 877e2020e0..ee1a6dacec 100644
--- a/config/labels/analyzers/clang-tidy.json
+++ b/config/labels/analyzers/clang-tidy.json
@@ -176,12 +176,12 @@
     ],
     "bugprone-assert-side-effect": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/assert-side-effect.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pre31-c",
+      "sei-cert-c:pre31-c",
       "severity:MEDIUM"
     ],
     "bugprone-assignment-in-if-condition": [
@@ -191,12 +191,12 @@
     ],
     "bugprone-bad-signal-to-kill-thread": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/bad-signal-to-kill-thread.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos44-c",
+      "sei-cert-c:pos44-c",
       "severity:MEDIUM"
     ],
     "bugprone-bitwise-pointer-cast": [
@@ -278,13 +278,13 @@
     ],
     "bugprone-exception-escape": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/exception-escape.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl57-cpp",
-      "sei-cert:err55-cpp",
-      "sei-cert:msc53-cpp",
+      "sei-cert-cpp:dcl57-cpp",
+      "sei-cert-cpp:err55-cpp",
+      "sei-cert-cpp:msc53-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-fold-init-type": [
@@ -365,20 +365,20 @@
     ],
     "bugprone-macro-parentheses": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-parentheses.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
-      "sei-cert:pre02-c",
+      "sei-cert-c:pre02-c",
       "severity:MEDIUM"
     ],
     "bugprone-macro-repeated-side-effects": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/macro-repeated-side-effects.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pre31-c",
+      "sei-cert-c:pre31-c",
       "severity:MEDIUM"
     ],
     "bugprone-misplaced-operator-in-strlen-in-alloc": [
@@ -418,16 +418,16 @@
     ],
     "bugprone-multiple-new-in-one-expression": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/multiple-new-in-one-expression.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err51-cpp",
-      "sei-cert:exp50-cpp",
-      "sei-cert:mem31-cpp",
-      "sei-cert:mem51-cpp",
-      "sei-cert:mem52-cpp",
+      "sei-cert-cpp:err51-cpp",
+      "sei-cert-cpp:exp50-cpp",
+      "sei-cert-cpp:mem31-cpp",
+      "sei-cert-cpp:mem51-cpp",
+      "sei-cert-cpp:mem52-cpp",
       "severity:HIGH"
     ],
     "bugprone-multiple-statement-macro": [
@@ -438,14 +438,14 @@
     ],
     "bugprone-narrowing-conversions": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/narrowing-conversions.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp45-c",
-      "sei-cert:fio34-c",
-      "sei-cert:flp34-c",
-      "sei-cert:flp36-c",
+      "sei-cert-c:exp45-c",
+      "sei-cert-c:fio34-c",
+      "sei-cert-c:flp34-c",
+      "sei-cert-c:flp36-c",
       "severity:MEDIUM"
     ],
     "bugprone-no-escape": [
@@ -488,10 +488,10 @@
     ],
     "bugprone-pointer-arithmetic-on-polymorphic-object": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/pointer-arithmetic-on-polymorphic-object.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
-      "sei-cert:ctr56-cpp",
+      "sei-cert-cpp:ctr56-cpp",
       "severity:HIGH"
     ],
     "bugprone-posix-return": [
@@ -508,11 +508,12 @@
     ],
     "bugprone-reserved-identifier": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/reserved-identifier.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
-      "sei-cert:dcl37-c",
-      "sei-cert:dcl51-cpp",
+      "sei-cert-c:dcl37-c",
+      "sei-cert-cpp:dcl51-cpp",
       "severity:LOW"
     ],
     "bugprone-return-const-ref-from-parameter": [
@@ -523,33 +524,34 @@
     ],
     "bugprone-shared-ptr-array-mismatch": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/shared-ptr-array-mismatch.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem51-cpp",
+      "sei-cert-cpp:mem51-cpp",
       "severity:HIGH"
     ],
     "bugprone-signal-handler": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/signal-handler.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc54-cpp",
-      "sei-cert:sig30-c",
+      "sei-cert-cpp:msc54-cpp",
+      "sei-cert-c:sig30-c",
       "severity:MEDIUM"
     ],
     "bugprone-signed-char-misuse": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/signed-char-misuse.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:str34-c",
+      "sei-cert-c:str34-c",
       "severity:MEDIUM"
     ],
     "bugprone-sizeof-container": [
@@ -561,22 +563,23 @@
     ],
     "bugprone-sizeof-expression": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/sizeof-expression.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem35-c",
+      "sei-cert-c:mem35-c",
       "severity:HIGH"
     ],
     "bugprone-spuriously-wake-up-functions": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/spuriously-wake-up-functions.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:con36-c",
-      "sei-cert:con54-cpp",
+      "sei-cert-c:con36-c",
+      "sei-cert-cpp:con54-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-standalone-empty": [
@@ -628,23 +631,23 @@
     ],
     "bugprone-suspicious-memory-comparison": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-memory-comparison.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp42-c",
-      "sei-cert:flp37-c",
+      "sei-cert-c:exp42-c",
+      "sei-cert-c:flp37-c",
       "severity:MEDIUM"
     ],
     "bugprone-suspicious-memset-usage": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-memset-usage.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:int31-c",
+      "sei-cert-c:int31-c",
       "severity:HIGH"
     ],
     "bugprone-suspicious-missing-comma": [
@@ -656,12 +659,12 @@
     ],
     "bugprone-suspicious-realloc-usage": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/suspicious-realloc-usage.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err33-c",
+      "sei-cert-c:err33-c",
       "severity:HIGH"
     ],
     "bugprone-suspicious-semicolon": [
@@ -733,13 +736,13 @@
     ],
     "bugprone-undefined-memory-manipulation": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/undefined-memory-manipulation.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp62-cpp",
-      "sei-cert:oop57-cpp",
+      "sei-cert-cpp:exp62-cpp",
+      "sei-cert-cpp:oop57-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-undelegated-constructor": [
@@ -751,42 +754,42 @@
     ],
     "bugprone-unhandled-exception-at-new": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unhandled-exception-at-new.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err51-cpp",
-      "sei-cert:mem52-cpp",
+      "sei-cert-cpp:err51-cpp",
+      "sei-cert-cpp:mem52-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-unhandled-self-assignment": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unhandled-self-assignment.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop54-cpp",
+      "sei-cert-cpp:oop54-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-unique-ptr-array-mismatch": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unique-ptr-array-mismatch.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem51-cpp",
+      "sei-cert-cpp:mem51-cpp",
       "severity:MEDIUM"
     ],
     "bugprone-unsafe-functions": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unsafe-functions.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc24-c",
-      "sei-cert:msc33-c",
+      "sei-cert-c:msc24-c",
+      "sei-cert-c:msc33-c",
       "severity:LOW"
     ],
     "bugprone-unused-local-non-trivial-variable": [
@@ -804,22 +807,22 @@
     ],
     "bugprone-unused-return-value": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/unused-return-value.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err33-c",
+      "sei-cert-c:err33-c",
       "severity:MEDIUM"
     ],
     "bugprone-use-after-move": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/bugprone/use-after-move.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp63-cpp",
+      "sei-cert-cpp:exp63-cpp",
       "severity:HIGH"
     ],
     "bugprone-virtual-near-miss": [
@@ -847,29 +850,29 @@
     ],
     "cert-dcl03-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl03-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl03-c",
+      "sei-cert-c:dcl03-c",
       "severity:MEDIUM"
     ],
     "cert-dcl16-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl16-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl16-c",
+      "sei-cert-c:dcl16-c",
       "severity:STYLE"
     ],
     "cert-dcl21-cpp": [
       "doc_url:https://releases.llvm.org/18.1.1/tools/clang/tools/extra/docs/clang-tidy/checks/cert/dcl21-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl21-cpp",
+      "sei-cert-cpp:dcl21-cpp",
       "severity:LOW"
     ],
     "cert-dcl37-c": [
@@ -878,11 +881,11 @@
     ],
     "cert-dcl50-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl50-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl50-cpp",
+      "sei-cert-cpp:dcl50-cpp",
       "severity:LOW"
     ],
     "cert-dcl51-cpp": [
@@ -895,12 +898,12 @@
     ],
     "cert-dcl58-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/dcl58-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl58-cpp",
+      "sei-cert-cpp:dcl58-cpp",
       "severity:HIGH"
     ],
     "cert-dcl59-cpp": [
@@ -909,11 +912,11 @@
     ],
     "cert-env33-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/env33-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:env33-c",
+      "sei-cert-c:env33-c",
       "severity:MEDIUM"
     ],
     "cert-err09-cpp": [
@@ -922,48 +925,48 @@
     ],
     "cert-err33-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err33-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err33-c",
+      "sei-cert-c:err33-c",
       "severity:MEDIUM"
     ],
     "cert-err34-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err34-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err34-c",
+      "sei-cert-c:err34-c",
       "severity:LOW"
     ],
     "cert-err52-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err52-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err52-cpp",
+      "sei-cert-cpp:err52-cpp",
       "severity:LOW"
     ],
     "cert-err58-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err58-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err58-cpp",
+      "sei-cert-cpp:err58-cpp",
       "severity:LOW"
     ],
     "cert-err60-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/err60-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err60-cpp",
+      "sei-cert-cpp:err60-cpp",
       "severity:MEDIUM"
     ],
     "cert-err61-cpp": [
@@ -980,12 +983,12 @@
     ],
     "cert-flp30-c": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/flp30-c.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:flp30-c",
+      "sei-cert-c:flp30-c",
       "severity:HIGH"
     ],
     "cert-flp37-c": [
@@ -998,12 +1001,12 @@
     ],
     "cert-mem57-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/mem57-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem57-cpp",
+      "sei-cert-cpp:mem57-cpp",
       "severity:MEDIUM"
     ],
     "cert-msc24-c": [
@@ -1024,22 +1027,24 @@
     ],
     "cert-msc50-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc50-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc30-c",
-      "sei-cert:msc50-cpp",
+      "sei-cert-c:msc30-c",
+      "sei-cert-cpp:msc50-cpp",
       "severity:LOW"
     ],
     "cert-msc51-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/msc51-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc32-c",
-      "sei-cert:msc51-cpp",
+      "sei-cert-c:msc32-c",
+      "sei-cert-cpp:msc51-cpp",
       "severity:MEDIUM"
     ],
     "cert-msc54-cpp": [
@@ -1048,12 +1053,12 @@
     ],
     "cert-oop11-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop11-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop11-cpp",
+      "sei-cert-cpp:oop11-cpp",
       "severity:MEDIUM"
     ],
     "cert-oop54-cpp": [
@@ -1062,21 +1067,21 @@
     ],
     "cert-oop57-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop57-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop57-cpp",
+      "sei-cert-cpp:oop57-cpp",
       "severity:HIGH"
     ],
     "cert-oop58-cpp": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cert/oop58-cpp.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop58-cpp",
+      "sei-cert-cpp:oop58-cpp",
       "severity:MEDIUM"
     ],
     "cert-pos44-c": [
@@ -1257,12 +1262,12 @@
     ],
     "clang-diagnostic-array-bounds-pointer-arithmetic": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#warray-bounds-pointer-arithmetic",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:arr39-c",
+      "sei-cert-c:arr39-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-array-parameter": [
@@ -1844,13 +1849,13 @@
     ],
     "clang-diagnostic-conditional-uninitialized": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wconditional-uninitialized",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-config-macros": [
@@ -1935,10 +1940,10 @@
     ],
     "clang-diagnostic-dangling": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdangling",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:mem50-cpp",
+      "sei-cert-cpp:mem50-cpp",
       "severity:HIGH"
     ],
     "clang-diagnostic-dangling-else": [
@@ -1994,43 +1999,43 @@
     ],
     "clang-diagnostic-delete-abstract-non-virtual-dtor": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-abstract-non-virtual-dtor",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop52-cpp",
+      "sei-cert-cpp:oop52-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-delete-incomplete": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-incomplete",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp57-cpp",
+      "sei-cert-cpp:exp57-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-delete-non-abstract-non-virtual-dtor": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-abstract-non-virtual-dtor",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop52-cpp",
+      "sei-cert-cpp:oop52-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-delete-non-virtual-dtor": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdelete-non-virtual-dtor",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop52-cpp",
+      "sei-cert-cpp:oop52-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-delimited-escape-sequence-extension": [
@@ -2256,12 +2261,12 @@
     ],
     "clang-diagnostic-double-promotion": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdouble-promotion",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:flp34-c",
+      "sei-cert-c:flp34-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-dtor-name": [
@@ -2298,10 +2303,10 @@
     ],
     "clang-diagnostic-dynamic-class-memaccess": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wdynamic-class-memaccess",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:security",
-      "sei-cert:exp62-cpp",
-      "sei-cert:oop57-cpp",
+      "sei-cert-cpp:exp62-cpp",
+      "sei-cert-cpp:oop57-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-dynamic-exception-spec": [
@@ -2326,12 +2331,12 @@
     ],
     "clang-diagnostic-embedded-directive": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wembedded-directive",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pre32-c",
+      "sei-cert-c:pre32-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-empty-body": [
@@ -2401,13 +2406,13 @@
     ],
     "clang-diagnostic-exceptions": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wexceptions",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err53-cpp",
-      "sei-cert:err54-cpp",
+      "sei-cert-cpp:err53-cpp",
+      "sei-cert-cpp:err54-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-excess-initializers": [
@@ -2507,13 +2512,13 @@
     ],
     "clang-diagnostic-float-conversion": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wfloat-conversion",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:flp32-c",
-      "sei-cert:flp34-c",
+      "sei-cert-c:flp32-c",
+      "sei-cert-c:flp34-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-float-equal": [
@@ -2537,13 +2542,13 @@
     ],
     "clang-diagnostic-format": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:fio47-c",
+      "sei-cert-c:fio47-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-format-extra-args": [
@@ -2573,29 +2578,29 @@
     ],
     "clang-diagnostic-format-nonliteral": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-nonliteral",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:fio30-c",
+      "sei-cert-c:fio30-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-format-overflow": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-overflow",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:mem35-c",
+      "sei-cert-c:mem35-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-format-overflow-non-kprintf": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-overflow-non-kprintf",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:mem35-c",
+      "sei-cert-c:mem35-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-format-pedantic": [
@@ -2604,12 +2609,12 @@
     ],
     "clang-diagnostic-format-security": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wformat-security",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:fio30-c",
+      "sei-cert-c:fio30-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-format-signedness": [
@@ -2928,12 +2933,12 @@
     ],
     "clang-diagnostic-implicit": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl31-c",
+      "sei-cert-c:dcl31-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-implicit-atomic-properties": [
@@ -2970,30 +2975,30 @@
     ],
     "clang-diagnostic-implicit-function-declaration": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-function-declaration",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl31-c",
+      "sei-cert-c:dcl31-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-implicit-int": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-int",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl31-c",
+      "sei-cert-c:dcl31-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-implicit-int-conversion": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wimplicit-int-conversion",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:int36-c",
+      "sei-cert-c:int36-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-implicit-int-float-conversion": [
@@ -3042,10 +3047,10 @@
     ],
     "clang-diagnostic-incompatible-function-pointer-types-strict": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-function-pointer-types-strict",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:exp37-c",
+      "sei-cert-c:exp37-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-incompatible-library-redeclaration": [
@@ -3062,22 +3067,22 @@
     ],
     "clang-diagnostic-incompatible-pointer-types": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-pointer-types",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp32-c",
+      "sei-cert-c:exp32-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-incompatible-pointer-types-discards-qualifiers": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wincompatible-pointer-types-discards-qualifiers",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp32-c",
+      "sei-cert-c:exp32-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-incompatible-property-type": [
@@ -3130,12 +3135,12 @@
     ],
     "clang-diagnostic-infinite-recursion": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winfinite-recursion",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl56-cpp",
+      "sei-cert-cpp:dcl56-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-init-self": [
@@ -3179,10 +3184,10 @@
     ],
     "clang-diagnostic-int-conversion": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wint-conversion",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:int36-c",
+      "sei-cert-c:int36-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-int-conversions": [
@@ -3242,9 +3247,9 @@
     ],
     "clang-diagnostic-invalid-noreturn": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#winvalid-noreturn",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:security",
-      "sei-cert:msc53-cpp",
+      "sei-cert-cpp:msc53-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-invalid-offsetof": [
@@ -3554,10 +3559,10 @@
     ],
     "clang-diagnostic-mismatched-new-delete": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wmismatched-new-delete",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:mem51-cpp",
+      "sei-cert-cpp:mem51-cpp",
       "severity:HIGH"
     ],
     "clang-diagnostic-mismatched-parameter-types": [
@@ -3795,12 +3800,12 @@
     ],
     "clang-diagnostic-non-virtual-dtor": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wnon-virtual-dtor",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop52-cpp",
+      "sei-cert-cpp:oop52-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-nonnull": [
@@ -4151,10 +4156,10 @@
     ],
     "clang-diagnostic-over-aligned": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wover-aligned",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:mem57-cpp",
+      "sei-cert-cpp:mem57-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-overflow": [
@@ -4217,13 +4222,13 @@
     ],
     "clang-diagnostic-parentheses": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wparentheses",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp45-c",
+      "sei-cert-c:exp45-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-parentheses-equality": [
@@ -4306,10 +4311,10 @@
     ],
     "clang-diagnostic-pointer-to-int-cast": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wpointer-to-int-cast",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:int36-c",
+      "sei-cert-c:int36-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-pointer-type-mismatch": [
@@ -4581,12 +4586,12 @@
     ],
     "clang-diagnostic-reorder-ctor": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreorder-ctor",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop53-cpp",
+      "sei-cert-cpp:oop53-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-reorder-init-list": [
@@ -4606,33 +4611,35 @@
     ],
     "clang-diagnostic-reserved-identifier": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-identifier",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl37-c",
-      "sei-cert:dcl51-cpp",
+      "sei-cert-c:dcl37-c",
+      "sei-cert-cpp:dcl51-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-reserved-macro-identifier": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-macro-identifier",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl37-c",
-      "sei-cert:dcl51-cpp",
+      "sei-cert-c:dcl37-c",
+      "sei-cert-cpp:dcl51-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-reserved-module-identifier": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreserved-module-identifier",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl51-cpp",
+      "sei-cert-cpp:dcl51-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-reserved-user-defined-literal": [
@@ -4657,14 +4664,15 @@
     ],
     "clang-diagnostic-return-stack-address": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-stack-address",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl30-c",
-      "sei-cert:exp54-cpp",
-      "sei-cert:exp61-cpp",
+      "sei-cert-c:dcl30-c",
+      "sei-cert-cpp:exp54-cpp",
+      "sei-cert-cpp:exp61-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-return-std-move": [
@@ -4676,14 +4684,15 @@
     ],
     "clang-diagnostic-return-type": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wreturn-type",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc37-c",
-      "sei-cert:msc52-cpp",
+      "sei-cert-c:msc37-c",
+      "sei-cert-cpp:msc52-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-return-type-c-linkage": [
@@ -4745,13 +4754,13 @@
     ],
     "clang-diagnostic-self-assign-overloaded": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wself-assign-overloaded",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop54-cpp",
+      "sei-cert-cpp:oop54-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-self-move": [
@@ -4906,14 +4915,14 @@
     ],
     "clang-diagnostic-sometimes-uninitialized": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wsometimes-uninitialized",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl41-c",
-      "sei-cert:exp33-c",
+      "sei-cert-c:dcl41-c",
+      "sei-cert-c:exp33-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-source-mgr": [
@@ -4950,12 +4959,12 @@
     ],
     "clang-diagnostic-static-in-inline": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wstatic-in-inline",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc40-c",
+      "sei-cert-c:msc40-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-static-inline-explicit-instantiation": [
@@ -5366,12 +5375,12 @@
     ],
     "clang-diagnostic-unevaluated-expression": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunevaluated-expression",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp44-cpp",
+      "sei-cert-cpp:exp44-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-unguarded-availability": [
@@ -5400,24 +5409,24 @@
     ],
     "clang-diagnostic-uninitialized": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "clang-diagnostic-uninitialized-const-reference": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuninitialized-const-reference",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "label-tool-skip:severity",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-unknown-argument": [
@@ -5516,12 +5525,12 @@
     ],
     "clang-diagnostic-unsequenced": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wunsequenced",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp30-cpp",
+      "sei-cert-cpp:exp30-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-unsupported-abi": [
@@ -5719,12 +5728,12 @@
     ],
     "clang-diagnostic-user-defined-literals": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wuser-defined-literals",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl51-cpp",
+      "sei-cert-cpp:dcl51-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-user-defined-warnings": [
@@ -5736,11 +5745,12 @@
     ],
     "clang-diagnostic-varargs": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wvarargs",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "label-tool-skip:severity",
       "profile:security",
-      "sei-cert:exp47-c",
-      "sei-cert:exp58-cpp",
+      "sei-cert-c:exp47-c",
+      "sei-cert-cpp:exp58-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-variadic-macros": [
@@ -5761,12 +5771,12 @@
     ],
     "clang-diagnostic-vexing-parse": [
       "doc_url:https://clang.llvm.org/docs/DiagnosticsReference.html#wvexing-parse",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl53-cpp",
+      "sei-cert-cpp:dcl53-cpp",
       "severity:MEDIUM"
     ],
     "clang-diagnostic-visibility": [
@@ -5842,19 +5852,19 @@
     ],
     "concurrency-mt-unsafe": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/concurrency/mt-unsafe.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:security",
-      "sei-cert:con33-c",
+      "sei-cert-c:con33-c",
       "severity:MEDIUM"
     ],
     "concurrency-thread-canceltype-asynchronous": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/concurrency/thread-canceltype-asynchronous.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos47-c",
+      "sei-cert-c:pos47-c",
       "severity:MEDIUM"
     ],
     "cppcoreguidelines-avoid-c-arrays": [
@@ -6000,11 +6010,11 @@
     ],
     "cppcoreguidelines-pro-type-const-cast": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/pro-type-const-cast.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp55-cpp",
+      "sei-cert-cpp:exp55-cpp",
       "severity:LOW"
     ],
     "cppcoreguidelines-pro-type-cstyle-cast": [
@@ -6046,11 +6056,11 @@
     ],
     "cppcoreguidelines-slicing": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/cppcoreguidelines/slicing.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop51-cpp",
+      "sei-cert-cpp:oop51-cpp",
       "severity:LOW"
     ],
     "cppcoreguidelines-special-member-functions": [
@@ -6109,12 +6119,12 @@
     ],
     "google-build-namespaces": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/google/build-namespaces.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl59-cpp",
+      "sei-cert-cpp:dcl59-cpp",
       "severity:MEDIUM"
     ],
     "google-build-using-namespace": [
@@ -6412,12 +6422,12 @@
     ],
     "misc-assert-side-effect": [
       "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-assert-side-effect.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pre31-c",
+      "sei-cert-c:pre31-c",
       "severity:MEDIUM"
     ],
     "misc-bool-pointer-implicit-conversion": [
@@ -6591,20 +6601,20 @@
     ],
     "misc-new-delete-overloads": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/new-delete-overloads.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl54-cpp",
+      "sei-cert-cpp:dcl54-cpp",
       "severity:MEDIUM"
     ],
     "misc-no-recursion": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/no-recursion.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
-      "sei-cert:dcl56-cpp",
+      "sei-cert-cpp:dcl56-cpp",
       "severity:LOW"
     ],
     "misc-noexcept-move-constructor": [
@@ -6614,12 +6624,12 @@
     ],
     "misc-non-copyable-objects": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/non-copyable-objects.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:fio38-c",
+      "sei-cert-c:fio38-c",
       "severity:HIGH"
     ],
     "misc-non-private-member-variables-in-classes": [
@@ -6643,12 +6653,12 @@
     ],
     "misc-sizeof-expression": [
       "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-sizeof-expression.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:arr39-c",
+      "sei-cert-c:arr39-c",
       "severity:HIGH"
     ],
     "misc-static-assert": [
@@ -6719,13 +6729,13 @@
     ],
     "misc-throw-by-value-catch-by-reference": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/misc/throw-by-value-catch-by-reference.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err09-cpp",
-      "sei-cert:err61-cpp",
+      "sei-cert-cpp:err09-cpp",
+      "sei-cert-cpp:err61-cpp",
       "severity:HIGH"
     ],
     "misc-unconventional-assign-operator": [
@@ -6773,12 +6783,12 @@
     ],
     "misc-use-after-move": [
       "doc_url:https://releases.llvm.org/6.0.1/tools/clang/tools/extra/docs/clang-tidy/checks/misc-use-after-move.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp63-cpp",
+      "sei-cert-cpp:exp63-cpp",
       "severity:HIGH"
     ],
     "misc-use-anonymous-namespace": [
@@ -7269,11 +7279,11 @@
     ],
     "readability-enum-initial-value": [
       "doc_url:https://clang.llvm.org/extra/clang-tidy/checks/readability/enum-initial-value.html",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:int09-c",
+      "sei-cert-c:int09-c",
       "severity:LOW"
     ],
     "readability-function-cognitive-complexity": [
diff --git a/config/labels/analyzers/clangsa.json b/config/labels/analyzers/clangsa.json
index 0741636245..99a7d67bc3 100644
--- a/config/labels/analyzers/clangsa.json
+++ b/config/labels/analyzers/clangsa.json
@@ -322,30 +322,31 @@
     ],
     "core.BitwiseShift": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-bitwiseshift-c-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:int32-c",
-      "sei-cert:int34-c",
+      "sei-cert-c:int32-c",
+      "sei-cert-c:int34-c",
       "severity:HIGH"
     ],
     "core.CallAndMessage": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-callandmessage-c-c-objc",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl41-c",
-      "sei-cert:exp30-c",
-      "sei-cert:exp33-c",
-      "sei-cert:exp34-c",
-      "sei-cert:exp39-c",
-      "sei-cert:exp50-cpp",
-      "sei-cert:exp53-cpp",
-      "sei-cert:exp54-cpp",
+      "sei-cert-c:dcl41-c",
+      "sei-cert-c:exp30-c",
+      "sei-cert-c:exp33-c",
+      "sei-cert-c:exp34-c",
+      "sei-cert-c:exp39-c",
+      "sei-cert-cpp:exp50-cpp",
+      "sei-cert-cpp:exp53-cpp",
+      "sei-cert-cpp:exp54-cpp",
       "severity:HIGH"
     ],
     "core.CallAndMessageModeling": [
@@ -355,12 +356,12 @@
     ],
     "core.DivideZero": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-dividezero-c-c-objc",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:int33-c",
+      "sei-cert-c:int33-c",
       "severity:HIGH"
     ],
     "core.DynamicTypePropagation": [
@@ -371,12 +372,12 @@
     ],
     "core.NonNullParamChecker": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-nonnullparamchecker-c-c-objc",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp34-c",
+      "sei-cert-c:exp34-c",
       "severity:HIGH"
     ],
     "core.NonnilStringConstants": [
@@ -386,55 +387,58 @@
     ],
     "core.NullDereference": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-nulldereference-c-c-objc",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp34-c",
+      "sei-cert-c:exp34-c",
       "severity:HIGH"
     ],
     "core.StackAddrEscapeBase": [
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl30-c",
-      "sei-cert:exp54-cpp",
-      "sei-cert:exp61-cpp"
+      "sei-cert-c:dcl30-c",
+      "sei-cert-cpp:exp54-cpp",
+      "sei-cert-cpp:exp61-cpp"
     ],
     "core.StackAddressEscape": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-stackaddressescape-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:dcl30-c",
-      "sei-cert:exp54-cpp",
-      "sei-cert:exp61-cpp",
+      "sei-cert-c:dcl30-c",
+      "sei-cert-cpp:exp54-cpp",
+      "sei-cert-cpp:exp61-cpp",
       "severity:HIGH"
     ],
     "core.UndefinedBinaryOperatorResult": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-undefinedbinaryoperatorresult-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
-      "sei-cert:exp50-cpp",
+      "sei-cert-c:exp33-c",
+      "sei-cert-cpp:exp50-cpp",
       "severity:HIGH"
     ],
     "core.VLASize": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-vlasize-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:arr32-c",
+      "sei-cert-c:arr32-c",
       "severity:HIGH"
     ],
     "core.builtin.BuiltinFunctions": [
@@ -451,125 +455,125 @@
     ],
     "core.uninitialized.ArraySubscript": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-arraysubscript-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "core.uninitialized.Assign": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-assign-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "core.uninitialized.Branch": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-branch-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "core.uninitialized.CapturedBlockVariable": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-capturedblockvariable-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "core.uninitialized.NewArraySize": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-newarraysize-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp33-c",
+      "sei-cert-c:exp33-c",
       "severity:HIGH"
     ],
     "core.uninitialized.UndefReturn": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#core-uninitialized-undefreturn-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop53-cpp",
+      "sei-cert-cpp:oop53-cpp",
       "severity:HIGH"
     ],
     "cplusplus.ArrayDelete": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-arraydelete-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp51-cpp",
+      "sei-cert-cpp:exp51-cpp",
       "severity:HIGH"
     ],
     "cplusplus.InnerPointer": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-innerpointer-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem50-cpp",
-      "sei-cert:str52-cpp",
+      "sei-cert-cpp:mem50-cpp",
+      "sei-cert-cpp:str52-cpp",
       "severity:HIGH"
     ],
     "cplusplus.Move": [
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp63-cpp",
+      "sei-cert-cpp:exp63-cpp",
       "severity:HIGH"
     ],
     "cplusplus.NewDelete": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-newdelete-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp54-cpp",
-      "sei-cert:mem50-cpp",
-      "sei-cert:mem51-cpp",
-      "sei-cert:oop54-cpp",
+      "sei-cert-cpp:exp54-cpp",
+      "sei-cert-cpp:mem50-cpp",
+      "sei-cert-cpp:mem51-cpp",
+      "sei-cert-cpp:oop54-cpp",
       "severity:HIGH"
     ],
     "cplusplus.NewDeleteLeaks": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-newdeleteleaks-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem51-cpp",
+      "sei-cert-cpp:mem51-cpp",
       "severity:HIGH"
     ],
     "cplusplus.PlacementNew": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-placementnew-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem54-cpp",
+      "sei-cert-cpp:mem54-cpp",
       "severity:HIGH"
     ],
     "cplusplus.PureVirtualCall": [
@@ -580,12 +584,12 @@
     ],
     "cplusplus.SelfAssignment": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-selfassignment-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop54-cpp",
+      "sei-cert-cpp:oop54-cpp",
       "severity:MEDIUM"
     ],
     "cplusplus.SmartPtrModeling": [
@@ -595,12 +599,12 @@
     ],
     "cplusplus.StringChecker": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#cplusplus-stringchecker-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:str51-cpp",
+      "sei-cert-cpp:str51-cpp",
       "severity:HIGH"
     ],
     "cplusplus.VirtualCallModeling": [
@@ -610,12 +614,12 @@
     ],
     "deadcode.DeadStores": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#deadcode-deadstores-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:msc12-c",
+      "sei-cert-c:msc12-c",
       "severity:LOW"
     ],
     "debug.AnalysisOrder": [
@@ -709,11 +713,11 @@
     ],
     "optin.core.EnumCastOutOfRange": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-core-enumcastoutofrange-c-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem54-cpp",
+      "sei-cert-cpp:mem54-cpp",
       "severity:MEDIUM"
     ],
     "optin.cplusplus.UninitializedObject": [
@@ -725,12 +729,12 @@
     ],
     "optin.cplusplus.VirtualCall": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-cplusplus-virtualcall-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:oop50-cpp",
+      "sei-cert-cpp:oop50-cpp",
       "severity:MEDIUM"
     ],
     "optin.mpi.MPI-Checker": [
@@ -761,13 +765,13 @@
     ],
     "optin.portability.UnixAPI": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#optin-portability-unixapi",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:portability",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem30-c",
+      "sei-cert-c:mem30-c",
       "severity:MEDIUM"
     ],
     "optin.taint.GenericTaint": [
@@ -881,12 +885,12 @@
     ],
     "security.FloatLoopCounter": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-floatloopcounter-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:flp30-c",
+      "sei-cert-c:flp30-c",
       "severity:MEDIUM"
     ],
     "security.MmapWriteExec": [
@@ -899,43 +903,43 @@
     ],
     "security.PointerSub": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-pointersub-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:arr36-c",
+      "sei-cert-c:arr36-c",
       "severity:HIGH"
     ],
     "security.PutenvStackArray": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-putenvstackarray-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos34-c",
+      "sei-cert-c:pos34-c",
       "severity:HIGH"
     ],
     "security.SetgidSetuidOrder": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-setgidsetuidorder-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos36-c",
+      "sei-cert-c:pos36-c",
       "severity:MEDIUM"
     ],
     "security.cert.env.InvalidPtr": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-cert-env-invalidptr",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:env31-c",
-      "sei-cert:env34-c",
+      "sei-cert-c:env31-c",
+      "sei-cert-c:env34-c",
       "severity:MEDIUM"
     ],
     "security.insecureAPI.DeprecatedOrUnsafeBufferHandling": [
@@ -980,12 +984,12 @@
     ],
     "security.insecureAPI.gets": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-gets-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:str31-c",
+      "sei-cert-c:str31-c",
       "severity:MEDIUM"
     ],
     "security.insecureAPI.mkstemp": [
@@ -1011,30 +1015,30 @@
     ],
     "security.insecureAPI.strcpy": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-strcpy-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
-      "sei-cert:str31-c",
+      "sei-cert-c:str31-c",
       "severity:MEDIUM"
     ],
     "security.insecureAPI.vfork": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#security-insecureapi-vfork-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos33-c",
+      "sei-cert-c:pos33-c",
       "severity:MEDIUM"
     ],
     "unix.API": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-api-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp37-c",
+      "sei-cert-c:exp37-c",
       "severity:MEDIUM"
     ],
     "unix.Chroot": [
@@ -1050,87 +1054,87 @@
     ],
     "unix.Errno": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-errno-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:err30-c",
+      "sei-cert-c:err30-c",
       "severity:HIGH"
     ],
     "unix.Malloc": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-malloc-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem30-c",
-      "sei-cert:mem31-c",
-      "sei-cert:mem34-c",
-      "sei-cert:mem35-c",
-      "sei-cert:mem36-c",
+      "sei-cert-c:mem30-c",
+      "sei-cert-c:mem31-c",
+      "sei-cert-c:mem34-c",
+      "sei-cert-c:mem35-c",
+      "sei-cert-c:mem36-c",
       "severity:MEDIUM"
     ],
     "unix.MallocSizeof": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-mallocsizeof-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem35-c",
+      "sei-cert-c:mem35-c",
       "severity:MEDIUM"
     ],
     "unix.MismatchedDeallocator": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-mismatcheddeallocator-c-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-cpp",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:mem51-cpp",
+      "sei-cert-cpp:mem51-cpp",
       "severity:MEDIUM"
     ],
     "unix.StdCLibraryFunctions": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-stdclibraryfunctions-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:arr38-c",
-      "sei-cert:err33-c",
-      "sei-cert:pos52-c",
+      "sei-cert-c:arr38-c",
+      "sei-cert-c:err33-c",
+      "sei-cert-c:pos52-c",
       "severity:HIGH"
     ],
     "unix.Stream": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-stream-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:fio42-c",
+      "sei-cert-c:fio42-c",
       "severity:MEDIUM"
     ],
     "unix.Vfork": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-vfork-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:pos33-c",
+      "sei-cert-c:pos33-c",
       "severity:MEDIUM"
     ],
     "unix.cstring.BadSizeArg": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-cstring-badsizearg-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:str31-c",
+      "sei-cert-c:str31-c",
       "severity:MEDIUM"
     ],
     "unix.cstring.CStringModeling": [
@@ -1140,12 +1144,12 @@
     ],
     "unix.cstring.NullArg": [
       "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html#unix-cstring-nullarg-c",
-      "guideline:sei-cert",
+      "guideline:sei-cert-c",
       "profile:default",
       "profile:extreme",
       "profile:security",
       "profile:sensitive",
-      "sei-cert:exp34-c",
+      "sei-cert-c:exp34-c",
       "severity:HIGH"
     ],
     "valist.CopyToSelf": [
diff --git a/config/labels/descriptions.json b/config/labels/descriptions.json
index 5b62fbf509..9535d5bc47 100644
--- a/config/labels/descriptions.json
+++ b/config/labels/descriptions.json
@@ -15,7 +15,8 @@
     "UNSPECIFIED": "Checker severity is not specified for a checker."
   },
   "guideline": {
-    "sei-cert": "https://wiki.sei.cmu.edu/confluence/display/seccode",
+    "sei-cert-c": "https://wiki.sei.cmu.edu/confluence/display/seccode",
+    "sei-cert-cpp": "https://wiki.sei.cmu.edu/confluence/display/seccode",
     "misra-c": "https://www.misra.org.uk/"
   }
 }
\ No newline at end of file
diff --git a/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue b/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue
index 11bdd5d1ff..25e06afb0f 100644
--- a/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue
+++ b/web/server/vue-cli/src/components/Statistics/Guideline/GuidelineStatistics.vue
@@ -46,7 +46,7 @@
           icon="mdi-information"
           class="mt-2"
         >
-          In this statistics only the "Run / Tag Filter" 
+          In this statistics only the "Run / Tag Filter"
           and the "Unique reports" are effective.
         </v-alert>
 
@@ -54,7 +54,7 @@
           <v-row align="center">
             <v-col cols="3">
               <v-select
-                v-model="selectedGuidelineNames"
+                v-model="selectedGuidelineIndexes"
                 :items="guidelineOptions"
                 item-text="name"
                 label="Select guidelines"
@@ -90,7 +90,7 @@
             color="deep-orange"
             outlined
           >
-            The guideline statistics is not available 
+            The guideline statistics is not available
             for
             <span
               style="cursor: pointer; text-decoration: underline;"
@@ -160,10 +160,16 @@ export default {
   data() {
     // If there were more guideline types,
     // we could list the existing guidelines here.
-    const guidelineOptions = [ 
+    const guidelineOptions = [
       {
-        id: "sei-cert",
-        name: "SEI CERT Coding Standard"
+        id: "sei-cert-c",
+        name: "SEI CERT Coding Standard (C)",
+        value: 0
+      },
+      {
+        id: "sei-cert-cpp",
+        name: "SEI CERT Coding Standard (C++)",
+        value: 1
       }
     ];
 
@@ -178,7 +184,7 @@ export default {
       runs: null,
       runData: [],
       selectedCheckerName: null,
-      selectedGuidelineNames: [ guidelineOptions[0] ],
+      selectedGuidelineIndexes: [ 0, 1 ],
       showRuns: {
         enabled: false,
         disabled: false,
@@ -196,9 +202,9 @@ export default {
       ).includes(run.runId)).map(run => run.runName);
     },
 
-    selectedGuidelines() { 
-      return this.selectedGuidelineNames.map(guidelineName => new Guideline({
-        guidelineName: guidelineName.id
+    selectedGuidelines() {
+      return this.selectedGuidelineIndexes.map(idx => new Guideline({
+        guidelineName: this.guidelineOptions[idx].id
       }));
     }
   },
@@ -231,7 +237,7 @@ export default {
                       outstanding: stat[checkerId].outstanding.toNumber(),
                     };
                   })
-                  : (rule.checkers.length ? 
+                  : (rule.checkers.length ?
                     rule.checkers.map(checker => {
                       return {
                         name: checker.checkerName,
@@ -307,7 +313,7 @@ export default {
     async getRunData() {
       const limit = MAX_QUERY_SIZE;
       let offset = 0;
-      
+
       const filter = new RunFilter({
         ids: this.runIds
       });
@@ -334,7 +340,7 @@ export default {
         });
         runs.push(...limitedRuns);
       }
-       
+
       return runs;
     },
 
@@ -379,7 +385,7 @@ export default {
             return null;
           }
         }))).filter(element => element !== null);
-      
+
       this.runs = runs;
       this.loading = false;
     },
diff --git a/web/server/vue-cli/src/views/NewFeatures.vue b/web/server/vue-cli/src/views/NewFeatures.vue
index b53e6b4580..7b10bedcdc 100644
--- a/web/server/vue-cli/src/views/NewFeatures.vue
+++ b/web/server/vue-cli/src/views/NewFeatures.vue
@@ -1326,7 +1326,7 @@ analyzer:
           </new-feature-item>
 
           <new-feature-item>
-            <template v-slot:title>unused
+            <template v-slot:title>
               New report converter for Markdownlint results
             </template>
             The reports from Markdownlint can be converted and stored to the
diff --git a/web/tests/functional/report_viewer_api/test_get_run_results.py b/web/tests/functional/report_viewer_api/test_get_run_results.py
index 85c7d482c1..06364d7157 100644
--- a/web/tests/functional/report_viewer_api/test_get_run_results.py
+++ b/web/tests/functional/report_viewer_api/test_get_run_results.py
@@ -424,12 +424,12 @@ def test_get_checker_labels(self):
         div_zero_labels = set([
             "doc_url:https://clang.llvm.org/docs/analyzer/checkers.html"
             "#core-dividezero-c-c-objc",
-            "guideline:sei-cert",
+            "guideline:sei-cert-c",
             "profile:default",
             "profile:extreme",
             "profile:security",
             "profile:sensitive",
-            "sei-cert:int33-c",
+            "sei-cert-c:int33-c",
             "severity:HIGH"
         ])
 
@@ -455,14 +455,14 @@ def test_get_checker_labels(self):
         self.assertEqual(set(checker_labels[0]), div_zero_labels)
         self.assertEqual(set(checker_labels[1]), set())
 
-    def test_get_guidelime_rules(self):
-        sei_cert_gl = Guideline("sei-cert")
+    def test_get_guideline_rules(self):
+        sei_cert_gl = Guideline("sei-cert-cpp")
         guideline_rules = self._cc_client.getGuidelineRules([sei_cert_gl])
         self.assertNotEqual(len(guideline_rules), 0)
 
-        self.assertEqual(list(guideline_rules.keys())[0], "sei-cert")
+        self.assertEqual(list(guideline_rules.keys())[0], "sei-cert-cpp")
 
-        sei_cert_rules = guideline_rules["sei-cert"]
+        sei_cert_rules = guideline_rules["sei-cert-cpp"]
         sei_cert_rulenames = map(lambda r: r.ruleId, sei_cert_rules)
         self.assertIn("con54-cpp", sei_cert_rulenames)