Bug#925674: First triage
Giovanni Mascellani
gio at debian.org
Tue Jul 23 22:57:04 BST 2019
Hi,
the problem here is that operator== is called on an instance of
std::map<>::iterator. The intention is probably to compare two iterators
for inequality. But calling the operator overloading function is not the
right thing, because the implementation of std::map<>::iterator might
use the default iterator, and not overload it. Probably GCC 8 used an
overloaded operator, but GCC 9 reverted to the default one. User code
should not call the function "operator==", but use the "==" operator and
let the compiler do its work.
I believe that the bug should be fixed by changing
bool tolua_ret = (bool) self->operator==(*value);
to
bool tolua_ret = (bool) ((*self)==(*value);
The problem is that that line of code is automatically generated by the
"tolua" tool. I suppose that tolua should be fixed to generate correct
code. I will look into that later, if I can.
Greetings from Curitiba!
Giovanni.
--
Giovanni Mascellani <g.mascellani at gmail.com>
Postdoc researcher - Université Libre de Bruxelles
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 228 bytes
Desc: OpenPGP digital signature
URL: <http://alioth-lists.debian.net/pipermail/pkg-games-devel/attachments/20190723/e2a87906/attachment-0003.sig>
More information about the Pkg-games-devel
mailing list