[Glib docs](https://github.com/geany/geany/pull/2907) say: "While location has a volatile qualifier, this is a historical artifact and the pointer passed to it should not be volatile."
Here's glib maintainer asking not to use `volatile`: https://discourse.gnome.org/t/should-the-g-once-init-enter-argument-be-marke... (The link from his comment has moved to http://c.isvolatileusefulwiththreads.com/)