Public bug reported:
There are compilation errors when I try to include the <glibmm.h> header under
C++20.
This is reproducible in Ubuntu 21.10 (Impish Indri) or Ubuntu devel (Jammy
Jellyfish) but not in Ubuntu 21.04 (Impish Indri) or Debian unstable. And this
is effecting building of the telegram-desktop package.
mymedia@barberry:~$ g++ -x c++ -std=gnu++20 -include glibmm.h - <<< 'int
main(){}' `pkg-config --cflags --libs glibmm-2.4` -o /dev/null
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:956:24: error: expected unqualified-id
before ‘)’ token
956 | Variant<VariantBase>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1017:25: error: expected
unqualified-id before ‘)’ token
1017 | Variant< Variant<T> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1070:26: error: expected
unqualified-id before ‘)’ token
1070 | Variant<Glib::ustring>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1240:24: error: expected
unqualified-id before ‘)’ token
1240 | Variant<std::string>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1286:30: error: expected
unqualified-id before ‘)’ token
1286 | Variant< std::pair<K, V> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1335:29: error: expected
unqualified-id before ‘)’ token
1335 | Variant< std::vector<T> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1404:41: error: expected
unqualified-id before ‘)’ token
1404 | Variant< std::vector<Glib::ustring> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1530:39: error: expected
unqualified-id before ‘)’ token
1530 | Variant< std::vector<std::string> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1606:29: error: expected
unqualified-id before ‘)’ token
1606 | Variant< std::map<K, V> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1679:33: error: expected
unqualified-id before ‘)’ token
1679 | Variant<std::tuple<Types...>>()
| ^
In file included from /usr/include/glibmm-2.4/glibmm/variant.h:1742,
from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:23:17: error: expected
unqualified-id before ‘)’ token
23 | Variant<bool>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:66:26: error: expected
unqualified-id before ‘)’ token
66 | Variant<unsigned char>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:109:19: error: expected
unqualified-id before ‘)’ token
109 | Variant<gint16>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:152:20: error: expected
unqualified-id before ‘)’ token
152 | Variant<guint16>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:195:19: error: expected
unqualified-id before ‘)’ token
195 | Variant<gint32>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:244:20: error: expected
unqualified-id before ‘)’ token
244 | Variant<guint32>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:287:19: error: expected
unqualified-id before ‘)’ token
287 | Variant<gint64>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:330:20: error: expected
unqualified-id before ‘)’ token
330 | Variant<guint64>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:373:19: error: expected
unqualified-id before ‘)’ token
373 | Variant<double>()
| ^
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:1751:1: error: no declaration matches
‘Glib::Variant<Glib::Variant<T> >::Variant()’
1751 | Variant< Variant<T> >::Variant()
| ^~~~~~~~~~~~~~~~~~~~~
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:1026:12: note: candidate is:
‘Glib::Variant<Glib::Variant<T> >::Variant(GVariant*, bool)’
1026 | explicit Variant< Variant<T> >(GVariant* castitem, bool
take_a_reference = false);
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/glibmm-2.4/glibmm/variant.h:1009:7: note: ‘class
Glib::Variant<Glib::Variant<T> >’ defined here
1009 | class Variant< Variant<T> > : public VariantContainerBase
| ^~~~~~~~~~~~~~~~~~~~~
** Affects: glibmm2.4 (Ubuntu)
Importance: Undecided
Status: New
** Tags: impish jammy
--
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to glibmm2.4 in Ubuntu.
https://bugs.launchpad.net/bugs/1955044
Title:
/usr/include/glibmm-2.4/glibmm/variant.h:956:24: error: expected
unqualified-id before ‘)’ token
Status in glibmm2.4 package in Ubuntu:
New
Bug description:
There are compilation errors when I try to include the <glibmm.h> header
under C++20.
This is reproducible in Ubuntu 21.10 (Impish Indri) or Ubuntu devel (Jammy
Jellyfish) but not in Ubuntu 21.04 (Impish Indri) or Debian unstable. And this
is effecting building of the telegram-desktop package.
mymedia@barberry:~$ g++ -x c++ -std=gnu++20 -include glibmm.h - <<< 'int
main(){}' `pkg-config --cflags --libs glibmm-2.4` -o /dev/null
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:956:24: error: expected
unqualified-id before ‘)’ token
956 | Variant<VariantBase>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1017:25: error: expected
unqualified-id before ‘)’ token
1017 | Variant< Variant<T> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1070:26: error: expected
unqualified-id before ‘)’ token
1070 | Variant<Glib::ustring>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1240:24: error: expected
unqualified-id before ‘)’ token
1240 | Variant<std::string>();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1286:30: error: expected
unqualified-id before ‘)’ token
1286 | Variant< std::pair<K, V> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1335:29: error: expected
unqualified-id before ‘)’ token
1335 | Variant< std::vector<T> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1404:41: error: expected
unqualified-id before ‘)’ token
1404 | Variant< std::vector<Glib::ustring> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1530:39: error: expected
unqualified-id before ‘)’ token
1530 | Variant< std::vector<std::string> >();
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1606:29: error: expected
unqualified-id before ‘)’ token
1606 | Variant< std::map<K, V> >()
| ^
/usr/include/glibmm-2.4/glibmm/variant.h:1679:33: error: expected
unqualified-id before ‘)’ token
1679 | Variant<std::tuple<Types...>>()
| ^
In file included from /usr/include/glibmm-2.4/glibmm/variant.h:1742,
from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:23:17: error: expected
unqualified-id before ‘)’ token
23 | Variant<bool>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:66:26: error: expected
unqualified-id before ‘)’ token
66 | Variant<unsigned char>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:109:19: error: expected
unqualified-id before ‘)’ token
109 | Variant<gint16>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:152:20: error: expected
unqualified-id before ‘)’ token
152 | Variant<guint16>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:195:19: error: expected
unqualified-id before ‘)’ token
195 | Variant<gint32>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:244:20: error: expected
unqualified-id before ‘)’ token
244 | Variant<guint32>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:287:19: error: expected
unqualified-id before ‘)’ token
287 | Variant<gint64>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:330:20: error: expected
unqualified-id before ‘)’ token
330 | Variant<guint64>()
| ^
/usr/include/glibmm-2.4/glibmm/variant_basictypes.h:373:19: error: expected
unqualified-id before ‘)’ token
373 | Variant<double>()
| ^
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:1751:1: error: no declaration
matches ‘Glib::Variant<Glib::Variant<T> >::Variant()’
1751 | Variant< Variant<T> >::Variant()
| ^~~~~~~~~~~~~~~~~~~~~
In file included from
/usr/include/glibmm-2.4/glibmm/containerhandle_shared.h:23,
from /usr/include/glibmm-2.4/glibmm/arrayhandle.h:21,
from /usr/include/glibmm-2.4/glibmm.h:92,
from <command-line>:
/usr/include/glibmm-2.4/glibmm/variant.h:1026:12: note: candidate is:
‘Glib::Variant<Glib::Variant<T> >::Variant(GVariant*, bool)’
1026 | explicit Variant< Variant<T> >(GVariant* castitem, bool
take_a_reference = false);
| ^~~~~~~~~~~~~~~~~~~~~
/usr/include/glibmm-2.4/glibmm/variant.h:1009:7: note: ‘class
Glib::Variant<Glib::Variant<T> >’ defined here
1009 | class Variant< Variant<T> > : public VariantContainerBase
| ^~~~~~~~~~~~~~~~~~~~~
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/glibmm2.4/+bug/1955044/+subscriptions
--
Mailing list: https://launchpad.net/~desktop-packages
Post to : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help : https://help.launchpad.net/ListHelp