The missing subscription storage is properly reported in both 5.3.1 and 5.4.1.
What is different is the `NSObject` fix, 5.3.1 complains about it at runtime:
Could not cast value of type 'test.ConcreteAdapter' (0x55936587d158) to 'Foundation.NSObject' (0x7fb617a5fbc8).
But in 5.4.1 just nothing happens if the adapter does not inherit from NSObject. Actually you'd think the compiler would already complain in `addObserver` in both cases (i.e. why is the `object` on Linux `Any` if `NSObjectProtocol` is required).