If you create a storage buffer but don't upload anything to it, and then try to draw with it, the program will crash. This is because the SDL_GPU buffer isn't actually created until you call Upload at least once. Fixes could either be to create the buffer immediately, or skip binding it if it hasn't been uploaded to. Ultimately just need to never pass SDL_GPU a nullptr.
This may also apply to Uniform Buffers.