The situation:
I used widget.setTheme() to set the widget theme to Android, to run on my iOS device. Using the opposite default theme works on Android devices and in the simulator, so I thought the same would apply the other way around. This is not the case. Upon inserting anything into a widget.newScrollView, all code execution immediately halts and produces no errors. (My experience was using it within a coroutine, so that may have something to do with it, but if that is true then there are even more problems)
Luckily, this wasn’t critical for me - I simply stopped using the theme. But it seems very strange for such a small bug to cause such severe problems.