If I know for sure I'm never going to need to do that then OK.
typedef struct foo foo;
and somewhere else
struct foo { … }
reply
typedef struct bla_s { ... } bla_t;
Using the same name also works just fine, since structs and type aliases live in different namespaces:
typedef struct bla_t { ... } bla_t;
struct _GtkLabel; typedef struct _GtkLabel GtkLabel; // Use GtkLabel* in declarations
typedef struct GtkLabel GtkLabel;
https://gitlab.gnome.org/GNOME/gtk/-/blob/main/gtk/gtklabel....
If I know for sure I'm never going to need to do that then OK.