|
|
|
|
|
by throwaw3y
96 days ago
|
|
"Panic-free" labels are so difficult to ascribe without being misleading because temporal memory effects can cause panics. Pusher too much onto your stack because the function happened to be preceded by a ton of other stack allocations? Crash. Heap too full and malloc failed? Crash. These things can happen from user input, so labelling a function no_panic just because it doesn't do any unchecked indexing can dangerously mislead readers into thinking code can't crash when it can. |
|
Failable memory allocations are already needed for Rust-on-Linux, so that also has independent interest.