Control: tags -1 + patch fixed-upstream

On Sat, 23 Oct 2021 at 20:53:39 +0200, Lucas Nussbaum wrote:
> > /usr/include/c++/11/type_traits:44:3: error: template with C linkage
> >    44 |   template<typename... _Elements>
> >       |   ^~~~~~~~
> > run-passwd.cpp:10:1: note: ‘extern "C"’ linkage started here
> >    10 | extern "C" {
> >       | ^~~~~~~~~~

This appears to be fixed by the attached patch from upstream. (Compiled
successfully on amd64, not otherwise tested.)

To avoid this sort of thing happening whenever a new GLib version has
a behaviour change, it would also be a good idea to choose a target version
of GLib and define the GLIB_VERSION_MIN_REQUIRED and GLIB_VERSION_MAX_ALLOWED
macros, similar to <https://gitlab.gnome.org/GNOME/pan/-/merge_requests/16>.

I do not use UKUI myself and I do not intend to NMU this.

    smcv
From: Z-bin <1134636...@qq.com>
Date: Sat, 6 Mar 2021 16:06:13 +0800
Subject: fix: Not include glib's headers in an 'extern "C"' context
MIME-Version: 1.0
Content-Type: text/plain; charset="utf-8"
Content-Transfer-Encoding: 8bit

Description: Not include glib's headers in an 'extern "C"' context

Log: 去除extern "C"

Origin: upstream, commit:291c510087cc2443fb4f49cdb61d0de5e66417ca
Bug-Debian: https://bugs.debian.org/997137
---
 checkUserPwd/main.cpp                            | 5 -----
 plugins/account/userinfo/changefacedialog.h      | 2 --
 plugins/account/userinfo/changepwddialog.cpp     | 3 ---
 plugins/account/userinfo/qtdbus/userdispatcher.h | 2 --
 plugins/account/userinfo/run-passwd.cpp          | 3 ---
 plugins/account/userinfo/userinfo.cpp            | 2 --
 plugins/devices/audio/ukmedia_main_widget.h      | 3 ++-
 plugins/devices/keyboard/kbdlayoutmanager.cpp    | 2 --
 plugins/devices/mouse/mousecontrol.cpp           | 2 --
 plugins/devices/shortcut/realizeshortcutwheel.h  | 2 --
 plugins/devices/shortcut/shortcut.cpp            | 3 ---
 plugins/devices/touchpad/touchpad.cpp            | 2 --
 plugins/messages-task/notice/notice.h            | 2 --
 plugins/messages-task/notice/realizenotice.h     | 2 --
 plugins/network/proxy/proxy.h                    | 2 --
 plugins/personalized/desktop/realizedesktop.h    | 2 --
 plugins/personalized/fonts/fonts.h               | 2 --
 plugins/personalized/screensaver/screensaver.h   | 2 --
 plugins/personalized/wallpaper/wallpaper.h       | 2 --
 plugins/security-updates/backup/backup.cpp       | 2 --
 plugins/system/autoboot/addautoboot.h            | 2 --
 plugins/system/autoboot/autoboot.cpp             | 2 --
 plugins/system/defaultapp/addappdialog.h         | 2 --
 plugins/system/defaultapp/defaultapp.h           | 2 --
 plugins/time-language/area/area.h                | 2 --
 plugins/time-language/datetime/changtime.h       | 2 --
 plugins/time-language/datetime/datetime.h        | 2 --
 shell/mainwindow.cpp                             | 2 --
 28 files changed, 2 insertions(+), 61 deletions(-)

diff --git a/checkUserPwd/main.cpp b/checkUserPwd/main.cpp
index a352f07..1ed17b0 100644
--- a/checkUserPwd/main.cpp
+++ b/checkUserPwd/main.cpp
@@ -18,16 +18,11 @@
  *
  */
 
-extern "C" {
-
 #include <stdio.h>
 #include <stdbool.h>
 #include <cstring>
-
 #include <crypt.h>
 
-}
-
 #define SHADOW_FILE "/etc/shadow"
 #define BUFF_SIZE 256
 #define SIZE 256
diff --git a/plugins/account/userinfo/changefacedialog.h b/plugins/account/userinfo/changefacedialog.h
index 4686165..609e6a7 100644
--- a/plugins/account/userinfo/changefacedialog.h
+++ b/plugins/account/userinfo/changefacedialog.h
@@ -35,10 +35,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 namespace Ui {
 class ChangeFaceDialog;
diff --git a/plugins/account/userinfo/changepwddialog.cpp b/plugins/account/userinfo/changepwddialog.cpp
index 9156b79..630ab7c 100644
--- a/plugins/account/userinfo/changepwddialog.cpp
+++ b/plugins/account/userinfo/changepwddialog.cpp
@@ -36,12 +36,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 
-}
-
 #include "run-passwd.h"
 
 #define PWD_LOW_LENGTH 6
diff --git a/plugins/account/userinfo/qtdbus/userdispatcher.h b/plugins/account/userinfo/qtdbus/userdispatcher.h
index 401d45c..b7e243a 100644
--- a/plugins/account/userinfo/qtdbus/userdispatcher.h
+++ b/plugins/account/userinfo/qtdbus/userdispatcher.h
@@ -34,11 +34,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <glib/gstdio.h>
 #include <gio/gio.h>
-}
 
 class UserInfo;
 
