Hi!

I just noticed that the Qt meta system wont accept unsinged 64bit integers in its signal/slot calling system.
I am trying to connect a slot with a signal, both of type

Qt Code:
  1. void testtest(uint64 t);
To copy to clipboard, switch view to plain text mode 

uint64 is a typedef for 64 bit integers in VS:

Qt Code:
  1. typedef unsigned __int64 uint64;
To copy to clipboard, switch view to plain text mode 

the connect() call returns true, but when the signal is emitted, Qt outputs this:

QObject::connect: Cannot queue arguments of type 'uint64'
(Make sure 'uint64' is registered using qRegisterMetaType().)

Hm. I would have assumed uint64 to be covered, but oh well, i added this right after the typedef:

Qt Code:
  1. Q_DECLARE_METATYPE(uint64)
To copy to clipboard, switch view to plain text mode 

Everything compiles fine, the connect() call succeeds - but when i emmit the signal, Qt errors out again with above message.


Help?