No its not the `gchar*` thats the problem, its that argc is `int` which is signed, but `sizeof` returns `size_t` which is unsigned.
Thats why its a stupid warning (or at least stupid to enable by default) because many system interfaces use `int` as a counter (like `argc`) and everybody knows they are never negative ... except the compiler, so it makes this stupid error.
just `(guint)(argc)` will probably work.