diff --git a/plugins/account/userinfo/run-passwd.cpp b/plugins/account/userinfo/run-passwd.cpp
index 6407929..d95490d 100644
--- a/plugins/account/userinfo/run-passwd.cpp
+++ b/plugins/account/userinfo/run-passwd.cpp
@@ -7,7 +7,6 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 
@@ -16,8 +15,6 @@ extern "C" {
 #include <errno.h>
 #include <sys/wait.h>
 
-}
-
 #include "run-passwd.h"
 
 /* Buffer size for backend output */
diff --git a/plugins/account/userinfo/userinfo.cpp b/plugins/account/userinfo/userinfo.cpp
index 8488fef..29d5af6 100644
--- a/plugins/account/userinfo/userinfo.cpp
+++ b/plugins/account/userinfo/userinfo.cpp
@@ -43,10 +43,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 #define DEFAULTFACE "/usr/share/ukui/faces/default.png"
 #define ITEMHEIGH 52
diff --git a/plugins/devices/audio/ukmedia_main_widget.h b/plugins/devices/audio/ukmedia_main_widget.h
index 491ca40..f424088 100644
--- a/plugins/devices/audio/ukmedia_main_widget.h
+++ b/plugins/devices/audio/ukmedia_main_widget.h
@@ -34,10 +34,11 @@
 #include <glib/gi18n.h>
 #include <gobject/gparamspecs.h>
 #include <glib/gstdio.h>
+#include <glib/gmain.h>
+
 extern "C" {
 #include <dconf/dconf.h>
 #include <canberra.h>
-#include <glib/gmain.h>
 #include <pulse/ext-stream-restore.h>
 #include <pulse/glib-mainloop.h>
 #include <pulse/error.h>
diff --git a/plugins/devices/keyboard/kbdlayoutmanager.cpp b/plugins/devices/keyboard/kbdlayoutmanager.cpp
index e289fc5..8464421 100644
--- a/plugins/devices/keyboard/kbdlayoutmanager.cpp
+++ b/plugins/devices/keyboard/kbdlayoutmanager.cpp
@@ -27,10 +27,8 @@
 
 #include <QDebug>
 
-extern "C" {
 #include <libxklavier/xklavier.h>
 #include <libmatekbd/matekbd-keyboard-config.h>
-}
 
 #define MAXNUM 4
 #define KBD_LAYOUTS_SCHEMA "org.mate.peripherals-keyboard-xkb.kbd"
diff --git a/plugins/devices/mouse/mousecontrol.cpp b/plugins/devices/mouse/mousecontrol.cpp
index 1f06a0f..3d3c03f 100644
--- a/plugins/devices/mouse/mousecontrol.cpp
+++ b/plugins/devices/mouse/mousecontrol.cpp
@@ -38,11 +38,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <X11/Xlib.h>
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 #define MOUSE_SCHEMA          "org.ukui.peripherals-mouse"
 #define HAND_KEY              "left-handed"
diff --git a/plugins/devices/shortcut/realizeshortcutwheel.h b/plugins/devices/shortcut/realizeshortcutwheel.h
index 2db263d..1f0cdf0 100644
--- a/plugins/devices/shortcut/realizeshortcutwheel.h
+++ b/plugins/devices/shortcut/realizeshortcutwheel.h
@@ -30,11 +30,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <dconf/dconf.h>
-}
 
 #define KEYBINDINGS_DESKTOP_SCHEMA "org.ukui.SettingsDaemon.plugins.media-keys"
 #define KEYBINDINGS_SYSTEM_SCHEMA "org.gnome.desktop.wm.keybindings"
