diff --git a/amendments.csv b/amendments.csv
index ce285a29ba..2d7254efec 100644
--- a/amendments.csv
+++ b/amendments.csv
@@ -9,41 +9,42 @@ c,MISRA-C-2012,Amendment3,RULE-10-4,Yes,Refine,No,Import
c,MISRA-C-2012,Amendment3,RULE-10-5,Yes,Expand,No,Easy
c,MISRA-C-2012,Amendment3,RULE-10-7,Yes,Refine,No,Import
c,MISRA-C-2012,Amendment3,RULE-10-8,Yes,Refine,No,Import
-c,MISRA-C-2012,Amendment3,RULE-21-11,Yes,Clarification,No,Import
+c,MISRA-C-2012,Amendment3,RULE-21-11,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Amendment3,RULE-21-12,Yes,Replace,No,Easy
c,MISRA-C-2012,Amendment4,RULE-11-3,Yes,Expand,No,Easy
c,MISRA-C-2012,Amendment4,RULE-11-8,Yes,Expand,No,Easy
c,MISRA-C-2012,Amendment4,RULE-13-2,Yes,Expand,No,Very Hard
c,MISRA-C-2012,Amendment4,RULE-18-6,Yes,Expand,No,Medium
c,MISRA-C-2012,Amendment4,RULE-18-8,Yes,Split,Yes,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-2-2,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-2-7,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-3-1,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-8-6,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-8-9,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-9-4,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-10-1,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-18-3,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-1-4,Yes,Replace,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-9-1,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-9-2,Yes,Refine,No,Import
-c,MISRA-C-2012,Corrigendum2,DIR-4-10,Yes,Clarification,No,Import
+c,MISRA-C-2012,Amendment4,RULE-2-2,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-2-7,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-3-1,Yes,Refine,No,Easy
+c,MISRA-C-2012,Amendment4,RULE-8-6,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-8-9,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-9-4,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-10-1,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-18-3,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Amendment4,RULE-1-4,Yes,Replace,No,Easy
+c,MISRA-C-2012,Amendment4,RULE-9-1,Yes,Refine,No,Easy
+c,MISRA-C-2012,Amendment4,RULE-9-2,Yes,Refine,No,Import
+c,MISRA-C-2012,Corrigendum2,DIR-4-10,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-7-4,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-8-2,Yes,Clarification,No,Import
+c,MISRA-C-2012,Corrigendum2,RULE-8-2,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-8-3,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-8-7,Yes,Clarification,No,Import
+c,MISRA-C-2012,Corrigendum2,RULE-8-7,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-10-1,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-10-2,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-10-3,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-11-3,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-11-6,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-13-2,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-13-6,Yes,Clarification,No,Import
+c,MISRA-C-2012,Corrigendum2,RULE-10-3,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-11-3,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-11-6,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-13-2,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-13-6,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-14-3,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-15-7,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-17-4,Yes,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-17-5,Yes,Clarification,No,Import
+c,MISRA-C-2012,Corrigendum2,RULE-15-7,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-17-4,Yes,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-17-5,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-18-1,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-20-14,No,Clarification,No,Import
-c,MISRA-C-2012,Corrigendum2,RULE-21-19,Yes,Clarification,No,Import
+c,MISRA-C-2012,Corrigendum2,RULE-20-14,No,Clarification,Yes,Import
+c,MISRA-C-2012,Corrigendum2,RULE-21-19,Yes,Clarification,Yes,Import
c,MISRA-C-2012,Corrigendum2,RULE-21-20,Yes,Refine,No,Easy
-c,MISRA-C-2012,Corrigendum2,RULE-22-9,Yes,Clarification,No,Import
\ No newline at end of file
+c,MISRA-C-2012,Corrigendum2,RULE-22-9,Yes,Clarification,Yes,Import
\ No newline at end of file
diff --git a/c/misra/src/rules/RULE-13-6/SizeofOperandWithSideEffect.ql b/c/misra/src/rules/RULE-13-6/SizeofOperandWithSideEffect.ql
index ec1551c2a6..759ad9b06a 100644
--- a/c/misra/src/rules/RULE-13-6/SizeofOperandWithSideEffect.ql
+++ b/c/misra/src/rules/RULE-13-6/SizeofOperandWithSideEffect.ql
@@ -9,7 +9,7 @@
* @tags external/misra/id/rule-13-6
* correctness
* external/misra/c/2012/third-edition-first-revision
- * external/misra/obligation/mandatory
+ * external/misra/obligation/required
*/
import cpp
diff --git a/c/misra/src/rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.ql b/c/misra/src/rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.ql
index 9673b39eb2..1a142ddb22 100644
--- a/c/misra/src/rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.ql
+++ b/c/misra/src/rules/RULE-17-5/ArrayFunctionArgumentNumberOfElements.ql
@@ -9,7 +9,7 @@
* @tags external/misra/id/rule-17-5
* correctness
* external/misra/c/2012/third-edition-first-revision
- * external/misra/obligation/advisory
+ * external/misra/obligation/required
*/
import cpp
diff --git a/c/misra/src/rules/RULE-21-11/StandardHeaderFileTgmathhUsed.ql b/c/misra/src/rules/RULE-21-11/StandardHeaderFileTgmathhUsed.ql
index 1c6b1bcd3d..50c4d48cb6 100644
--- a/c/misra/src/rules/RULE-21-11/StandardHeaderFileTgmathhUsed.ql
+++ b/c/misra/src/rules/RULE-21-11/StandardHeaderFileTgmathhUsed.ql
@@ -8,7 +8,7 @@
* @tags external/misra/id/rule-21-11
* correctness
* external/misra/c/2012/third-edition-first-revision
- * external/misra/obligation/required
+ * external/misra/obligation/advisory
*/
import cpp
diff --git a/cpp/common/src/codingstandards/cpp/exclusions/c/Banned.qll b/cpp/common/src/codingstandards/cpp/exclusions/c/Banned.qll
index 888e0863a3..f8a4e027bb 100644
--- a/cpp/common/src/codingstandards/cpp/exclusions/c/Banned.qll
+++ b/cpp/common/src/codingstandards/cpp/exclusions/c/Banned.qll
@@ -77,7 +77,7 @@ predicate isBannedQueryMetadata(Query query, string queryId, string ruleId, stri
// `@id` for the `standardHeaderFileTgmathhUsed` query
"c/misra/standard-header-file-tgmathh-used" and
ruleId = "RULE-21-11" and
- category = "required"
+ category = "advisory"
or
query =
// `Query` instance for the `exceptionHandlingFeaturesOfFenvhUsed` query
diff --git a/cpp/common/src/codingstandards/cpp/exclusions/c/Contracts6.qll b/cpp/common/src/codingstandards/cpp/exclusions/c/Contracts6.qll
index bd897bd79f..eed78ae507 100644
--- a/cpp/common/src/codingstandards/cpp/exclusions/c/Contracts6.qll
+++ b/cpp/common/src/codingstandards/cpp/exclusions/c/Contracts6.qll
@@ -25,7 +25,7 @@ predicate isContracts6QueryMetadata(Query query, string queryId, string ruleId,
// `@id` for the `arrayFunctionArgumentNumberOfElements` query
"c/misra/array-function-argument-number-of-elements" and
ruleId = "RULE-17-5" and
- category = "advisory"
+ category = "required"
or
query =
// `Query` instance for the `valueReturnedByAFunctionNotUsed` query
diff --git a/cpp/common/src/codingstandards/cpp/exclusions/c/SideEffects1.qll b/cpp/common/src/codingstandards/cpp/exclusions/c/SideEffects1.qll
index 24175cdfb7..ec8ab3eae8 100644
--- a/cpp/common/src/codingstandards/cpp/exclusions/c/SideEffects1.qll
+++ b/cpp/common/src/codingstandards/cpp/exclusions/c/SideEffects1.qll
@@ -104,7 +104,7 @@ predicate isSideEffects1QueryMetadata(Query query, string queryId, string ruleId
// `@id` for the `sizeofOperandWithSideEffect` query
"c/misra/sizeof-operand-with-side-effect" and
ruleId = "RULE-13-6" and
- category = "mandatory"
+ category = "required"
}
module SideEffects1Package {
diff --git a/cpp/common/test/deviations/invalid_deviations/coding-standards.xml b/cpp/common/test/deviations/invalid_deviations/coding-standards.xml
index 179227a13d..36dedead00 100644
--- a/cpp/common/test/deviations/invalid_deviations/coding-standards.xml
+++ b/cpp/common/test/deviations/invalid_deviations/coding-standards.xml
@@ -83,8 +83,8 @@
DP2
- RULE-13-6
- c/misra/sizeof-operand-with-side-effect
+ RULE-9-1
+ c/misra/object-with-auto-storage-duration-read-before-init
diff --git a/cpp/common/test/deviations/invalid_deviations/coding-standards.yml b/cpp/common/test/deviations/invalid_deviations/coding-standards.yml
index 7b12c7a8c2..1ce8cc718a 100644
--- a/cpp/common/test/deviations/invalid_deviations/coding-standards.yml
+++ b/cpp/common/test/deviations/invalid_deviations/coding-standards.yml
@@ -44,8 +44,8 @@ deviations:
permit-id: non-existing-permit
- permit-id: DP1
- permit-id: DP2
- - rule-id: RULE-13-6
- query-id: c/misra/sizeof-operand-with-side-effect
+ - rule-id: RULE-9-1
+ query-id: c/misra/object-with-auto-storage-duration-read-before-init
deviation-permits:
- permit-id: DP1
justification: foo bar baz
diff --git a/cpp/common/test/guideline_recategorizations/InvalidGuidelineRecategorizations.expected b/cpp/common/test/guideline_recategorizations/InvalidGuidelineRecategorizations.expected
index 971c70a9b6..d41c27f23a 100644
--- a/cpp/common/test/guideline_recategorizations/InvalidGuidelineRecategorizations.expected
+++ b/cpp/common/test/guideline_recategorizations/InvalidGuidelineRecategorizations.expected
@@ -1,5 +1,5 @@
| invalid/coding-standards.xml:5:7:8:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Invalid recategorization from 'required' to 'advisory'.' for rule A0-1-1. |
| invalid/coding-standards.xml:9:7:12:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Invalid recategorization from 'required' to 'disapplied'.' for rule A0-1-2. |
| invalid/coding-standards.xml:13:7:16:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Unknown rule id 'A1-4-3'.' for rule A1-4-3. |
-| invalid/coding-standards.xml:17:7:20:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Invalid recategorization from 'mandatory' to 'required'.' for rule RULE-13-6. |
+| invalid/coding-standards.xml:17:7:20:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Invalid recategorization from 'mandatory' to 'required'.' for rule RULE-9-1. |
| invalid/coding-standards.xml:21:7:24:43 | guideline-recategorizations-entry | guideline_recategorizations/invalid/coding-standards.xml: 'Invalid recategorization from 'rule' to 'required'.' for rule CON50-CPP. |
diff --git a/cpp/common/test/guideline_recategorizations/ListGuidelineRecategorizations.expected b/cpp/common/test/guideline_recategorizations/ListGuidelineRecategorizations.expected
index 0a8aeb9ba1..8e6a397620 100644
--- a/cpp/common/test/guideline_recategorizations/ListGuidelineRecategorizations.expected
+++ b/cpp/common/test/guideline_recategorizations/ListGuidelineRecategorizations.expected
@@ -5,4 +5,4 @@
| A10-4-1 | advisory | required |
| A11-0-1 | advisory | mandatory |
| CON50-CPP | rule | required |
-| RULE-13-6 | mandatory | required |
+| RULE-9-1 | mandatory | required |
diff --git a/cpp/common/test/guideline_recategorizations/invalid/coding-standards.xml b/cpp/common/test/guideline_recategorizations/invalid/coding-standards.xml
index d89f27050b..dfb7b6f13c 100644
--- a/cpp/common/test/guideline_recategorizations/invalid/coding-standards.xml
+++ b/cpp/common/test/guideline_recategorizations/invalid/coding-standards.xml
@@ -15,7 +15,7 @@
mandatory
- RULE-13-6
+ RULE-9-1
required
diff --git a/cpp/common/test/guideline_recategorizations/invalid/coding-standards.yml b/cpp/common/test/guideline_recategorizations/invalid/coding-standards.yml
index 89e562c05c..cd6abbf120 100644
--- a/cpp/common/test/guideline_recategorizations/invalid/coding-standards.yml
+++ b/cpp/common/test/guideline_recategorizations/invalid/coding-standards.yml
@@ -5,7 +5,7 @@ guideline-recategorizations:
category: "disapplied"
- rule-id: "A1-4-3"
category: "mandatory"
- - rule-id: "RULE-13-6"
+ - rule-id: "RULE-9-1"
category: "required"
- rule-id: "CON50-CPP"
category: "required"
diff --git a/rule_packages/c/Banned.json b/rule_packages/c/Banned.json
index d3825f8f30..4decbae6f2 100644
--- a/rule_packages/c/Banned.json
+++ b/rule_packages/c/Banned.json
@@ -104,7 +104,7 @@
},
"RULE-21-11": {
"properties": {
- "obligation": "required"
+ "obligation": "advisory"
},
"queries": [
{
diff --git a/rule_packages/c/Contracts6.json b/rule_packages/c/Contracts6.json
index 4dbae7e121..c46ef2f710 100644
--- a/rule_packages/c/Contracts6.json
+++ b/rule_packages/c/Contracts6.json
@@ -26,7 +26,7 @@
"MISRA-C-2012": {
"RULE-17-5": {
"properties": {
- "obligation": "advisory"
+ "obligation": "required"
},
"queries": [
{
diff --git a/rule_packages/c/Pointers1.json b/rule_packages/c/Pointers1.json
index 29b658d823..5f53d15702 100644
--- a/rule_packages/c/Pointers1.json
+++ b/rule_packages/c/Pointers1.json
@@ -244,7 +244,7 @@
]
}
],
- "title": "The relational operators >, >=, < and <= shall not be applied to objects of pointer type except where they point into the same object"
+ "title": "The relational operators >, >=, < and <= shall not be applied to expressions of pointer type except where they point into the same object"
},
"RULE-18-4": {
"properties": {
diff --git a/rule_packages/c/SideEffects1.json b/rule_packages/c/SideEffects1.json
index 9ecb79447d..9d91fce671 100644
--- a/rule_packages/c/SideEffects1.json
+++ b/rule_packages/c/SideEffects1.json
@@ -166,7 +166,7 @@
},
"RULE-13-6": {
"properties": {
- "obligation": "mandatory"
+ "obligation": "required"
},
"queries": [
{
diff --git a/scripts/reports/test-data/deviations/invalid/coding-standards.yml b/scripts/reports/test-data/deviations/invalid/coding-standards.yml
index 7b12c7a8c2..1ce8cc718a 100644
--- a/scripts/reports/test-data/deviations/invalid/coding-standards.yml
+++ b/scripts/reports/test-data/deviations/invalid/coding-standards.yml
@@ -44,8 +44,8 @@ deviations:
permit-id: non-existing-permit
- permit-id: DP1
- permit-id: DP2
- - rule-id: RULE-13-6
- query-id: c/misra/sizeof-operand-with-side-effect
+ - rule-id: RULE-9-1
+ query-id: c/misra/object-with-auto-storage-duration-read-before-init
deviation-permits:
- permit-id: DP1
justification: foo bar baz
diff --git a/scripts/reports/test-data/guideline-recategorizations/guideline_recategorizations_report.md.expected b/scripts/reports/test-data/guideline-recategorizations/guideline_recategorizations_report.md.expected
index 54fb25ae83..425eba1bc3 100644
--- a/scripts/reports/test-data/guideline-recategorizations/guideline_recategorizations_report.md.expected
+++ b/scripts/reports/test-data/guideline-recategorizations/guideline_recategorizations_report.md.expected
@@ -13,7 +13,7 @@
| A0-1-1 | required | advisory |
| A0-1-1 | required | mandatory |
| A0-1-2 | required | disapplied |
-| RULE-13-6 | mandatory | required |
+| RULE-9-1 | mandatory | required |
| CON50-CPP | rule | required |
| A0-1-6 | advisory | disapplied |
| A10-4-1 | advisory | required |
@@ -25,5 +25,5 @@
| invalid/coding-standards.xml:5:7:8:43 | 'Invalid recategorization from 'required' to 'advisory'.' for rule A0-1-1. |
| invalid/coding-standards.xml:9:7:12:43 | 'Invalid recategorization from 'required' to 'disapplied'.' for rule A0-1-2. |
| invalid/coding-standards.xml:13:7:16:43 | 'Unknown rule id 'A1-4-3'.' for rule A1-4-3. |
-| invalid/coding-standards.xml:17:7:20:43 | 'Invalid recategorization from 'mandatory' to 'required'.' for rule RULE-13-6. |
+| invalid/coding-standards.xml:17:7:20:43 | 'Invalid recategorization from 'mandatory' to 'required'.' for rule RULE-9-1. |
| invalid/coding-standards.xml:21:7:24:43 | 'Invalid recategorization from 'rule' to 'required'.' for rule CON50-CPP. |
diff --git a/scripts/reports/test-data/guideline-recategorizations/invalid/coding-standards.yml b/scripts/reports/test-data/guideline-recategorizations/invalid/coding-standards.yml
index 89e562c05c..cd6abbf120 100644
--- a/scripts/reports/test-data/guideline-recategorizations/invalid/coding-standards.yml
+++ b/scripts/reports/test-data/guideline-recategorizations/invalid/coding-standards.yml
@@ -5,7 +5,7 @@ guideline-recategorizations:
category: "disapplied"
- rule-id: "A1-4-3"
category: "mandatory"
- - rule-id: "RULE-13-6"
+ - rule-id: "RULE-9-1"
category: "required"
- rule-id: "CON50-CPP"
category: "required"