diff --git a/ChangeLog.md b/ChangeLog.md
--- a/ChangeLog.md
+++ b/ChangeLog.md
@@ -1,3 +1,7 @@
+### 4.0.3
+
++ Fix some introspection data involving GtkTreeIters.
+
 ### 4.0.2
 
 + Upgrade to haskell-gi-base-0.24
diff --git a/Gtk.overrides b/Gtk.overrides
--- a/Gtk.overrides
+++ b/Gtk.overrides
@@ -5,6 +5,26 @@
 set-attr Gtk/TreeModelFilterModifyFunc/@parameters/value direction in
 set-attr Gtk/TreeModelFilterModifyFunc/@parameters/value caller-allocates 0
 
+# The introspection annotation marks the parameters as
+# (inout transfer=full), but it is just a pointer to a GtkTreeIter.
+set-attr Gtk/TreeStore/remove/@parameters/iter direction in
+set-attr Gtk/TreeStore/remove/@parameters/iter transfer-ownership none
+
+# The introspection annotation marks the parameters as
+# (inout transfer=full), but it is just a pointer to a GtkTreeIter.
+set-attr Gtk/TreeModel/iter_next/@parameters/iter direction in
+set-attr Gtk/TreeModel/iter_next/@parameters/iter transfer-ownership none
+
+# The introspection annotation marks the parameters as
+# (inout transfer=full), but it is just a pointer to a GtkTreeIter.
+set-attr Gtk/TreeModel/iter_previous/@parameters/iter direction in
+set-attr Gtk/TreeModel/iter_previous/@parameters/iter transfer-ownership none
+
+# The introspection annotation marks the parameters as
+# (out caller-allocates), but it is just a pointer to a GtkTreeIter.
+set-attr Gtk/TreeModel/iter_nth_child/@parameters/iter direction in
+set-attr Gtk/TreeModel/iter_nth_child/@parameters/iter caller-allocates 0
+
 # It is useful to expose these class structs when deriving new types
 set-attr Gtk/WidgetClass haskell-gi-force-visible 1
 set-attr Gtk/ContainerClass haskell-gi-force-visible 1
diff --git a/README.md b/README.md
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # Documentation
 Autogenerated documentation for this package can be found at
 
-[https://hackage.haskell.org/package/gi-gtk-4.0.2/docs/GI-Gtk.html](https://hackage.haskell.org/package/gi-gtk-4.0.2/docs/GI-Gtk.html)
+[https://hackage.haskell.org/package/gi-gtk-4.0.3/docs/GI-Gtk.html](https://hackage.haskell.org/package/gi-gtk-4.0.3/docs/GI-Gtk.html)
 
 For general documentation on using [haskell-gi](https://github.com/haskell-gi/haskell-gi) based bindings, see [the project page](https://github.com/haskell-gi/haskell-gi) or [the Wiki](https://github.com/haskell-gi/haskell-gi/wiki).
diff --git a/gi-gtk.cabal b/gi-gtk.cabal
--- a/gi-gtk.cabal
+++ b/gi-gtk.cabal
@@ -1,5 +1,5 @@
 name:                 gi-gtk
-version:              4.0.2
+version:              4.0.3
 synopsis:             Gtk bindings
 description:          Bindings for Gtk, autogenerated by haskell-gi.
 homepage:             https://github.com/haskell-gi/haskell-gi
@@ -16,7 +16,7 @@
 custom-setup
       setup-depends: base >= 4.9 && < 5,
                      Cabal >= 1.24,
-                     haskell-gi >= 0.24 && < 0.25,
+                     haskell-gi >= 0.24.1 && < 0.25,
                      gi-cairo == 1.0.*,
                      gi-pango == 1.0.*,
                      gi-gio == 2.0.*,
@@ -37,7 +37,7 @@
       pkgconfig-depends: gtk4
       build-depends: base >= 4.9 && <5,
                      haskell-gi-base >= 0.24 && < 0.25,
-                     haskell-gi >= 0.24.0 && < 0.25,
+                     haskell-gi >= 0.24.1 && < 0.25,
                      haskell-gi-overloading < 1.1,
                      gi-cairo == 1.0.*,
                      gi-pango == 1.0.*,