diff --git a/plugins/devices/shortcut/shortcut.cpp b/plugins/devices/shortcut/shortcut.cpp
index 2d14acc..7704eac 100644
--- a/plugins/devices/shortcut/shortcut.cpp
+++ b/plugins/devices/shortcut/shortcut.cpp
@@ -36,11 +36,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <glib/gi18n.h>
-}
-
 
 #define ITEMHEIGH 36
 #define TITLEWIDGETHEIGH 40
diff --git a/plugins/devices/touchpad/touchpad.cpp b/plugins/devices/touchpad/touchpad.cpp
index 0ccd1b1..8889971 100644
--- a/plugins/devices/touchpad/touchpad.cpp
+++ b/plugins/devices/touchpad/touchpad.cpp
@@ -30,10 +30,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <X11/extensions/XInput.h>
 #include <X11/Xatom.h>
-}
 
 #define TOUCHPAD_SCHEMA          "org.ukui.peripherals-touchpad"
 #define ACTIVE_TOUCHPAD_KEY      "touchpad-enabled"
diff --git a/plugins/messages-task/notice/notice.h b/plugins/messages-task/notice/notice.h
index 903c13f..48a9d26 100644
--- a/plugins/messages-task/notice/notice.h
+++ b/plugins/messages-task/notice/notice.h
@@ -37,11 +37,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 QT_BEGIN_NAMESPACE
 namespace Ui { class Notice; }
diff --git a/plugins/messages-task/notice/realizenotice.h b/plugins/messages-task/notice/realizenotice.h
index c4b402d..10e8265 100644
--- a/plugins/messages-task/notice/realizenotice.h
+++ b/plugins/messages-task/notice/realizenotice.h
@@ -31,11 +31,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <dconf/dconf.h>
-}
 
 #define NOTICE_SCHEMA           "org.ukui.control-center.notice"
 #define NEW_FEATURE_KEY         "show-new-feature"
diff --git a/plugins/network/proxy/proxy.h b/plugins/network/proxy/proxy.h
index 3fa0f21..90798bc 100644
--- a/plugins/network/proxy/proxy.h
+++ b/plugins/network/proxy/proxy.h
@@ -40,10 +40,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 struct GSData
 {
diff --git a/plugins/personalized/desktop/realizedesktop.h b/plugins/personalized/desktop/realizedesktop.h
index bf3f3bb..d678df0 100644
--- a/plugins/personalized/desktop/realizedesktop.h
+++ b/plugins/personalized/desktop/realizedesktop.h
@@ -31,11 +31,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <dconf/dconf.h>
-}
 
 #define TRAY_SCHEMA "org.ukui.panel.tray"
 #define TRAY_SCHEMA_PATH "/org/ukui/tray/keybindings/"
