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
Copy file name to clipboardExpand all lines: subcommittee/coding-guidelines/meetings/2026-04-01/minutes.md
+98-22Lines changed: 98 additions & 22 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,41 +11,44 @@
11
11
## **Agenda**
12
12
13
13
1. Solicitation of notetaker
14
-
2. Acceptance of [Previous Meeting Minutes](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/subcommittee/coding-guidelines/meetings/2026-03-18/minutes.md)
14
+
2. Acceptance of [Previous Meeting Minutes from last instance](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/subcommittee/coding-guidelines/meetings/2026-03-25/minutes.md), [Previous Meeting Minutes from last Asia Pacific \+ Americas meeting](https://github.com/rustfoundation/safety-critical-rust-consortium/blob/main/subcommittee/coding-guidelines/meetings/2026-03-27/minutes.md)
15
15
3. Introduction of new members
16
-
4. Macros chapter rework (Alex)
17
-
5. Review batches for [CERT C \=\> Rust Mapping](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336) (David)
16
+
4. Overview of [Safety-Critical Rust](https://rust-lang.github.io/rust-project-goals/2026/roadmap-safety-critical-rust.html)\- Rust Project Goals Roadmap (Pete)
17
+
- 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
18
+
- Great way to get mentored and onboarded if interested in Clippy
19
+
5. Macros chapter rework (Alex)
20
+
6. Review batches for [CERT C \=\> Rust Mapping](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/336) (David)
18
21
-[\#427 \[CERT C Review Batch 1/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/427)
19
22
-[\#428 \[CERT C Review Batch 2/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/428)
20
23
-[\#429 \[CERT C Review Batch 3/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/429)
21
24
-[\#430 \[CERT C Review Batch 4/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/430)
22
25
-[\#431 \[CERT C Review Batch 5/5\] Review proposed Rust categorization](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/issues/431)
23
-
6. Coverage of MISRA C and CERT C in 2026 (Félix / Markus)
26
+
7. Coverage of MISRA C and CERT C in 2026 (Félix / Markus)
24
27
- MISRA C one has a [PR up](https://github.com/rustfoundation/safety-critical-rust-coding-guidelines/pull/432) from Markus
25
-
- Félix wanted the review batches done first IIRC; also not feeling well so we pause
26
-
7. Proposals and ideas for new rules (all)
27
-
8. Progress on ongoing tasks (all)
28
-
9. Round table
28
+
- Félix wanted the review batches done first IIRC; also not feeling well so we pause
29
+
8. Proposals and ideas for new rules (all)
30
+
9. Progress on ongoing tasks (all)
31
+
10. Round table
29
32
30
33
## **Check-in area**
31
34
32
35
**Please add your name, and an emoji that describes your day.**
33
36
34
-
*xx
35
-
*xx
36
-
*xx
37
-
*xx
38
-
*xx
39
-
*xx
40
-
*xx
41
-
*xx
42
-
*xx
43
-
*xx
44
-
*xx
37
+
*David Svoboda (-:
38
+
*Samuel Wright 😷
39
+
*Pete LeVaseur 🍵
40
+
*Douglas Deslauriers 🖌️
41
+
*Max Jacinto 🍕
42
+
*Markus Hosch 👽
43
+
*William Barsse
44
+
*Christof Petig 🚲
45
+
*Arshad Mahmood 🕺
46
+
*Oreste Bernardi🏥
47
+
*Alex Celeste 🍵
45
48
46
49
**Notetaker:**
47
50
48
-
*xx
51
+
*Alex Celeste \+ Pete
49
52
50
53
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.
51
54
@@ -59,11 +62,84 @@ For tips on how we take notes in the Safety-Critical Rust Consortium, please see
59
62
60
63
## **Tasks**
61
64
62
-
* xx
65
+
*\[todo\] Pete: post the invitation to participate in writing Clippy lints to Zulip
66
+
*\[todo\] request Felix’s opinion of the comments that have been added, when he is available and not before
67
+
*\[todo\] Pete to put out the list of available spaces for the Rust Week meeting; anyone interested in going, to contact Pete to claim one of them
63
68
64
69
## **Meeting Minutes**
65
70
66
-
* xx
71
+
* Safety-Critical Rust Roadmap \- brought under the purview of the Rust Project, four current goals listed but more can be added
72
+
* Place any new items into a sequence leading into 2027, 2028
73
+
* Opportunity for anyone wanting to get involved with the Project / interested in static analysis / interested in Clippy:
74
+
* Task to take Guidelines produced by the Subcommittee and turn them into actionable, configurable lints
75
+
* Reach out to Pete; room for 2-3 people to get hands-on mentoring \[a couple of volunteers express interest in the room\]
76
+
* Macros chapter cleanup
77
+
* Sitting there in “be provocative” and “force documentation of features” way
78
+
* Curious to see if there are directions folks would like to see it move in
79
+
* E.g. if interested in auditability
80
+
* Forbidding / subsetting today is suitable in a sense
81
+
* Some thoughts that in ISO 26262 ASIL D it’s probably fine to forbid macros
82
+
* Use generated macro code and run the same sorts of analysis on them as normal Rust code
83
+
* We could be more specific or be more broad
84
+
* Are we okay with “you shall not use macros” and encourage using the generated code instead?
85
+
* Kind of okay with this; could treat this more as a tool rather than a language construct
86
+
* Test of our feedback mechanism/exception writing process of the guidelines to start dialog with users
87
+
* Macros in C vs Rust
88
+
- with C you can get the exact code out of the preprocessor
89
+
- with Rust that’s not necessarily the case
90
+
- might need new compiler extension to test this correctly
91
+
* If using many macros, this could become onerous and painful
92
+
- feedback that one commercial tool does this check of whether the macro-generated code doesn’t change the meaning
93
+
- check that the code does the same thing before/after macro expansion
* What about projects where macros are used? Heavily?
97
+
* e.g. a project using mantra for traceability
98
+
* would this require deviation at each point of expansion?
99
+
- No, not necessarily; could be kind of a “blanket” deviation
100
+
* It would be up to the auditor whether or not they agree it would be justified to deviate once for all uses of that one specific macro
101
+
* Nightly compiler required for macro expansion
102
+
* Usage of standard library is kind of a separate concern, if using e.g. `println!(..)`
103
+
* Usage of tools
104
+
* How easy/hard it is to mitigate issues with tools
105
+
* How impactful any issue with tool
106
+
* Can derive Tool Confidence Level (TCL)
107
+
* MISRA has [“MISRA AC”](https://misra.org.uk/misra-autocode/) as a separate standard
108
+
*`fmt!()` and friends are a part of libcore; could be already a part of some newly safety-certified code coming up
109
+
* For ASIL D restricting usage of macros can make sense; for ASIL B it seems to be too restrictive
110
+
* Macros are important for variable number of arguments; not possible with functions currently
111
+
* Feedback from Eclipse S-CORE:
112
+
* If inspecting macro output itself doesn’t work this is a challenge
113
+
* Different levels of ASIL have different rules; differences between e.g. ASIL B, D
114
+
* Some issues with this in practice if the coding guidelines are not explicit
115
+
* required is fine so long as project-wide justifications for Deviations are provided: in practice this is accepted by ASIL-D
116
+
* Summary of section: distinction between writing and expanding macros
117
+
* Required axis for writing macros, esp proc
118
+
* Required axis for using macros, with the possibility of Deviation at either an expansion site or by macro name
119
+
* Safety level \- too restrictive for the lower (e.g. ASIL A, B) safety levels to ban them all but this will test our ability to follow up
120
+
- Want the ability to tag guidelines as relevant to specific safety level user profiles
121
+
- Onerous for more idiomatic uses of the language and its direction of evolution
122
+
* Specific exceptions can be directly integrated into the guidelines for known named macros or builtins
123
+
* Review of the CERT C mapping
124
+
* Three out of the five “buckets” were examined last week; the table for each bucket has been reviewed by David with comments added where necessary (comments not added when they didn’t add anything but all mappings reviewed)
125
+
* For example, once comment added on the fifth bucket to add missing context on a specific rule (DCL37-C)
126
+
* Tables are not yet fully updated \- not many comments to address which might change them
127
+
* Additional feedback comments can be added offline
128
+
* Further actions pending Felix’s availability
129
+
* MISRA C 2023 has an Addendum with a mapping to CERT C; this content will also be imported to CERT C itself
130
+
* Some possible discrepancies on things like the definition of “decidable” (MISRA “decidable” approximately equals CERT “detectable”)
131
+
* Andrew Banks / David Ward declined permission to use the MISRA C rule headlines
132
+
* Possible arrangement to be made in future but not currently for use in public
133
+
* CERT C may have permission to use the titles (unclear where this came from)
134
+
* Rule numbers are always OK to use
135
+
* Hopefully not a huge problem in practice for readability
136
+
* MISRA C++ committee producing an equivalent to MISRA C ADD6
137
+
* Alex brought this to them; got the “okay” for it being signed off on by the C++ experts
138
+
* Someone from the Rust world would need to write it, they had not agreed on writing it as they are not Rust experts
139
+
* Another potentially useful tool for credibility with auditors etc.
140
+
* Free spaces in the Rust Week meeting (see todo)
141
+
* Some of the free spaces can be used for non-SCRC members who are already at Rust Week and may want to participate
0 commit comments