Hey, On Sun, Nov 12, 2017 at 05:04:19PM +0100, Zeeshan Ali wrote: > Use of 'const' parameter on object parameters is redundant, inconsistent > (both internally and against other GObject libraries) and currently breaks > the low-level Rust binding generator: > > https://github.com/gtk-rs/glib/pull/249
Could the Rust binding generator be fixed to cope with that instead?
It's definitely not used consistently, but removing a 'const' from
external API is going to cause breakage in C++ code:
extern "C" {
#include <osinfo/osinfo_datamap.h>
#include <osinfo/osinfo_entity.h>
#include <osinfo/osinfo_install_config.h>
#include <osinfo/osinfo_install_config_paramlist.h>
#include <osinfo/osinfo_install_script.h>
}
int main(void)
{
const OsinfoInstallScript *script;
osinfo_install_script_get_config_param(script, "");
return 0;
}
$ LC_ALL=C g++ $(pkg-config --cflags --libs libosinfo-1.0) ./osinfo.cpp
./osinfo.cpp: In function 'int main()':
./osinfo.cpp:12:58: error: invalid conversion from 'const OsinfoInstallScript*
{aka const _OsinfoInstallScript*}' to 'OsinfoInstallScript* {aka
_OsinfoInstallScript*}' [-fpermissive]
osinfo_install_script_get_config_param(script, "");
In file included from ./osinfo.cpp:6:0:
/usr/include/libosinfo-1.0/osinfo/osinfo_install_script.h:246:27: note:
initializing argument 1 of 'OsinfoInstallConfigParam*
osinfo_install_script_get_config_param(OsinfoInstallScript*, const gchar*)'
OsinfoInstallConfigParam
*osinfo_install_script_get_config_param(OsinfoInstallScript *script, const
gchar *name);
Christophe
signature.asc
Description: PGP signature
_______________________________________________ Libosinfo mailing list [email protected] https://www.redhat.com/mailman/listinfo/libosinfo
