serenity/Userland
Daniel Bertalan b9f30c6f2a Everywhere: Fix some alignment issues
When creating uninitialized storage for variables, we need to make sure
that the alignment is correct. Fixes a KUBSAN failure when running
kernels compiled with Clang.

In `Syscalls/socket.cpp`, we can simply use local variables, as
`sockaddr_un` is a POD type.

Along with moving the `alignas` specifier to the correct member,
`AK::Optional`'s internal buffer has been made non-zeroed by default.
GCC emitted bogus uninitialized memory access warnings, so we now use
`__builtin_launder` to tell the compiler that we know what we are doing.
This might disable some optimizations, but judging by how GCC failed to
notice that the memory's initialization is dependent on `m_has_value`,
I'm not sure that's a bad thing.
2021-07-03 01:56:31 +04:30
..
Applets Everywhere: Add component declarations 2021-06-17 11:03:51 +02:00
Applications AK+Everywhere: Remove StringView::find_{first,last}_of(char) methods 2021-07-02 21:54:21 +02:00
Demos Everywhere: Add component declarations 2021-06-17 11:03:51 +02:00
DevTools AK: Implement String::find_any_of() and StringView::find_any_of() 2021-07-02 21:54:21 +02:00
DynamicLoader DynamicLoader: Use string view literal to remove a allocation on startup 2021-07-02 10:51:20 +04:30
Games Games: Add Spider 2021-06-24 10:32:53 +02:00
Libraries Everywhere: Fix some alignment issues 2021-07-03 01:56:31 +04:30
Services AK+Everywhere: Remove StringView::find_{first,last}_of(char) methods 2021-07-02 21:54:21 +02:00
Shell AK: Remove the LexicalPath::is_valid() API 2021-06-30 11:13:54 +02:00
Utilities AK+Everywhere: Remove StringView::find_{first,last}_of(char) methods 2021-07-02 21:54:21 +02:00
CMakeLists.txt Tests: Establish root Tests directory, move Userland/Tests there 2021-05-06 17:54:28 +02:00