Saturday, October 12, 2024

Show HN: SSO – Small String Optimization https://ift.tt/hmZdEPD

Show HN: SSO – Small String Optimization I wrote this just for fun when saw article about sso in Rust[1]. My string can store up to 23 (excluding null-terminator) 8-bit chars without calling allocator. Here I can mistake, but.. Curious fact: both - libstdc++[2] and libc++[3] - do access to union member without any check that it is active now. AFAIK, this is UB in C++. But I assume that they just rely on theirs compiler features. I tried to avoid this using `std::byte[]`. But I'm still sure that there are several UB's in my code :) [1] https://ift.tt/zMROFXH... [2] https://ift.tt/dEjUFfQ... [3] https://ift.tt/lV2dnjA... https://ift.tt/YJMbSIZ October 12, 2024 at 11:56PM

No comments:

Post a Comment

Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) https://ift.tt/5Af6h7W

Show HN: Rewriting Scratch 3.0 from scratch in Lua (browser-free native runtime) Built a native Scratch 3.0 runtime in Lua that runs .sb3 pr...