The size calculation is only using the shared size.
Then a static string of a potentially different size is being used.
if (F_status_is_error(*status)) return;
{
- f_array_length_t build_libraries_length = fake_build_parameter_library_link_path_s.used + data->path_build_libraries_shared.used;
+ f_array_length_t build_libraries_length = fake_build_parameter_library_link_path_s.used + (is_shared ? data->path_build_libraries_shared.used : data->path_build_libraries_static.used);
f_char_t build_libraries[build_libraries_length + 1];
build_libraries[build_libraries_length] = 0;