Commit 70f24be
committed
CI: enforce UBSan strict on ASan+UBSan workflow after clean baseline
Follow-up to b9777c8 (the ASan+UBSan workflow). Run #1 of the new
job came back clean: zero distinct UBSan diagnostics across the
--help and --features smoke invocations.
https://github.com/libretro/RetroArch/actions/runs/25056073385
* .github/workflows/Linux-asan-ubsan.yml
- Flip UBSAN_OPTIONS=halt_on_error=0 to halt_on_error=1 in both
smoke steps. A future change that introduces signed-overflow /
alignment / shift-too-large UB along the option-parsing or
print paths will now fail the run instead of being silently
logged in a discovery summary.
- Add a parallel grep -q "runtime error:" check after each
timeout invocation so the failure is visible at exit code
level even if a future sanitizer release changes the default
abort semantics, mirroring the existing "AddressSanitizer:"
check.
- Drop the "Summarize UBSan baseline" step. Its job was to
surface diagnostics during the discovery phase; with strict
enforcement above it any non-zero count would have already
aborted the run, so the summary is dead weight that suggested
the workflow was still in soft-fail mode.
- Step name updates: "ASan strict, UBSan soft-fail" -> "ASan +
UBSan strict" on both smoke runs.
Honest scoping note unchanged from b9777c8: --help and --features
both exit(0) directly without going through the normal shutdown
path, so this enforces UBSan-cleanliness only for libc init / main
/ frontend bootstrap / option parsing / the print functions.
Audio resampling, color math, parsers, and full-lifecycle cleanup
still aren't covered. The follow-up step running with
--max-frames=N against a noop core (deferred from b9777c8) will
extend coverage, and that step's first run will start in soft-fail
mode the same way this one did.1 parent 60c7e39 commit 70f24be
1 file changed
Lines changed: 26 additions & 30 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
88 | | - | |
| 88 | + | |
89 | 89 | | |
90 | 90 | | |
91 | 91 | | |
92 | 92 | | |
93 | 93 | | |
94 | 94 | | |
95 | 95 | | |
96 | | - | |
97 | | - | |
98 | | - | |
99 | | - | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
100 | 104 | | |
101 | 105 | | |
102 | | - | |
| 106 | + | |
103 | 107 | | |
104 | 108 | | |
105 | 109 | | |
| |||
113 | 117 | | |
114 | 118 | | |
115 | 119 | | |
116 | | - | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
117 | 124 | | |
118 | 125 | | |
119 | 126 | | |
120 | 127 | | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
121 | 132 | | |
122 | 133 | | |
123 | | - | |
| 134 | + | |
124 | 135 | | |
125 | 136 | | |
126 | 137 | | |
| |||
130 | 141 | | |
131 | 142 | | |
132 | 143 | | |
133 | | - | |
| 144 | + | |
| 145 | + | |
134 | 146 | | |
135 | 147 | | |
136 | | - | |
| 148 | + | |
137 | 149 | | |
138 | 150 | | |
139 | 151 | | |
| |||
147 | 159 | | |
148 | 160 | | |
149 | 161 | | |
150 | | - | |
151 | | - | |
152 | | - | |
153 | | - | |
154 | | - | |
155 | | - | |
156 | | - | |
157 | | - | |
158 | | - | |
159 | | - | |
160 | | - | |
161 | | - | |
162 | | - | |
163 | | - | |
164 | | - | |
165 | | - | |
166 | | - | |
167 | | - | |
168 | | - | |
169 | | - | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
170 | 165 | | |
| 166 | + | |
0 commit comments