PDA

View Full Version : Update to 4.4.2 generates new warnings



mclark
19th September 2008, 17:08
I recently updated my commercial Qt version from 4.3.4 to 4.4.2 on my Windows XP SP3 machine. Compilation is now showing the following warning for numerous files:


1>c:\qt\4.4.2\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(81) : warning C4512: 'QtConcurrent::BlockSizeManager' : assignment operator could not be generated
1> c:\qt\4.4.2\include\qtcore\../../src/corelib/concurrent/qtconcurrentiteratekernel.h(63) : see declaration of 'QtConcurrent::BlockSizeManager'

Since QtConcurrent was not in Qt before 4.4, I assume this is a benign warning. Has anyone else run into this?

Is this showing up because of "#include <QtCore>" in some of my header files? Shall I be more restrictive in the includes (don't include QtCore, just figure out the individual items I need and include them)?

mclark
19th September 2008, 20:59
Is this showing up because of "#include <QtCore>" in some of my header files? Shall I be more restrictive in the includes (don't include QtCore, just figure out the individual items I need and include them)?

I removed the QtCore includes and replaced with specific object includes. Also used #pragma warning(disable: 4512) and #pragma warning(default: 4512) to bracket any offending Qt includes. Qt does seem to spew lots of warnings when the VisualStudio warning level is set to 4.