diff --git a/plugins/personalized/fonts/fonts.h b/plugins/personalized/fonts/fonts.h
index 8bfe6ef..2645275 100644
--- a/plugins/personalized/fonts/fonts.h
+++ b/plugins/personalized/fonts/fonts.h
@@ -39,11 +39,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <stdlib.h>
-}
 
 namespace Ui {
 class Fonts;
diff --git a/plugins/personalized/screensaver/screensaver.h b/plugins/personalized/screensaver/screensaver.h
index d36c37a..cdfe1d5 100644
--- a/plugins/personalized/screensaver/screensaver.h
+++ b/plugins/personalized/screensaver/screensaver.h
@@ -44,11 +44,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 typedef struct _SSThemeInfo{
     QString name;
diff --git a/plugins/personalized/wallpaper/wallpaper.h b/plugins/personalized/wallpaper/wallpaper.h
index f5722b8..865c0f2 100644
--- a/plugins/personalized/wallpaper/wallpaper.h
+++ b/plugins/personalized/wallpaper/wallpaper.h
@@ -48,10 +48,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 #define BACKGROUND "org.mate.background"
 
diff --git a/plugins/security-updates/backup/backup.cpp b/plugins/security-updates/backup/backup.cpp
index be835da..c4a0d2a 100644
--- a/plugins/security-updates/backup/backup.cpp
+++ b/plugins/security-updates/backup/backup.cpp
@@ -28,9 +28,7 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <gio/gdesktopappinfo.h>
-}
 
 Backup::Backup()
 {
diff --git a/plugins/system/autoboot/addautoboot.h b/plugins/system/autoboot/addautoboot.h
index 6469066..65592a8 100644
--- a/plugins/system/autoboot/addautoboot.h
+++ b/plugins/system/autoboot/addautoboot.h
@@ -32,12 +32,10 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <glib/gstdio.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 namespace Ui {
 class AddAutoBoot;
diff --git a/plugins/system/autoboot/autoboot.cpp b/plugins/system/autoboot/autoboot.cpp
index 24b1178..1218148 100644
--- a/plugins/system/autoboot/autoboot.cpp
+++ b/plugins/system/autoboot/autoboot.cpp
@@ -38,12 +38,10 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <glib/gstdio.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 #define ITEMWIDTH 522
 #define ITEMHEIGHT 62
diff --git a/plugins/system/defaultapp/addappdialog.h b/plugins/system/defaultapp/addappdialog.h
index 4a2c21c..03f0ee6 100644
--- a/plugins/system/defaultapp/addappdialog.h
+++ b/plugins/system/defaultapp/addappdialog.h
@@ -31,11 +31,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 namespace Ui {
 class AddAppDialog;
diff --git a/plugins/system/defaultapp/defaultapp.h b/plugins/system/defaultapp/defaultapp.h
index bad7321..cd228d3 100644
--- a/plugins/system/defaultapp/defaultapp.h
+++ b/plugins/system/defaultapp/defaultapp.h
@@ -37,11 +37,9 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <gio/gdesktopappinfo.h>
-}
 
 typedef struct _Applist
 {
diff --git a/plugins/time-language/area/area.h b/plugins/time-language/area/area.h
index 02fde01..8ba972a 100644
--- a/plugins/time-language/area/area.h
+++ b/plugins/time-language/area/area.h
@@ -44,10 +44,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 namespace Ui {
 class Area;
diff --git a/plugins/time-language/datetime/changtime.h b/plugins/time-language/datetime/changtime.h
index 4afeb28..7bdaf19 100644
--- a/plugins/time-language/datetime/changtime.h
+++ b/plugins/time-language/datetime/changtime.h
@@ -43,10 +43,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 namespace Ui {
 class changtimedialog;
diff --git a/plugins/time-language/datetime/datetime.h b/plugins/time-language/datetime/datetime.h
index aa03f92..13a4a09 100644
--- a/plugins/time-language/datetime/datetime.h
+++ b/plugins/time-language/datetime/datetime.h
@@ -51,10 +51,8 @@
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
-}
 
 #define TZ_DATA_FILE "/usr/share/zoneinfo/zoneUtc"
 #define DEFAULT_TZ "Asia/Shanghai"
diff --git a/shell/mainwindow.cpp b/shell/mainwindow.cpp
index efdabc9..6cbc145 100644
--- a/shell/mainwindow.cpp
+++ b/shell/mainwindow.cpp
@@ -53,11 +53,9 @@ const QByteArray kVinoSchemas    = "org.gnome.Vino";
 #undef signals
 #endif
 
-extern "C" {
 #include <glib.h>
 #include <gio/gio.h>
 #include <libmatemixer/matemixer.h>
-}
 
 const int dbWitdth = 50;
 extern void qt_blurImage(QImage &blurImage, qreal radius, bool quality, int transposed);

Reply via email to