Incorrect narrow error types
Some error types in the bindings are too narrow. For example
throws IOError in the bindings, while it could also throw e.g. a
DBusError with certain back-ends (GVfs). That most likely isn't the only case. The error types should only be narrowed down when that's actually the only possible error type that ever gets returned by that function.