You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
6. First version of MISRA C \+ CERT C Appendices [live](https://coding-guidelines.arewesafetycriticalyet.org/appendices/standards-matrices/index.html)
22
+
- Pete will now mine these appendices for creating issues for contributors
23
+
7. Liaison White Paper Solicitation (Alex)
24
24
8. Interest in the MISRA C++ mapping (mira / Pete)
25
-
- Updates on new things in the MISRA C++ \=\> Rust mapping
26
-
- In talks with MISRA folks still; but in practice the procedure outlined seemed reasonable to them
27
-
- Please register interest on [this Zulip thread](https://rust-lang.zulipchat.com/#narrow/channel/579369-safety-critical-consortium.2Fcoding-guidelines/topic/MISRA.20C.2B.2B.20Mapping.20Interest/with/584764785)
28
-
9. Review batches for [CERT C Rust Mapping](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336) (Pete)
29
-
- Let's split up again, to get some feedback on batch 2
30
-
-[428 \[CERT C Review Batch 2/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/428)
31
-
-**Group A**
32
-
- xx
33
-
-**Group B**
34
-
- xx
35
-
10. Round table
25
+
- Updates on new things in the MISRA C++ \=\> Rust mapping
26
+
- In talks with MISRA folks still; but in practice the procedure outlined seemed reasonable to them
27
+
- Please register interest on [this Zulip thread](https://rust-lang.zulipchat.com/#narrow/channel/579369-safety-critical-consortium.2Fcoding-guidelines/topic/MISRA.20C.2B.2B.20Mapping.20Interest/with/584764785)
28
+
9. Round table
36
29
37
30
## **Check-in area**
38
31
39
-
- xx
40
-
- xx
41
-
- xx
42
-
- xx
43
-
- xx
44
-
- xx
45
-
- xx
46
-
- xx
47
-
- xx
48
-
- xx
49
-
- xx
50
-
- xx
51
-
- xx
32
+
- Pete LeVasseur ➕
33
+
- Oreste Bernardi 🌞
34
+
- Markus Hosch 🤯
35
+
- Max Jacinto 📖
36
+
- Samuel Wright ☀️
37
+
- Mira Baumann
38
+
- Alex Celeste ☕
39
+
- Achim Kriso 🦆
52
40
53
41
**Notetaker:**
54
42
55
-
-xx
43
+
-Alex Celeste
56
44
57
45
For tips on how we take notes in the Safety-Critical Rust Consortium, please see the [Meeting Notetaker Role](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/docs/notetaker-role.md) doc.
58
46
@@ -66,11 +54,45 @@ For tips on how we take notes in the Safety-Critical Rust Consortium, please see
66
54
67
55
## **Tasks**
68
56
69
-
- xx
57
+
- Alex: create an Issue listing the rules we have identified as applicable and their starting partial coverage lints
58
+
- Sam: investigate lint ii (pointer as underscore)
59
+
- Pete: investigate lint iii (integer to pointer, general conversions)
60
+
- Pete: open an Issue for lint i (int as int)
61
+
- Alex: circulate the zeroth Whitepaper draft onto Zulip with ideas jotted down by Pete
62
+
- Pete: add a usage statement for copyrighted material to the shared drive and also to the end of the minutes template
70
63
71
64
## **Meeting Minutes**
72
65
73
-
- xx
66
+
- Previous minutes accepted with formatting fixes
67
+
- Still need to decide on a day for the SCRC room at RustConf
68
+
- Also need to arrange the online component
69
+
- Having had two expert sessions now the group is ready to pick out 2-3 Clippy lints to work on
70
+
- Reviewing the expression rules list: most are decidable, especially if type-oriented rather than value-oriented
71
+
1. No \`as\` with integers is extremely similar to existing lints (no blanket lint but a widening lint exists) e.g. \`[clippy::cast\_lossless](https://rust-lang.github.io/rust-clippy/master/index.html?search=cast_loss#cast_lossless)\`\- inexact match but demonstrates checking of \`as\`
72
+
2.\`as\`-pointer casts is also similar to existing lints e.g. \`[clippy::ptr\_as\_ptr](https://rust-lang.github.io/rust-clippy/master/index.html?search=underscore#as_pointer_underscore)\`, \`[clippy::as\_pointer\_underscore](https://rust-lang.github.io/rust-clippy/master/index.html?search=underscore#as_pointer_underscore)\`\- inexact match
73
+
3. Integer to pointer has some support as \`[integer-to-ptr-transmutes](https://doc.rust-lang.org/rustc/lints/listing/warn-by-default.html?highlight=int%20to%20pointer#integer-to-ptr-transmutes)\`, still only partial coverage (transmute only)
74
+
4. Shifting out of range and division by zero are not decidable, partial support in \`[arithmetic-overflow](https://doc.rust-lang.org/rustc/lints/listing/deny-by-default.html?highlight=shift#arithmetic-overflow)\`\- probably intent to split the shift rule into constant and dynamic versions for decidability as the more constrained case is still useful; the existing lint is focused on constant shift rhs values only; the general case of the rule needs to be changed to **undecidable**
75
+
1. Related lint in \`[clippy::arithmetic\_side\_effects](https://rust-lang.github.io/rust-clippy/master/?search=overflo#arithmetic_side_effects)\` which bans the native infix operators that have a risk of overflow behaviours
76
+
5. Integer to pointer conversions has two rules in the decidable and undecidable flavours; the decidable rule is partially covered by the lints above
77
+
- Is there a reason we are particularly interested in the underscore for this rule?
78
+
1. Converting to a \`dyn\` type is checked whereas converting between pointer types is (implicit) unsafe and unchecked
79
+
- The Appendices are live\! GH Issues still to be generated from these, which may be a lot
80
+
- Liaison White Paper Solicitation (Alex)
81
+
- Proposal paper on items of shared value to pool funding
82
+
1. For example: having the Guidelines completed; having Clippy lints written to enforce as many of the Guidelines as possible; having people with the Community dedicating time to that work; getting safety qualification for Clippy or other tools (bindgen etc); getting the guidance/documentation available to pursue qualification independently
83
+
2. All of these items should be hardware, OS, vendor generic, and aiming to be useful to all or any of the existing safety standards (auto, aero, etc)
84
+
3. Enlist the various topics from Rust Week into a draft document and then circulate on Zulip
85
+
- Identify users of guidelines
86
+
- Challenges in enforcing guidelines
87
+
- Vendor opportunities (tooling)
88
+
- Perspective of an assessor that has assessed Rust code
89
+
- Success stories of application of Clippy lints in safety-critical context
90
+
- On MISRA C++
91
+
- Pete is in contact with David and Andrew at MISRA w.r.t supply of MISRA materials; agreeable so long as usage/access is restricted in some fashion to members of the WG only (i.e. MISRA C and MISRA C++ will be made visible to individual members)
92
+
- Same statement of use needs to go on all the meeting notes
93
+
- Mira continues to make progress on working through the MISRA C++ rules
94
+
1. The preprocessor remains an unstarted topic
95
+
2. Questions for Doug on certain specific rules
74
96
75
97
## **Material**
76
98
@@ -82,4 +104,3 @@ Overview of [Safety-Critical Rust](https://rust-lang.github.io/rust-project-goal
82
104
- Register interest [here](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/SCRC.20.3C.3D.3E.20t-opsem.3A.20Normative.20Documentation.20for.20Sound.20.60unsafe.60/with/586198564) on Rust Zulip
83
105
- Soliciting those interested in [Establish a Spot for Safety-Critical Lints in Clippy](https://rust-lang.github.io/rust-project-goals/2026/safety-critical-lints-in-clippy.html) goal
84
106
- Register interest [here](https://rust-lang.zulipchat.com/#narrow/channel/445688-safety-critical-consortium/topic/Getting.20involved.20with.20Clippy.20for.20SCRC.20lints/with/583090116) on Rust Zulip
0 commit comments