2.0.0: `-Wformat-security` warnings
I'm passing to CFLAGS -Werror=format-security
.
With that option build fauils:
make[2]: Entering directory '/home/tkloczko/rpmbuild/BUILD/gingerblue-2.0.0/src'
/usr/bin/gcc -DHAVE_CONFIG_H -I. -I.. -I/usr/include/champlain-0.12 -I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/harfbuzz -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/atk-1.0 -I/usr/include/clutter-gtk-1.0 -I/usr/include/clutter-1.0 -I/usr/include/cogl -I/usr/include/libdrm -I/usr/include/json-glib-1.0 -I/usr/include/freetype2 -pthread -I/usr/include/libgeoclue-2.0 -I/usr/include/gio-unix-2.0 -I/usr/include/geocode-glib-1.0 -I/usr/include/gstreamer-1.0 -I/usr/include/libxml2 -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -Os -c -o gingerblue-gingerblue-main.o `test -f 'gingerblue-main.c' || echo './'`gingerblue-main.c
In file included from /usr/include/champlain-0.12/champlain/champlain-map-source.h:27,
from /usr/include/champlain-0.12/champlain/champlain-view.h:29,
from /usr/include/champlain-0.12/champlain/champlain.h:41,
from gingerblue-main.c:20:
/usr/include/champlain-0.12/champlain/champlain-tile.h:107:1: warning: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
107 | const GTimeVal *champlain_tile_get_modified_time (ChamplainTile *self);
| ^~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/glib/gi18n.h:21,
from gingerblue-main.c:13:
/usr/include/glib-2.0/glib/gtypes.h:547:8: note: declared here
547 | struct _GTimeVal
| ^~~~~~~~~
In file included from /usr/include/champlain-0.12/champlain/champlain-map-source.h:27,
from /usr/include/champlain-0.12/champlain/champlain-view.h:29,
from /usr/include/champlain-0.12/champlain/champlain.h:41,
from gingerblue-main.c:20:
/usr/include/champlain-0.12/champlain/champlain-tile.h:126:5: warning: ‘GTimeVal’ is deprecated: Use 'GDateTime' instead [-Wdeprecated-declarations]
126 | const GTimeVal *time);
| ^~~~~
In file included from /usr/include/glib-2.0/glib/galloca.h:32,
from /usr/include/glib-2.0/glib.h:30,
from /usr/include/glib-2.0/glib/gi18n.h:21,
from gingerblue-main.c:13:
/usr/include/glib-2.0/glib/gtypes.h:547:8: note: declared here
547 | struct _GTimeVal
| ^~~~~~~~~
gingerblue-main.c: In function ‘gb_assistant_button_clicked’:
gingerblue-main.c:141:58: warning: passing argument 3 of ‘gst_vorbis_tag_add’ from incompatible pointer type [-Wincompatible-pointer-types]
141 | gst_vorbis_tag_add (tag_list, GST_TAG_DATE_TIME, datestamp);
| ^~~~~~~~~
| |
| GDateTime * {aka struct _GDateTime *}
In file included from gingerblue-main.c:16:
/usr/include/gstreamer-1.0/gst/tag/tag.h:475:89: note: expected ‘const gchar *’ {aka ‘const char *’} but argument is of type ‘GDateTime *’ {aka ‘struct _GDateTime *’}
475 | const gchar * value);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~
gingerblue-main.c:142:58: warning: passing argument 3 of ‘gst_vorbis_tag_add’ from incompatible pointer type [-Wincompatible-pointer-types]
142 | gst_vorbis_tag_add (tag_list, GST_TAG_DATE_TIME, datestamp);
| ^~~~~~~~~
| |
| GDateTime * {aka struct _GDateTime *}
In file included from gingerblue-main.c:16:
/usr/include/gstreamer-1.0/gst/tag/tag.h:475:89: note: expected ‘const gchar *’ {aka ‘const char *’} but argument is of type ‘GDateTime *’ {aka ‘struct _GDateTime *’}
475 | const gchar * value);
| ~~~~~~~~~~~~~~~~~~~~~~~^~~~~
gingerblue-main.c:90:28: warning: unused variable ‘factory’ [-Wunused-variable]
90 | GstElementFactory *factory;
| ^~~~~~~
gingerblue-main.c:88:16: warning: variable ‘filename’ set but not used [-Wunused-but-set-variable]
88 | gchar *filename = NULL;
| ^~~~~~~~
gingerblue-main.c: In function ‘gb_assistant_apply’:
gingerblue-main.c:205:73: warning: passing argument 2 of ‘main_config’ from incompatible pointer type [-Wincompatible-pointer-types]
205 | gingerblue_config = main_config (GTK_WIDGET(gingerblue_window), gtk_entry_get_text(GTK_ENTRY(studio_entry)));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| |
| const gchar * {aka const char *}
In file included from gingerblue-main.c:25:
gingerblue-config.h:4:54: note: expected ‘void **’ but argument is of type ‘const gchar *’ {aka ‘const char *’}
4 | GtkWidget *main_config (GtkWidget *widget, gpointer *location_data);
| ~~~~~~~~~~^~~~~~~~~~~~~
gingerblue-main.c:205:27: warning: assignment to ‘GingerblueData *’ {aka ‘struct _GingerblueData *’} from incompatible pointer type ‘GtkWidget *’ {aka ‘struct _GtkWidget *’} [-Wincompatible-pointer-types]
205 | gingerblue_config = main_config (GTK_WIDGET(gingerblue_window), gtk_entry_get_text(GTK_ENTRY(studio_entry)));
| ^
gingerblue-main.c:206:27: warning: assignment to ‘GtkWindow *’ {aka ‘struct _GtkWindow *’} from incompatible pointer type ‘GtkWidget *’ {aka ‘struct _GtkWidget *’} [-Wincompatible-pointer-types]
206 | gingerblue_window = gingerblue_main_loop (gingerblue_config);
| ^
gingerblue-main.c:207:30: warning: passing argument 1 of ‘gtk_widget_show_all’ from incompatible pointer type [-Wincompatible-pointer-types]
207 | gtk_widget_show_all (gingerblue_window);
| ^~~~~~~~~~~~~~~~~
| |
| GtkWindow * {aka struct _GtkWindow *}
In file included from /usr/include/gtk-3.0/gtk/gtkapplication.h:27,
from /usr/include/gtk-3.0/gtk/gtkwindow.h:33,
from /usr/include/gtk-3.0/gtk/gtkdialog.h:32,
from /usr/include/gtk-3.0/gtk/gtkaboutdialog.h:30,
from /usr/include/gtk-3.0/gtk/gtk.h:31,
from gingerblue-main.c:17:
/usr/include/gtk-3.0/gtk/gtkwidget.h:632:65: note: expected ‘GtkWidget *’ {aka ‘struct _GtkWidget *’} but argument is of type ‘GtkWindow *’ {aka ‘struct _GtkWindow *’}
632 | void gtk_widget_show_all (GtkWidget *widget);
| ~~~~~~~~~~~~~~~~~~~~~^~~~~~
gingerblue-main.c: In function ‘main’:
gingerblue-main.c:282:23: warning: passing argument 1 of ‘g_strcmp0’ from incompatible pointer type [-Wincompatible-pointer-types]
282 | if (g_strcmp0(musician_entry, NULL)!=0) gtk_entry_set_text(GTK_ENTRY(musician_entry), g_get_real_name()); else gtk_entry_set_text(GTK_ENTRY(musician_entry), gtk_entry_get_text(GTK_ENTRY(musician_entry)));
| ^~~~~~~~~~~~~~
| |
| GtkWidget * {aka struct _GtkWidget *}
In file included from /usr/include/glib-2.0/glib.h:86,
from /usr/include/glib-2.0/glib/gi18n.h:21,
from gingerblue-main.c:13:
/usr/include/glib-2.0/glib/gtestutils.h:239:58: note: expected ‘const char *’ but argument is of type ‘GtkWidget *’ {aka ‘struct _GtkWidget *’}
239 | int g_strcmp0 (const char *str1,
| ~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:290:23: warning: passing argument 1 of ‘g_strcmp0’ from incompatible pointer type [-Wincompatible-pointer-types]
290 | if (g_strcmp0(song_entry, NULL)!=0) gtk_entry_set_text(GTK_ENTRY(song_entry), g_strconcat (_("Song_-_"), g_date_time_format_iso8601 (datestamp), NULL)); else gtk_entry_set_text(GTK_ENTRY(song_entry), gtk_entry_get_text(GTK_ENTRY(song_entry)));
| ^~~~~~~~~~
| |
| GtkWidget * {aka struct _GtkWidget *}
In file included from /usr/include/glib-2.0/glib.h:86,
from /usr/include/glib-2.0/glib/gi18n.h:21,
from gingerblue-main.c:13:
/usr/include/glib-2.0/glib/gtestutils.h:239:58: note: expected ‘const char *’ but argument is of type ‘GtkWidget *’ {aka ‘struct _GtkWidget *’}
239 | int g_strcmp0 (const char *str1,
| ~~~~~~~~~~~~~~~~^~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:28,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/gstreamer-1.0/gst/gstenumtypes.h:6,
from /usr/include/gstreamer-1.0/gst/gst.h:31,
from gingerblue-main.c:14:
gingerblue-main.c:354:26: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
354 | gtk_entry_get_text(GTK_ENTRY(studio_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:357:26: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
357 | gtk_entry_get_text(GTK_ENTRY(studio_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:368:26: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
368 | gtk_entry_get_text(GTK_ENTRY(album_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:387:26: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
387 | gtk_entry_get_text(GTK_ENTRY(stream_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:390:96: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
390 | g_signal_connect (GTK_BUTTON(stream_entry), "clicked", G_CALLBACK(gb_assistant_apply), gtk_entry_get_text(GTK_ENTRY(studio_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:393:26: warning: passing argument 4 of ‘g_signal_connect_data’ discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
393 | gtk_entry_get_text(GTK_ENTRY(stream_entry)));
/usr/include/glib-2.0/gobject/gsignal.h:508:73: note: in definition of macro ‘g_signal_connect’
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~
/usr/include/glib-2.0/gobject/gsignal.h:407:67: note: expected ‘gpointer’ {aka ‘void *’} but argument is of type ‘const gchar *’ {aka ‘const char *’}
407 | gpointer data,
| ~~~~~~~~~~~~~~~~~~~^~~~
gingerblue-main.c:529:9: error: format not a string literal and no format arguments [-Werror=format-security]
529 | fprintf(xspf, g_strconcat("<title>", gtk_entry_get_text(GTK_ENTRY(song_entry)), "</title>\n", NULL));
| ^~~~~~~
gingerblue-main.c:530:9: error: format not a string literal and no format arguments [-Werror=format-security]
530 | fprintf(xspf, g_strconcat("<location>file://", gtk_entry_get_text(GTK_ENTRY(computer_entry)), "/", gtk_entry_get_text(GTK_ENTRY(recording_entry)), "</location>\n", NULL));
| ^~~~~~~
gingerblue-main.c:266:16: warning: variable ‘filename’ set but not used [-Wunused-but-set-variable]
266 | gchar *filename = g_strconcat(g_get_user_special_dir(G_USER_DIRECTORY_MUSIC), "/",
| ^~~~~~~~
gingerblue-main.c:249:16: warning: unused variable ‘real_time’ [-Wunused-variable]
249 | gint64 real_time;
| ^~~~~~~~~
gingerblue-main.c:248:17: warning: unused variable ‘input_volume_value’ [-Wunused-variable]
248 | gdouble input_volume_value;
| ^~~~~~~~~~~~~~~~~~
gingerblue-main.c:247:20: warning: unused variable ‘input_volume’ [-Wunused-variable]
247 | GtkWidget *input_volume;
| ^~~~~~~~~~~~
gingerblue-main.c:246:20: warning: unused variable ‘input_stop’ [-Wunused-variable]
246 | GtkWidget *input_stop;
| ^~~~~~~~~~
gingerblue-main.c:245:20: warning: unused variable ‘input_break’ [-Wunused-variable]
245 | GtkWidget *input_break;
| ^~~~~~~~~~~
gingerblue-main.c:244:20: warning: unused variable ‘input_pause’ [-Wunused-variable]
244 | GtkWidget *input_pause;
| ^~~~~~~~~~~
gingerblue-main.c:243:20: warning: unused variable ‘input_record’ [-Wunused-variable]
243 | GtkWidget *input_record;
| ^~~~~~~~~~~~
gingerblue-main.c:242:20: warning: unused variable ‘toolbar’ [-Wunused-variable]
242 | GtkWidget *toolbar;
| ^~~~~~~
gingerblue-main.c:241:20: warning: unused variable ‘soundboard’ [-Wunused-variable]
241 | GtkWidget *soundboard;
| ^~~~~~~~~~
gingerblue-main.c:240:20: warning: unused variable ‘control’ [-Wunused-variable]
240 | GtkWidget *control;
| ^~~~~~~
gingerblue-main.c:239:20: warning: unused variable ‘mixer’ [-Wunused-variable]
239 | GtkWidget *mixer;
| ^~~~~
gingerblue-main.c:238:20: warning: unused variable ‘main_window’ [-Wunused-variable]
238 | GtkWidget *main_window;
| ^~~~~~~~~~~
gingerblue-main.c:237:20: warning: unused variable ‘input’ [-Wunused-variable]
237 | GtkWidget *input;
| ^~~~~
gingerblue-main.c:236:20: warning: unused variable ‘frame’ [-Wunused-variable]
236 | GtkWidget *frame;
| ^~~~~
gingerblue-main.c:235:20: warning: variable ‘window’ set but not used [-Wunused-but-set-variable]
235 | GtkWidget *window;
| ^~~~~~
gingerblue-main.c:234:20: warning: unused variable ‘recordpage’ [-Wunused-variable]
234 | GtkWidget *recordpage;
| ^~~~~~~~~~
gingerblue-main.c:233:20: warning: unused variable ‘instrumentpage’ [-Wunused-variable]
233 | GtkWidget *instrumentpage;
| ^~~~~~~~~~~~~~
gingerblue-main.c:232:20: warning: unused variable ‘songpage’ [-Wunused-variable]
232 | GtkWidget *songpage;
| ^~~~~~~~
gingerblue-main.c:231:20: warning: unused variable ‘musicianpage’ [-Wunused-variable]
231 | GtkWidget *musicianpage;
| ^~~~~~~~~~~~
gingerblue-main.c:229:20: warning: unused variable ‘gingerblue_main’ [-Wunused-variable]
229 | GtkWidget *gingerblue_main;
| ^~~~~~~~~~~~~~~
gingerblue-main.c:228:36: warning: unused variable ‘summary_entry’ [-Wunused-variable]
228 | GtkWidget *summary_label, *summary_entry;
| ^~~~~~~~~~~~~
gingerblue-main.c:228:20: warning: unused variable ‘summary_label’ [-Wunused-variable]
228 | GtkWidget *summary_label, *summary_entry;
| ^~~~~~~~~~~~~
gingerblue-main.c:227:56: warning: unused variable ‘hbox’ [-Wunused-variable]
227 | GtkWidget *entry, *label, *button, *progress, *hbox;
| ^~~~
gingerblue-main.c:227:45: warning: unused variable ‘progress’ [-Wunused-variable]
227 | GtkWidget *entry, *label, *button, *progress, *hbox;
| ^~~~~~~~
gingerblue-main.c:227:36: warning: unused variable ‘button’ [-Wunused-variable]
227 | GtkWidget *entry, *label, *button, *progress, *hbox;
| ^~~~~~
gingerblue-main.c:227:28: warning: unused variable ‘label’ [-Wunused-variable]
227 | GtkWidget *entry, *label, *button, *progress, *hbox;
| ^~~~~
gingerblue-main.c:226:25: warning: unused variable ‘default_recording_title’ [-Wunused-variable]
226 | GtkEntryBuffer *default_recording_title;
| ^~~~~~~~~~~~~~~~~~~~~~~
gingerblue-main.c:223:26: warning: unused variable ‘gingerblue_chord’ [-Wunused-variable]
223 | GingerblueChord *gingerblue_chord;
| ^~~~~~~~~~~~~~~~
gingerblue-main.c:222:25: warning: unused variable ‘data’ [-Wunused-variable]
222 | GingerblueData *data;
| ^~~~
In file included from gingerblue-main.c:28:
gingerblue-main.c: At top level:
gingerblue-record.h:19:17: warning: ‘message_cb’ declared ‘static’ but never defined [-Wunused-function]
19 | static gboolean message_cb (GstBus * bus, GstMessage * message, gpointer user_data);
| ^~~~~~~~~~
gingerblue-record.h:20:26: warning: ‘unlink_cb’ declared ‘static’ but never defined [-Wunused-function]
20 | static GstPadProbeReturn unlink_cb(GstPad *pad, GstPadProbeInfo *info, gpointer user_data);
| ^~~~~~~~~
In file included from gingerblue-main.c:30:
gingerblue-studio-location.h:7:15: warning: ‘print_location’ declared ‘static’ but never defined [-Wunused-function]
7 | static gchar *print_location (GClueSimple *simple, ChamplainView *view);
| ^~~~~~~~~~~~~~
gingerblue-studio-location.h:8:17: warning: ‘on_location_timeout’ declared ‘static’ but never defined [-Wunused-function]
8 | static gboolean on_location_timeout (gpointer user_data);
| ^~~~~~~~~~~~~~~~~~~
gingerblue-studio-location.h:9:13: warning: ‘on_client_active_notify’ declared ‘static’ but never defined [-Wunused-function]
9 | static void on_client_active_notify (GClueClient *client, GParamSpec *pspec, gpointer user_data);
| ^~~~~~~~~~~~~~~~~~~~~~~
gingerblue-studio-location.h:10:13: warning: ‘on_simple_ready’ declared ‘static’ but never defined [-Wunused-function]
10 | static void on_simple_ready (GObject *source_object, GAsyncResult *res, gpointer user_data);
| ^~~~~~~~~~~~~~~
gingerblue-main.c: In function ‘gb_assistant_cb’:
gingerblue-main.c:217:1: warning: control reaches end of non-void function [-Wreturn-type]
217 | }
| ^
At top level:
gingerblue-main.c:84:13: warning: ‘gb_assistant_button_clicked’ defined but not used [-Wunused-function]
84 | static void gb_assistant_button_clicked(GtkButton * button,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
gingerblue-main.c:78:13: warning: ‘gb_assistant_button_toggled’ defined but not used [-Wunused-function]
78 | static void gb_assistant_button_toggled(GtkCheckButton * checkbutton,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:24,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/gstreamer-1.0/gst/gstenumtypes.h:6,
from /usr/include/gstreamer-1.0/gst/gst.h:31,
from gingerblue-main.c:14:
gingerblue-main.c: In function ‘gb_assistant_apply’:
/usr/include/glib-2.0/gobject/gtype.h:2417:12: warning: ‘gingerblue_window’ is used uninitialized [-Wuninitialized]
2417 | ((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
gingerblue-main.c:203:20: note: ‘gingerblue_window’ was declared here
203 | GtkWindow *gingerblue_window;
| ^~~~~~~~~~~~~~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:24,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/gstreamer-1.0/gst/gstenumtypes.h:6,
from /usr/include/gstreamer-1.0/gst/gst.h:31,
from gingerblue-main.c:14:
gingerblue-main.c: In function ‘main’:
/usr/include/glib-2.0/gobject/gtype.h:2417:12: warning: ‘entry’ is used uninitialized [-Wuninitialized]
2417 | ((ct*) g_type_check_instance_cast ((GTypeInstance*) ip, gt))
| ^~~~~~~~~~~~~~~~~~~~~~~~~~
gingerblue-main.c:227:20: note: ‘entry’ was declared here
227 | GtkWidget *entry, *label, *button, *progress, *hbox;
| ^~~~~
In file included from /usr/include/glib-2.0/gobject/gobject.h:28,
from /usr/include/glib-2.0/gobject/gbinding.h:29,
from /usr/include/glib-2.0/glib-object.h:22,
from /usr/include/gstreamer-1.0/gst/gstenumtypes.h:6,
from /usr/include/gstreamer-1.0/gst/gst.h:31,
from gingerblue-main.c:14:
/usr/include/glib-2.0/gobject/gsignal.h:508:5: warning: ‘pipeline’ is used uninitialized [-Wuninitialized]
508 | g_signal_connect_data ((instance), (detailed_signal), (c_handler), (data), NULL, (GConnectFlags) 0)
| ^~~~~~~~~~~~~~~~~~~~~
gingerblue-main.c:224:55: note: ‘pipeline’ was declared here
224 | GstElement *src, *conv, *enc, *muxer, *sink, *pipeline;
| ^~~~~~~~
cc1: some warnings being treated as errors
Edited by Tomasz Kłoczko