2009-02-25 09:15:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/**************************************************************************
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  This  file  is  part  of  Qt  Creator  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2011-01-11 16:28:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Copyright  ( c )  2011  Nokia  Corporation  and / or  its  subsidiary ( - ies ) .  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2011-11-02 15:59:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Contact :  Nokia  Corporation  ( qt - info @ nokia . com )  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2008-12-02 14:17:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2009-02-25 09:15:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  GNU  Lesser  General  Public  License  Usage  
						 
					
						
							
								
									
										
										
										
											2008-12-02 14:17:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2011-04-13 08:42:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  This  file  may  be  used  under  the  terms  of  the  GNU  Lesser  General  Public  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  License  version  2.1  as  published  by  the  Free  Software  Foundation  and  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  appearing  in  the  file  LICENSE . LGPL  included  in  the  packaging  of  this  file .  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Please  review  the  following  information  to  ensure  the  GNU  Lesser  General  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Public  License  version  2.1  requirements  will  be  met :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  http : //www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 14:17:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2010-12-17 16:01:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  In  addition ,  as  a  special  exception ,  Nokia  gives  you  certain  additional  
						 
					
						
							
								
									
										
										
										
											2011-04-13 08:42:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  rights .  These  rights  are  described  in  the  Nokia  Qt  LGPL  Exception  
						 
					
						
							
								
									
										
										
										
											2010-12-17 16:01:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  version  1.1 ,  included  in  the  file  LGPL_EXCEPTION . txt  in  this  package .  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2011-04-13 08:42:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Other  Usage  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Alternatively ,  this  file  may  be  used  in  accordance  with  the  terms  and  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  conditions  contained  in  a  signed  written  agreement  between  you  and  Nokia .  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2010-12-17 16:01:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  If  you  have  questions  regarding  the  use  of  this  file ,  please  contact  
						 
					
						
							
								
									
										
										
										
											2011-11-02 15:59:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Nokia  at  qt - info @ nokia . com .  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2009-02-25 09:15:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								////////////////  Some global configuration below ////////////////
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// The following defines can be used to steer the kind of tests that
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// can be done.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// With USE_AUTOBREAK, the debugger will stop automatically on all
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// lines containing the BREAK_HERE macro. This should be enabled
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// during manual testing.
  
						 
					
						
							
								
									
										
										
										
											2011-11-23 22:14:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
									
										
										
										
											2011-08-19 15:47:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_AUTOBREAK 0 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// With USE_AUTORUN, creator will automatically "execute" the commands
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// in a comment following a BREAK_HERE line.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// The following commands are supported:
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//   // Check <name> <value> <type>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//         - Checks whether the local variable is displayed with value and type.
  
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//   //// Continue
  
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//         - Continues execution
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// If the line after a BREAK_HERE line does not contain one of the
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// supported commands, the test stops.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_AUTORUN 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// With USE_UNINITIALIZE_AUTOBREAK, the debugger will stop automatically
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// on all lines containing the BREAK_UNINITIALIZED_HERE macro.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// This should be enabled during manual testing.
  
						 
					
						
							
								
									
										
										
										
											2011-11-23 22:14:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
									
										
										
										
											2011-08-19 15:47:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_UNINITIALIZED_AUTOBREAK 0 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// With USE_PRIVATE tests that require private headers are enabled.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Default: 1
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_PRIVATE 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// With USE_BOOST tests of boost data dumpers are enabled. You need
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// some boost headers installed.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_BOOST 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// With USE_EGIEN tests of data dumpers for the "Eigen" library are
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// enabled. You need some eigen headers installed.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_EIGEN 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								////////////// No further global configuration below ////////////////
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if QT_SCRIPT_LIB 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_SCRIPTLIB 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_SCRIPTLIB 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if QT_VERSION >= 0x040500 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_SHARED_POINTER 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_SHARED_POINTER 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2010-01-04 13:16:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  dummyStatement ( . . . )  { }  
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QDebug> 
  
						 
					
						
							
								
									
										
										
										
											2009-09-03 09:15:24 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QDateTime> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QDir> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QHash> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QLibrary> 
  
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QLinkedList> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QList> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QMap> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QPointer> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-04 19:26:11 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QProcess> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-29 09:32:36 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QRegExp> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QString> 
  
						 
					
						
							
								
									
										
										
										
											2010-03-30 17:38:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QStringList> 
  
						 
					
						
							
								
									
										
										
										
											2010-05-27 18:23:51 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QSettings> 
  
						 
					
						
							
								
									
										
										
										
											2009-08-28 09:44:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QStack> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QThread> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QVariant> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/QVector> 
  
						 
					
						
							
								
									
										
										
										
											2010-04-21 19:25:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QUrl> 
  
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_SHARED_POINTER 
  
						 
					
						
							
								
									
										
										
										
											2009-04-07 13:50:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtCore/QSharedPointer> 
  
						 
					
						
							
								
									
										
										
										
											2009-06-25 15:00:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtGui/QColor> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtGui/QFont> 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-08 14:26:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//#include <QtGui/private/qfixed_p.h>
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtGui/QPainter> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtGui/QPainterPath> 
  
						 
					
						
							
								
									
										
										
										
											2010-06-30 15:20:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtGui/QRegion> 
  
						 
					
						
							
								
									
										
										
										
											2011-10-10 14:47:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-09-28 09:35:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtGui/QTextCursor> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtGui/QTextDocument> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_SCRIPTLIB 
  
						 
					
						
							
								
									
										
										
										
											2011-02-10 15:17:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtScript/QScriptEngine> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtScript/QScriptValue> 
  
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-02-10 15:17:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-29 14:57:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtXml/QXmlAttributes> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <QtNetwork/QHostAddress> 
  
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QtNetwork/QNetworkRequest> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-10-10 14:47:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QApplication>   // QWidgets: Separate module as of Qt 5
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QAction> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QStandardItemModel> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QLabel> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-16 11:17:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <deque> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <iostream> 
  
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <iterator> 
  
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <fstream> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-11 16:10:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <map> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <list> 
  
						 
					
						
							
								
									
										
										
										
											2011-11-15 16:57:43 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <limits> 
  
						 
					
						
							
								
									
										
										
										
											2009-03-11 13:31:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <set> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <stack> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# include  <string> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <vector> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <stdarg.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "../simple/deep/deep/simple_test_app.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-04 16:49:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if USE_BOOST 
  
						 
					
						
							
								
									
										
										
										
											2011-03-04 17:22:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/optional.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-04 16:49:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/shared_ptr.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/date_time/gregorian/gregorian.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-04 16:49:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-03-01 12:39:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_EIGEN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <eigen2/Eigen/Core> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-01 12:39:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_PRIVATE 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QtCore/private/qobject_p.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-08-18 10:56:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if defined(__GNUC__) && !defined(__llvm__) && !defined(Q_OS_MAC) 
  
						 
					
						
							
								
									
										
										
										
											2010-04-20 12:06:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#     define USE_GCC_EXT 1 
  
						 
					
						
							
								
									
										
										
										
											2010-09-01 11:58:23 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#     undef __DEPRECATED 
  
						 
					
						
							
								
									
										
										
										
											2011-01-04 13:56:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#     include <ext / hash_set> 
  
						 
					
						
							
								
									
										
										
										
											2010-04-15 18:28:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <windows.h> 
  
						 
					
						
							
								
									
										
										
										
											2010-04-07 15:23:37 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# undef min 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# undef max 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-01-03 17:34:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef __SSE__ 
  
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <xmmintrin.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <stddef.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2010-03-30 17:38:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_AUTOBREAK 
  
						 
					
						
							
								
									
										
										
										
											2011-11-07 19:36:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    ifdef Q_CC_MSVC 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#        define BREAK_HERE __asm { int 3 }; __asm { mov eax, eax } 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#    else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#        define BREAK_HERE asm("int $3; mov %eax, %eax") 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#    endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2011-12-12 18:29:19 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    define BREAK_HERE dummyStatement() 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_UNINITIALIZED_AUTOBREAK 
  
						 
					
						
							
								
									
										
										
										
											2011-11-07 19:36:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    ifdef Q_CC_MSVC 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#        define BREAK_UNINITIALIZED_HERE __asm { int 3 }; __asm { mov eax, eax } 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#    else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#        define BREAK_UNINITIALIZED_HERE asm("int $3; mov %eax, %eax") 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#    endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2011-12-12 18:29:19 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    define BREAK_UNINITIALIZED_HERE dummyStatement() 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								QT_BEGIN_NAMESPACE  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								uint  qHash ( const  QMap < int ,  int >  & )  {  return  0 ;  }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								uint  qHash ( const  double  &  f )  {  return  int ( f ) ;  }  
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								uint  qHash ( const  QPointer < QObject >  & p )  {  return  ( ulong ) p . data ( ) ;  }  
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								QT_END_NAMESPACE  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  nsA  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  nsB  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  SomeType  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    SomeType ( int  a )  :  a ( a )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace nsB
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace nsA
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 16:45:23 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  multibp  {  
						 
					
						
							
								
									
										
										
										
											2010-01-04 13:16:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // This tests multiple breakpoints. When a
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // the b
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 13:00:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    template  < typename  T >  class  Vector 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        explicit  Vector ( int  size ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  m_size ( size ) ,  m_data ( new  T [ size ] ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Check size 10 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Check there are multiple entries in the Breakpoint vie.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-25 10:56:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            dummyStatement ( this ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 13:00:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ~ Vector ( )  {  delete  [ ]  m_data ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  size ( )  const  {  return  m_size ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_size ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        T  * m_data ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testMultiBp ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 13:00:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Vector < int >  vi ( 10 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Vector < float >  vf ( 10 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Vector < double >  vd ( 10 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Vector < char >  vc ( 10 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vi ,  & vf ,  & vd ,  & vc ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 13:00:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 16:45:23 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace multibp
  
						 
					
						
							
								
									
										
										
										
											2010-01-18 15:11:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-01 12:39:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 16:48:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-05-05 08:46:24 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Foo  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								public :  
						 
					
						
							
								
									
										
										
										
											2009-05-05 08:46:24 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Foo ( int  i  =  0 ) 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								        :  a ( i ) ,  b ( 2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  s  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  t  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b  =  2  +  s  +  t ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & t ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-16 12:17:01 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-09-01 14:33:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    virtual  ~ Foo ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-16 12:17:01 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a  =  5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    void  doit ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        static  QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " 1 " ]  =  " 2 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        h [ & ob ]  =  m . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        - - b ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								public :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  a ,  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    char  x [ 6 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								private :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    typedef  QMap < QString ,  QString >  Map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Map  m ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QHash < QObject  * ,  Map : : iterator >  h ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  X  :  virtual  public  Foo  {  public :  X ( )  {  }  } ;  
						 
					
						
							
								
									
										
										
										
											2009-06-17 16:00:03 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  XX  :  virtual  public  Foo  {  public :  XX ( )  {  }  } ;  
						 
					
						
							
								
									
										
										
										
											2010-06-29 10:58:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Y  :  virtual  public  Foo  {  public :  Y ( )  {  }  } ;  
						 
					
						
							
								
									
										
										
										
											2009-06-17 16:00:03 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  D  :  public  X ,  public  Y  {  int  diamond ;  } ;  
						 
					
						
							
								
									
										
										
										
											2010-06-29 10:58:09 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  peekandpoke  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testAnonymousStructs ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-16 18:39:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # ifndef Q_CC_RVCT 
 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-16 18:39:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        union  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  int  i ;  int  b ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  float  f ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            double  d ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-19 14:18:41 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }  a  =  {  {  42 ,  43  }  } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.b 43 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.d 9.1245819032257467e-313 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.f 5.88545355e-44 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.i 42 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a. Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a . i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.b 43 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.d 9.1245819012000775e-313 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.f 1.40129846e-45 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.i 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . i  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.b 43 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.d 9.1245819012494841e-313 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.f 2.80259693e-45 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.i 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . i  =  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-16 18:39:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testComplexWatchers ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-16 18:39:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        struct  S  {  int  a ;  double  b ;  }  s [ 10 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  10 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            s [ i ] . a  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s peekandpoke::S [10].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s and s[0]. Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Watcher Context: "Add New Watcher".
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Type    ['s[%d].a' % i for i in range(5)]
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand it, continue stepping. This should result in a list
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // of five items containing the .a fields of s[0]..s[4].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-16 18:39:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQImageDisplay ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QImage  im ( QSize ( 200 ,  200 ) ,  QImage : : Format_RGB32 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        im . fill ( QColor ( 200 ,  10 ,  30 ) . rgba ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPainter  pain ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . begin ( & im ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . setPen ( QPen ( Qt : : black ,  5.0 ,  Qt : : SolidLine ,  Qt : : RoundCap ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check im (200x200) QImage.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType pain QPainter.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . drawEllipse ( 20 ,  20 ,  160 ,  160 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Toggle between "Normal" and "Displayed" in L&W Context Menu, entry "Display of Type QImage".
 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . drawArc ( 70 ,  115 ,  60 ,  30 ,  200  *  16 ,  140  *  16 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . setBrush ( Qt : : black ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . drawEllipse ( 65 ,  70 ,  15 ,  15 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Toggle between "Normal" and "Displayed" in L&W Context Menu, entry "Display of Type QImage".
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . drawEllipse ( 120 ,  70 ,  15 ,  15 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . end ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-25 10:56:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & pain ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testPeekAndPoke3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testAnonymousStructs ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testComplexWatchers ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQImageDisplay ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace peekandpoke
  
						 
					
						
							
								
									
										
										
										
											2010-02-15 16:59:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-03-30 17:38:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  anon  {  
						 
					
						
							
								
									
										
										
										
											2010-03-18 18:10:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # ifndef Q_CC_RVCT 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  TestAnonymous 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-18 18:10:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        union  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  int  i ;  int  b ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  float  f ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            double  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-18 18:10:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    namespace  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-18 18:10:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        struct  Something 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Something ( )  {  a  =  b  =  1 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-30 17:38:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            void  foo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                a  =  42 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                b  =  43 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  a ,  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testAnonymous ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifndef Q_CC_RVCT 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        TestAnonymous  a ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a anon::TestAnonymous.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.#1   {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.#1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.#1.b int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.#1.i int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.#2   {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.#2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.#2.f float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.d double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a . i  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a . i  =  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Something  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s anon::(anonymous namespace)::Something.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.b 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . foo ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.a 42 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.b 43 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace anon
  
						 
					
						
							
								
									
										
										
										
											2010-03-18 18:10:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-02-15 16:59:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qbytearray  {  
						 
					
						
							
								
									
										
										
										
											2009-04-03 11:54:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQByteArray1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  ba ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ba "" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ba  + =  " Hello " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba  + =  ' " ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba  + =  " World " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba  + =  char ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba  + =  2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba "Hello"World" QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ba.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba.0 72 'H' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba.11 0 '\0' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba.12 1 char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba.13 2 char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ba ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQByteArray2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  ba ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  256 ;  - - i  > =  0 ;  ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            ba . append ( char ( i ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s ( 10000 ,  ' x ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  ss ( 10000 ,  ' c ' ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba "\377\376\375\374\373\372\371\370\367\366\365\364\363\362\361\360\357\356\355\354\353\352\351\350\347\346\345\344\343\342\341\340\337\336\335\334\333\332\331\330\327\326\325\324\323\322\321\320\317\316\315\314\313\312\311\310\307\306\305\304\303\302\301\300\277\276\275\274\273\272\271\270\267\266\265\264\263\262\261\260\257\256\255\254\253\252\251\250\247\246\245\244\243\242\241\240\237\236\235\234\233\232\231\230\227\226\225\224\223\222\221\220\217\216\215\214\213\212\211\210\207\206\205\204\203\202\201\20..." QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx..." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ss "ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc..." std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ba ,  & ss ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQByteArray3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * str1  =  " \356 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * str2  =  " \xee " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * str3  =  " \\ ee " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  buf1 ( str1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  buf2 ( str2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  buf3 ( str3 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check buf1 "\356" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check buf2 "\356" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check buf3 "\ee" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType str1 char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & buf1 ,  & buf2 ,  & buf3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQByteArray ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qbytearray
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-02-02 19:03:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  catchthrow  {  
						 
					
						
							
								
									
										
										
										
											2010-02-11 17:29:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    static  void  throwit1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Set a breakpoint on "throw" in the BreakWindow context menu
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // before stepping further.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        throw  14 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    static  void  throwit ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        throwit1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testCatchThrow ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  gotit  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        try  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            throwit ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  catch  ( int  what )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            gotit  =  what ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & gotit ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace catchthrow
  
						 
					
						
							
								
									
										
										
										
											2010-02-11 17:29:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qdatetime  {  
						 
					
						
							
								
									
										
										
										
											2010-09-27 12:40:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQDate ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDate  date ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType date QDate.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(ISO) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(Locale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(SystemLocale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.toString "" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step, check display.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  QDate : : currentDate ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  date . addDays ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  date . addDays ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & date ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-09-27 12:40:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQTime ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QTime  time ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType date QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(ISO) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(Locale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(SystemLocale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType date.toLocalTime QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.toString "" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step, check display.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time  =  QTime : : currentTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time  =  time . addSecs ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time  =  time . addSecs ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & time ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQDateTime ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  date ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType time QTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand time.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(ISO) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(Locale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(SystemLocale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.toString "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.toUTC <not available> <unknown>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step, check display.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  QDateTime : : currentDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  date . addSecs ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  date . addSecs ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & date ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testDateTime ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQDate ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qdatetime
  
						 
					
						
							
								
									
										
										
										
											2009-09-03 09:15:24 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-07 16:36:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qfileinfo  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQFileInfo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QFile  file ( " /tmp/t " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-01 10:28:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        file . setObjectName ( " A QFile instance " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QFileInfo  fi ( " /tmp/tt " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  s  =  fi . absoluteFilePath ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-13 19:31:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check fi "/tmp/tt" QFileInfo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check file "/tmp/t" QFile.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s "/tmp/t" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & file ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qfileinfo
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-14 18:14:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qhash  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QString ,  QList < int >  >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " Hallo " ,  QList < int > ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " Welt " ,  QList < int > ( )  < <  1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " ! " ,  QList < int > ( )  < <  1  < <  2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " ! " ,  QList < int > ( )  < <  1  < <  2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <3 items> QHash<QString, QList<int>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value <0 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.key "Welt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.value <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.1.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.value.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.key "!" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.value <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.2.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.value.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.value.1 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < int ,  float >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <2 items> QHash<int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.22 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.11 11 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QString ,  int >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 22.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 123.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111ss111128.0 " ]  =  28.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 11124.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 1111125.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 11111126.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111127.0 " ]  =  27.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111111128.0 " ]  =  28.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111111111111111129.0 " ]  =  29.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <9 items> QHash<QString, int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "123.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8   QHashNode<QString, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.8.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8.key "11124.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8.value 22 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QByteArray ,  float >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 22.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 123.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111ss111128.0 " ]  =  28.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 11124.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 1111125.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 11111126.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111127.0 " ]  =  27.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111111128.0 " ]  =  28.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 111111111111111111129.0 " ]  =  29.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <9 items> QHash<QByteArray, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QByteArray, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "123.0" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8   QHashNode<QByteArray, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.8.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8.key "11124.0" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8.value 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < int ,  QString >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 22 ]  =  " 22.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <1 items> QHash<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash6 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QString ,  Foo >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <2 items> QHash<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1   QHashNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.key "33.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.1.value Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash7 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QString ,  QPointer < QObject >  >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " Hallo " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " Welt " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash . insert ( " . " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <3 items> QHash<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value.o QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2   QHashNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.2.value QPointer<QObject>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & hash ,  & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHash ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash5 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash6 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash7 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qhash
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-14 18:14:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qhostaddress  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHostAddress ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QHostAddress  ha1 ( 129u  *  256u  *  256u  *  256u  +  130u ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QHostAddress  ha2 ( " 127.0.0.1 " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ha1 129.0.0.130 QHostAddress.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha2 "127.0.0.1" QHostAddress.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ha1 ,  & ha2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qhostaddress
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  painting  {  
						 
					
						
							
								
									
										
										
										
											2009-01-27 17:15:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQImage ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // only works with Python dumper
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QImage  im ( QSize ( 200 ,  200 ) ,  QImage : : Format_RGB32 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        im . fill ( QColor ( 200 ,  100 ,  130 ) . rgba ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPainter  pain ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . begin ( & im ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check im (200x200) QImage.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType pain QPainter.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . drawLine ( 2 ,  2 ,  130 ,  130 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . drawLine ( 4 ,  2 ,  130 ,  140 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . drawRect ( 30 ,  30 ,  80 ,  80 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . end ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & pain ,  & im ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQPixmap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QImage  im ( QSize ( 200 ,  200 ) ,  QImage : : Format_RGB32 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        im . fill ( QColor ( 200 ,  100 ,  130 ) . rgba ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPainter  pain ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . begin ( & im ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . drawLine ( 2 ,  2 ,  130 ,  130 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        pain . end ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPixmap  pm  =  QPixmap : : fromImage ( im ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check im (200x200) QImage.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType pain QPainter.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pm (200x200) QPixmap.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & im ,  & pm ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testPainting ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQImage ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQPixmap ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-03-15 17:44:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace painting
  
						 
					
						
							
								
									
										
										
										
											2010-03-15 17:44:56 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qlinkedlist  {  
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQLinkedListInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 101 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 101 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 102 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQLinkedListUInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < uint >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 103 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 104 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 103 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 104 unsigned int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQLinkedListFooStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < Foo  * >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( new  Foo ( 3 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QLinkedList<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.2.a 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:50:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQLinkedListULongLong ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < qulonglong >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 42 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( 43 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<unsigned long long>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 42 unsigned long long.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 43 unsigned long long.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQLinkedListFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < Foo >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQLinkedListStdString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLinkedList < std : : string >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( " aa " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( " bb " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 "aa" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 "bb" std::string.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQLinkedList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListUInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListFooStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListULongLong ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQLinkedListStdString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qlinkedlist
  
						 
					
						
							
								
									
										
										
										
											2009-01-08 11:02:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-08-12 12:39:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qlist  {  
						 
					
						
							
								
									
										
										
										
											2009-07-14 10:07:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  big ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  10000 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            big . push_back ( i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check big <10000 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand big.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check big.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check big.1999 1999 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & big ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListIntStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int  * >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . append ( new  int ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( new  int ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( new  int ( 3 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListUInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < uint >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<unsigned int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . append ( 101 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 101 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 102 unsigned int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-03-11 15:09:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListUShort ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < ushort >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<unsigned short>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . append ( 101 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned short>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 101 unsigned short.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 102 unsigned short.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListQChar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < QChar >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<QChar>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . append ( QChar ( ' a ' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( QChar ( ' b ' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( QChar ( ' c ' ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<QChar>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 'a' (97) QChar.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 'c' (99) QChar.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListQULongLong ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < qulonglong >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<unsigned long long>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . append ( 101 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 102 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned long long>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 101 unsigned long long.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 102 unsigned long long.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListStdString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < std : : string >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( " aa " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . push_back ( " bb " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . push_back ( " cc " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . push_back ( " dd " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <4 items> QList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.0 std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.3 std::string.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < Foo >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  100 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            l . push_back ( i  +  15 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <100 items> QList<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.99 Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( 1000 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . push_back ( 1001 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . push_back ( 1002 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <103 items> QList<Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQListReverse ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  l  =  QList < int > ( )  < <  1  < <  2  < <  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  std : : reverse_iterator < QList < int > : : iterator >  Reverse ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Reverse  rit ( l . end ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Reverse  rend ( l . begin ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  r ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        while  ( rit  ! =  rend ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            r . append ( * rit + + ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check r <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand r.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check r.0 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check r.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check r.2 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType rend qlist::Reverse.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType rit qlist::Reverse.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListIntStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListUInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListUShort ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListQChar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListQULongLong ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListStdString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListReverse ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qlist
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-01-19 10:48:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qlocale  {  
						 
					
						
							
								
									
										
										
										
											2011-01-19 10:48:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQLocale ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLocale  loc  =  QLocale : : system ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QString s = loc.name();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QVariant v = loc;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLocale : : MeasurementSystem  m  =  loc . measurementSystem ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType loc QLocale.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType m QLocale::MeasurementSystem.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & loc ,  & m ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-19 10:48:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace qlocale
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qmap  {  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapUIntStringList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < uint ,  QStringList >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key 11 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.0 "11" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key 22 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.value.0 "22" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapUIntStringListTypedef ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // only works with Python dumper
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  QMap < uint ,  QStringList >  T ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        T  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> qmap::T.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapUIntFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < uint ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.22 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapStringFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < QString ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMap<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-01-19 10:48:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapIntString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < int ,  QString >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  " 22.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMap<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQMapStringFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < QString ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "33.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.value.a 33 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMapStringPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // only works with Python dumper
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < QString ,  QPointer < QObject >  >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " Hallo " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " Welt " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " . " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> QMap<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.o QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.key "Welt" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMapStringList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // only works with Python dumper
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < nsA : : nsB : : SomeType  * >  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . append ( new  nsA : : nsB : : SomeType ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . append ( new  nsA : : nsB : : SomeType ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . append ( new  nsA : : nsB : : SomeType ( 3 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < QString ,  QList < nsA : : nsB : : SomeType  * >  >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " foo " ]  =  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " bar " ]  =  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 1 " ]  =  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 2 " ]  =  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <4 items> QMap<QString, QList<nsA::nsB::SomeType*>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QList<nsA::nsB::SomeType*>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value <3 items> QList<nsA::nsB::SomeType*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.0 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.1 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.1.a 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.2 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.2.a 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3   QMapNode<QString, QList<nsA::nsB::SomeType*>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.key "foo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.value <3 items> QList<nsA::nsB::SomeType*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.3.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.3.value.2 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.3.value.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.value.2.a 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check x <3 items> QList<nsA::nsB::SomeType*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMultiMapUintFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMultiMap < uint ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 11 ,  11.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  22.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  33.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  34.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  35.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  36.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <6 items> QMultiMap<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.[0] 11 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.[5] 22 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMultiMapStringFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMultiMap < QString ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " 22.0 " ,  22.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMultiMap<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMultiMapIntString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMultiMap < int ,  QString >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( 22 ,  " 22.0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMultiMap<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMultiMapStringFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMultiMap < QString ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " 22.0 " ,  Foo ( 22 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " 33.0 " ,  Foo ( 33 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " 22.0 " ,  Foo ( 22 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> QMultiMap<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMultiMapStringPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMultiMap < QString ,  QPointer < QObject >  >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " Hallo " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " Welt " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " . " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( " . " ,  QPointer < QObject > ( & ob ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <4 items> QMultiMap<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.key "Welt" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQMap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapUIntStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapUIntStringListTypedef ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapUIntFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapStringFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapIntString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapStringPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapUintFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapStringFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapIntString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMapUIntStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQMultiMapStringPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qmap
  
						 
					
						
							
								
									
										
										
										
											2009-01-07 15:31:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qobject  {  
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject1 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // This checks whether signal-slot connections are displayed.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  parent ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        parent . setObjectName ( " A Parent " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  child ( & parent ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        child . setObjectName ( " A Child " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-04 17:21:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QObject : : connect ( & child ,  SIGNAL ( destroyed ( ) ) ,  & parent ,  SLOT ( deleteLater ( ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : disconnect ( & child ,  SIGNAL ( destroyed ( ) ) ,  & parent ,  SLOT ( deleteLater ( ) ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        child . setObjectName ( " A renamed Child " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check child "A renamed Child" QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check parent "A Parent" QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand all.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & parent ,  & child ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    namespace  Names  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        namespace  Bar  { 
							 
						 
					
						
							
								
									
										
										
										
											2010-08-13 09:27:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        struct  Ui  {  Ui ( )  {  w  =  0 ;  }  QWidget  * w ;  } ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-08-12 15:26:56 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        class  TestObject  :  public  QObject 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Q_OBJECT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            TestObject ( QObject  * parent  =  0 )  :  QObject ( parent ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                {  m_ui  =  new  Ui ;  m_ui - > w  =  new  QWidget ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_PROPERTY ( QString  myProp1  READ  myProp1  WRITE  setMyProp1 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QString  myProp1 ( )  const  {  return  m_myProp1 ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Q_SLOT  void  setMyProp1 ( const  QString  & mt )  {  m_myProp1  =  mt ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_PROPERTY ( QString  myProp2  READ  myProp2  WRITE  setMyProp2 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QString  myProp2 ( )  const  {  return  m_myProp2 ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Q_SLOT  void  setMyProp2 ( const  QString  & mt )  {  m_myProp2  =  mt ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Ui  * m_ui ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QString  m_myProp1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QString  m_myProp2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }  // namespace Bar
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    }  // namespace Names
 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject2 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QString longString = QString(10000, QLatin1Char('A'));
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if 1 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Names : : Bar : : TestObject  test ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test . setMyProp1 ( " HELLO " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test . setMyProp2 ( " WORLD " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s  =  test . myProp1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  + =  test . myProp2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s "HELLOWORLD" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check test "" qobject::Names::Bar::TestObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-08 14:38:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    #if 0 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QAction  act ( " xxx " ,  & app ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  t  =  act . text ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if 1 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWidget  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setObjectName ( " An Object " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setProperty ( " USER DEFINED 1 " ,  44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setProperty ( " USER DEFINED 2 " ,  QStringList ( )  < <  " FOO "  < <  " BAR " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob1 . setObjectName ( " Another Object " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : connect ( & ob ,  SIGNAL ( destroyed ( ) ) ,  & ob1 ,  SLOT ( deleteLater ( ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : connect ( & ob ,  SIGNAL ( destroyed ( ) ) ,  & ob1 ,  SLOT ( deleteLater ( ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QObject::connect(&app, SIGNAL(lastWindowClosed()), &ob, SLOT(deleteLater()));
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-07 17:11:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    #if 0 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < QObject  * >  obs ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( & ob1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( & app ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob1 . setObjectName ( " A Subobject " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Sender  :  public  QObject 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_OBJECT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Sender ( )  {  setObjectName ( " Sender " ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  doEmit ( )  {  emit  aSignal ( ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    signals : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  aSignal ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Receiver  :  public  QObject 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_OBJECT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Receiver ( )  {  setObjectName ( " Receiver " ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public  slots : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  aSlot ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QObject  * s  =  sender ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  ( s )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                qDebug ( )  < <  " SENDER:  "  < <  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                qDebug ( )  < <  " NO SENDER " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-07 17:11:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testSignalSlot ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Sender  sender ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Receiver  receiver ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : connect ( & sender ,  SIGNAL ( aSignal ( ) ) ,  & receiver ,  SLOT ( aSlot ( ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Break here.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Single step through signal emission.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sender . doEmit ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & sender ,  & receiver ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-07 17:11:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if USE_PRIVATE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-29 13:55:45 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  DerivedObjectPrivate  :  public  QObjectPrivate 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-29 13:55:45 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        DerivedObjectPrivate ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_extraX  =  43 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_extraY . append ( " xxx " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            m_extraZ  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_extraX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringList  m_extraY ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        uint  m_extraZ  :  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_extraA  :  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  m_extraB ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  DerivedObject  :  public  QObject 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_OBJECT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        DerivedObject ( )  :  QObject ( * new  DerivedObjectPrivate ,  0 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_PROPERTY ( int  x  READ  x  WRITE  setX ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_PROPERTY ( QStringList  y  READ  y  WRITE  setY ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_PROPERTY ( uint  z  READ  z  WRITE  setZ ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  x ( )  const ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setX ( int  x ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringList  y ( )  const ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setY ( QStringList  y ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        uint  z ( )  const ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setZ ( uint  z ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_DECLARE_PRIVATE ( DerivedObject ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  DerivedObject : : x ( )  const 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( const  DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  d - > m_extraX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  DerivedObject : : setX ( int  x ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d - > m_extraX  =  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d - > m_extraA  =  ! d - > m_extraA ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d - > m_extraB  =  ! d - > m_extraB ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QStringList  DerivedObject : : y ( )  const 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( const  DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  d - > m_extraY ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  DerivedObject : : setY ( QStringList  y ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d - > m_extraY  =  y ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    uint  DerivedObject : : z ( )  const 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( const  DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  d - > m_extraZ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  DerivedObject : : setZ ( uint  z ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_D ( DerivedObject ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d - > m_extraZ  =  z ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQObjectData ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This checks whether QObject-derived classes with Q_PROPERTYs
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // are displayed properly.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_PRIVATE 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        DerivedObject  ob ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ob.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand ob.properties.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ob.properties.x 43 QVariant (int).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // expand ob and ob.properties
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // step, and check whether x gets updated.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setX ( 23 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setX ( 25 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setX ( 26 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand ob.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand ob.properties.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ob.properties.x 26 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQObjectData ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQObject1 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQObject2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testSignalSlot ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qobject
  
						 
					
						
							
								
									
										
										
										
											2010-07-07 17:11:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-29 09:32:36 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qregexp  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQRegExp ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Works with Python dumpers only.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QRegExp  re ( QString ( " a(.*) b ( . * ) c " )) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check re "a(.*)b(.*)c" QRegExp.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  str1  =  " a1121b344c " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str2  =  " Xa1121b344c " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str1 "a1121b344c" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str2 "Xa1121b344c" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  pos2  =  re . indexIn ( str2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  pos1  =  re . indexIn ( str1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pos1 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pos2 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & pos1 ,  & pos2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qregexp
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qrect  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQPoint ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPoint  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s (0, 0) QPoint.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step over, check display looks sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  QPoint ( 100 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (100, 200) QPoint.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQPointF ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPointF  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s (0, 0) QPointF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step over, check display looks sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  QPointF ( 100 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (100, 200) QPointF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQRect ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QRect  rect ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check rect 0x0+0+0 QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step over, check display looks sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        rect  =  QRect ( 100 ,  100 ,  200 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check rect 200x200+100+100 QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & rect ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQRectF ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QRectF  rect ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check rect 0x0+0+0 QRectF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step over, check display looks sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        rect  =  QRectF ( 100 ,  100 ,  200 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check rect 200x200+100+100 QRectF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & rect ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSize ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSize  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s (-1, -1) QSize.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s  =  QSize ( 100 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (100, 200) QSize.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSizeF ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSizeF  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s (-1, -1) QSizeF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s  =  QSizeF ( 100 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (100, 200) QSizeF.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testGeometry ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQPoint ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQPointF ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQRect ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQRectF ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSize ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSizeF ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qrect
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qregion  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQRegion ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Works with Python dumpers only.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QRegion  region ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check region <empty> QRegion.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step over until end, check display looks sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        region  + =  QRect ( 100 ,  100 ,  200 ,  200 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <1 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.extents QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.innerArea 40000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.innerRect QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.numRects 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.rects <0 items> QVector<QRect>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        region  + =  QRect ( 300 ,  300 ,  400 ,  500 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <2 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.extents QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.innerArea 200000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.innerRect QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.numRects 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.rects <2 items> QVector<QRect>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        region  + =  QRect ( 500 ,  500 ,  600 ,  600 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <4 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.extents QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.innerArea 360000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType region.innerRect QRect.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.numRects 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region.rects <8 items> QVector<QRect>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        region  + =  QRect ( 500 ,  500 ,  600 ,  600 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <4 items> QRegion.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        region  + =  QRect ( 500 ,  500 ,  600 ,  600 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <4 items> QRegion.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        region  + =  QRect ( 500 ,  500 ,  600 ,  600 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check region <4 items> QRegion.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & region ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qregion
  
						 
					
						
							
								
									
										
										
										
											2010-06-30 15:20:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  plugin  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testPlugin ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  dir  =  QDir : : currentPath ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifdef Q_OS_LINUX 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLibrary  lib ( dir  +  " /libsimple_test_plugin.so " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifdef Q_OS_MAC 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dir  =  QFileInfo ( dir  +  " /../.. " ) . canonicalPath ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLibrary  lib ( dir  +  " /libsimple_test_plugin.dylib " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifdef Q_OS_WIN 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLibrary  lib ( dir  +  " /debug/simple_test_plugin.dll " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifdef Q_OS_SYMBIAN 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLibrary  lib ( dir  +  " /libsimple_test_plugin.dll " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType dir QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check lib "" QLibrary.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check name <not accessible> QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType res int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  ( * foo ) ( )  =  ( int ( * ) ( ) )  lib . resolve ( " pluginTest " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  name  =  lib . fileName ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  res  =  4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( foo )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Check res 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Step
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            res  =  foo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  else  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Step
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            name  =  lib . errorString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & name ,  & res ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace plugin
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  final  {  
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQSettings ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Note: Construct a QCoreApplication first.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSettings  settings ( " /tmp/test.ini " ,  QSettings : : IniFormat ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  value  =  settings . value ( " item1 " , " " ) . toString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check settings "" QSettings.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand settings.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check settings.QObject "" QSettings.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check value "" QVariant (QString).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & settings ,  & value ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testNullPointerDeref ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ;  // Uncomment.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        * ( int  * ) 0  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testEndlessRecursion ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ;  // Uncomment.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testEndlessRecursion ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testEndlessLoop ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qlonglong  a  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // gdb:
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Breakpoint at "while" will stop only once
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Hitting "Pause" button might show backtrace of different thread
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Jump over next line.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        while  ( a  >  0 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            + + a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testUncaughtException ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Jump over next line.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        throw  42 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testApplicationStart ( QCoreApplication  * app ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str  =  QString : : fromUtf8 ( " XXXXXXXXXXXXXXyyXXX ö " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLabel  l ( str ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . setObjectName ( " Some Label " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . show ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Jump over next line.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        app - > exec ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & app ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testFinal ( QCoreApplication  * app ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This contains all "final" tests that do not allow proceeding
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // with further tests.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQSettings ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testNullPointerDeref ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testEndlessLoop ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testEndlessRecursion ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testUncaughtException ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testApplicationStart ( app ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace final
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qset  {  
						 
					
						
							
								
									
										
										
										
											2008-12-05 18:44:09 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQSet1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSet < int >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( 11 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QSet<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.22 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.11 11 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSet2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSet < QString >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( " 11.0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( " 22.0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QSet<QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSet3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSet < QPointer < QObject >  >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPointer < QObject >  ptr ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( ptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( ptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . insert ( ptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <1 items> QSet<QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 QPointer<QObject>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSet ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSet1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSet2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSet3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qset
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qsharedpointer  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_SHARED_POINTER 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  EmployeeData  :  public  QSharedData 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        EmployeeData ( )  :  id ( - 1 )  {  name . clear ( ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        EmployeeData ( const  EmployeeData  & other ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  QSharedData ( other ) ,  id ( other . id ) ,  name ( other . name )  {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ~ EmployeeData ( )  {  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  name ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Employee 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Employee ( )  {  d  =  new  EmployeeData ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Employee ( int  id ,  QString  name )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            d  =  new  EmployeeData ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            setId ( id ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            setName ( name ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Employee ( const  Employee  & other ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								              :  d  ( other . d ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setId ( int  id )  {  d - > id  =  id ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setName ( QString  name )  {  d - > name  =  name ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  id ( )  const  {  return  d - > id ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  name ( )  const  {  return  d - > name ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         QSharedDataPointer < EmployeeData >  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < int >  ptr ( new  int ( 43 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < int >  ptr2  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < int >  ptr3  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & ptr2 ,  & ptr3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < QString >  ptr ( new  QString ( " hallo " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < QString >  ptr2  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < QString >  ptr3  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & ptr2 ,  & ptr3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < int >  iptr ( new  int ( 43 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < int >  ptr ( iptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < int >  ptr2  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < int >  ptr3  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & ptr2 ,  & ptr3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < QString >  sptr ( new  QString ( " hallo " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < QString >  ptr ( sptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < QString >  ptr2  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < QString >  ptr3  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & ptr2 ,  & ptr3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QSharedPointer < Foo >  fptr ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < Foo >  ptr ( fptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < Foo >  ptr2  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWeakPointer < Foo >  ptr3  =  ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ,  & ptr2 ,  & ptr3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSharedPointer1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSharedPointer2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSharedPointer3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSharedPointer4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSharedPointer5 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQSharedPointer ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qsharedpointer
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qxml  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQXmlAttributes ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // only works with Python dumper
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QXmlAttributes  atts ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        atts . append ( " name1 " ,  " uri1 " ,  " localPart1 " ,  " value1 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        atts . append ( " name2 " ,  " uri2 " ,  " localPart2 " ,  " value2 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        atts . append ( " name3 " ,  " uri3 " ,  " localPart3 " ,  " value3 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType atts QXmlAttributes.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand atts.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType atts.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList <3 items> QXmlAttributes::AttributeList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand atts.attList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType atts.attList.0 QXmlAttributes::Attribute.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand atts.attList.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.0.localname "localPart1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.0.qname "name1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.0.uri "uri1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.0.value "value1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType atts.attList.1 QXmlAttributes::Attribute.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand atts.attList.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.1.localname "localPart2" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.1.qname "name2" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.1.uri "uri2" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.1.value "value2" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType atts.attList.2 QXmlAttributes::Attribute.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand atts.attList.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.2.localname "localPart3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.2.qname "name3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.2.uri "uri3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList.2.value "value3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.d <unavailable synchronous data> .
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qxml
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  stddeque  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDequeInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : deque < int >  deque ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.1 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & deque ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDequeIntStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : deque < int  * >  deque ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( new  int ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( new  int ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <3 items> std::deque<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.1 0x0 int *.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        deque . pop_back ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . pop_front ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . pop_front ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & deque ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDequeFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : deque < Foo >  deque ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_front ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand deque.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.0.a 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand deque.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.1.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & deque ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDequeFooStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : deque < Foo  * >  deque ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand deque.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand deque.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & deque ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDeque ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdDequeInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdDequeIntStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdDequeFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdDequeFooStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stddeque
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  stdhashset  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdHashSet ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_GCC_EXT 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  __gnu_cxx ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash_set < int >  h ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        h . insert ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        h . insert ( 194 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        h . insert ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        h . insert ( 3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check h <4 items> __gnu__cxx::hash_set<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand h.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check h.0 194 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check h.1 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check h.2 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check h.3 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & h ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdhashset
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  stdlist  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdListInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdListIntStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < int  * >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( new  int ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( new  int ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> std::list<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 0x0 int *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdListIntBig ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  10000 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            list . push_back ( i ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <more than 1000 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.999 999 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdListFoo ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : list < Foo >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 15 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 16 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 15 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1.a 16 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdListFooStar ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : list < Foo  * >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> std::list<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.2.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdListBool ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-17 15:34:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : list < bool >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( false ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 false bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-17 15:34:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListIntStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListIntBig ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListFooStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdListBool ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-04-17 15:34:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace stdlist
  
						 
					
						
							
								
									
										
										
										
											2009-04-07 13:50:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-04-28 10:58:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdmap  {  
						 
					
						
							
								
									
										
										
										
											2009-04-28 10:58:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapStringFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < QString ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 44.0 " ]  =  Foo ( 44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> std::map<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.first "44.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.2.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.2.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.second.a 44 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapCharStarFoo ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : map < const  char  * ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<char const*, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.first.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first.*first 50 '2' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.first.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first.*first 51 '3' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second.a 33 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapUIntUInt ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : map < uint ,  uint >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<unsigned int, unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.22 2 unsigned int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapUIntStringList ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : map < uint ,  QStringList >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.0 "11" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first 22 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second.0 "22" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapUIntStringListTypedef ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        typedef  std : : map < uint ,  QStringList >  T ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        T  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> stdmap::T.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapUIntFloat ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : map < uint ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.22 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapStringFloat ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : map < QString ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 11.0 " ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second 22 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapIntString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < int ,  QString >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  " 11.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  " 22.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapStringPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < QString ,  QPointer < QObject >  >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " Hallo " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " Welt " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " . " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> std::map<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.first "Welt" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapCharStarFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntUInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntStringListTypedef ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapStringFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapIntString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapStringPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace stdmap
  
						 
					
						
							
								
									
										
										
										
											2010-06-11 13:44:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-04-07 13:50:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdset  {  
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSetInt ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : set < int >  set ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 11 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 33 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check set <not accessible> QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & set ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSetString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : set < QString >  set ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( " 22.0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check set <1 items> std::set<QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand set.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check set.0 "22.0" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & set ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSetPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : set < QPointer < QObject >  >  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QPointer < QObject >  ptr ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <0 items> std::set<QPointer<QObject>, std::less<QPointer<QObject>>, std::allocator<QPointer<QObject>>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ob "" QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ptr QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ptr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-11 16:10:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSet ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdSetInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdSetString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdSetPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-11 16:10:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace stdset
  
						 
					
						
							
								
									
										
										
										
											2009-03-11 13:31:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdstack  {  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdStack1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This does not work with the compiled dumpers.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : stack < int  * >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <0 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( new  int ( 1 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <1 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( 0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( new  int ( 2 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <3 items> std::stack<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 0x0 int *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . pop ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . pop ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <1 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . pop ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <0 items> std::stack<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdStack2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : stack < int >  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <0 items> std::stack<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( 1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <1 items> std::stack<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( 2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdStack3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : stack < Foo  * >  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <0 items> std::stack<Foo*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <1 items> std::stack<Foo*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdStack4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : stack < Foo >  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <0 items> std::stack<Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( 1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <1 items> std::stack<Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . push ( 2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdStack ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdStack1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdStack2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdStack3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdStack4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdstack
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  stdstring  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdString1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  str ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : wstring  wstr ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check str "" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check wstr "" std::wstring.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        str  + =  " b " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstr  + =  wchar_t ( ' e ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " d " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstr  + =  wchar_t ( ' e ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " e " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " b " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " d " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " e " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstr  + =  wchar_t ( ' e ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstr  + =  wchar_t ( ' e ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " e " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str "bdebdee" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check wstr "eeee" std::wstring.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ,  & wstr ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdString2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  str  =  " foo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < std : : string >  l ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <0 items> QList<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str "foo" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <1 items> QList<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <2 items> QList<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <3 items> QList<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        l . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <4 items> QList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.0 std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.3 std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str "foo" std::string.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ,  & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdString3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  str  =  " foo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : vector < std : : string >  v ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check str "foo" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <0 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <1 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <2 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <3 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( str ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0 "foo" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.3 "foo" std::string.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ,  & v ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdString1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdString2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdString3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdstring
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  stdvector  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : vector < int  * >  v ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <0 items> std::vector<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( new  int ( 1 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <1 items> std::vector<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( 0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <2 items> std::vector<int*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        v . push_back ( new  int ( 2 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <3 items> std::vector<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 0x0 int *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.2 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : vector < int >  v ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 4 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.3 4 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Foo  f ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < Foo  * >  v ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <3 items> std::vector<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.0.x.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.2.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < Foo >  v ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 4 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.0.x.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v.3 Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < bool >  v ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( false ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( false ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( false ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <5 items> std::vector<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0 1 bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 0 bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.2 0 bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.3 1 bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.4 0 bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector6 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : vector < std : : list < int >  * >  vector ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vector . push_back ( new  std : : list < int > ( list ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vector . push_back ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . push_back ( 45 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vector . push_back ( new  std : : list < int > ( list ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vector . push_back ( 0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <1 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 45 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vector <4 items> std::vector<std::list<int>*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vector.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vector.0 <0 items> std::list<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vector.2 <1 items> std::list<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vector.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vector.2.0 45 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vector.3 0x0 std::list<int> *.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vector ,  & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdVector ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector5 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVector6 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdvector
  
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdstream  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdStream ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  std ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ifstream  is ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType is std::ifstream.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ok false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        is . open ( " /etc/passwd " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        bool  ok  =  is . good ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ok true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & is ,  & ok ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdstream
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  itemmodel  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testItemModel ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //char buf[100];
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QString *s = static_cast<QString *>(static_cast<void *>(&(v.data_ptr().data.c)));
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QString *t = (QString *)&(v.data_ptr());
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStandardItemModel  m ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStandardItem  * i1 ,  * i2 ,  * i11 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m . appendRow ( QList < QStandardItem  * > ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             < <  ( i1  =  new  QStandardItem ( " 1 " ) )  < <  ( new  QStandardItem ( " a " ) )  < <  ( new  QStandardItem ( " a2 " ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QModelIndex  mi  =  i1 - > index ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m . appendRow ( QList < QStandardItem  * > ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             < <  ( i2  =  new  QStandardItem ( " 2 " ) )  < <  ( new  QStandardItem ( " b " ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i1 - > appendRow ( QList < QStandardItem  * > ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             < <  ( i11  =  new  QStandardItem ( " 11 " ) )  < <  ( new  QStandardItem ( " aa " ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType i1 QStandardItem.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType i11 QStandardItem.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType i2 QStandardItem.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m "" QStandardItemModel.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check mi "1" QModelIndex.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i1 ,  & mi ,  & m ,  & i2 ,  & i11 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace itemmodel
  
						 
					
						
							
								
									
										
										
										
											2009-06-03 12:46:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qstack  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStackInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < int >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QStack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStackBig ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < int >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  10000 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            s . append ( i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <10000 items> QStack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1999 1999 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStackFooPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < Foo  * >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <3 items> QStack<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.2.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStackFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < Foo >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( 4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <4 items> QStack<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.3 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s.3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.3.a 4 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStackBool ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < bool >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . append ( false ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QStack<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 false bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:46:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStack ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStackInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStackBig ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStackFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStackFooPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStackBool ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qstack
  
						 
					
						
							
								
									
										
										
										
											2009-08-28 09:44:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qurl  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQUrl ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QUrl  url ( QString ( " http://www.nokia.com " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check url "http://www.nokia.com" QUrl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & url ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qurl
  
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qstring   {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStringQuotes ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str1 ( " Hello Qt " ) ;  // --> Value: "Hello Qt"
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str2 ( " Hello \n Qt " ) ;  // --> Value: ""Hello\nQt"" (double quote not expected)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str3 ( " Hello \r Qt " ) ;  // --> Value: ""HelloQt"" (double quote and missing \r not expected)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str4 ( " Hello \t Qt " ) ;  // --> Value: "Hello\9Qt" (expected \t instead of \9)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check str1 "Hello Qt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str2 "Hello\nQt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str3 "Hello\rQt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str4 "Hello\tQt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str1 ,  & str2 ,  & str3 ,  & str4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQString1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str  =  " Hello  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  big,  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " \t " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " \r " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  " \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  QLatin1Char ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  QLatin1Char ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  fat  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  World  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  World  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check str "Hello  big, \t\r\n\000\001 fat  World  World " QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  stringRefTest ( const  QString  & refstring ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & refstring ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQString3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str  =  " Hello  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  big,  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  fat  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str  + =  "  World  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  string ( " String Test " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  * pstring  =  new  QString ( " Pointer String Test " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        stringRefTest ( QString ( " Ref String Test " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        string  =  " Hi " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        string  + =  " Du " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  string ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType pstring QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str "Hello  big,  fat  World " QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check string "HiDu" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        delete  pstring ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ,  & string ,  pstring ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQString1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQString3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStringQuotes ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qstring
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qstringlist  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStringList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringList  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l  < <  " Hello  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l  < <  "  big,  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l  < <  "  fat  " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . takeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l  < <  "  World  " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <3 items> QStringList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 " big, " QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.1 " fat " QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.2 " World " QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qstringlist
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  formats  {  
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  wchar_t  * w  =  L " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  u ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( sizeof ( wchar_t )  = =  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            u  =  QString : : fromUcs4 ( ( uint  * ) w ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            u  =  QString : : fromUtf16 ( ( ushort  * ) w ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check u "a\366a" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType w wchar_t *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // All: Select UTF-8 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Windows: Select UTF-16 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Other: Select UCS-6 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & u ,  & w ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-12 11:52:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testCharPointers ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // These tests should result in properly displayed umlauts in the
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Locals&Watchers view. It is only support on gdb with Python.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * s  =  " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * t  =  " a \xc3 \xb6 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  wchar_t  * w  =  L " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType t char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType w wchar_t *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // All: Select UTF-8 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Windows: Select UTF-16 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Other: Select UCS-6 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  unsigned  char  uu [ ]  =  {  ' a ' ,  uchar ( ' ö ' ) ,  ' a '  } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-04 17:38:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  unsigned  char  * u  =  uu ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType u unsigned char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType uu unsigned char [3].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-04 17:38:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Make sure to undo "Change Format".
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-04 17:38:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & w ,  & t ,  & u ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testCharArrays ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // These tests should result in properly displayed umlauts in the
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Locals&Watchers view. It is only support on gdb with Python.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  s [ ]  =  " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-30 11:09:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  char  t [ ]  =  " aöax " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  wchar_t  w [ ]  =  L " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char [5].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType t char [6].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType w wchar_t [4].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // All: Select UTF-8 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Windows: Select UTF-16 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Other: Select UCS-6 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Make sure to undo "Change Format".
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-30 11:09:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & w ,  & t ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 18:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testFormats ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testCharPointers ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testCharArrays ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace formats
  
						 
					
						
							
								
									
										
										
										
											2010-10-12 11:52:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  text  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testText ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //char *argv[] = { "xxx", 0 };
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QTextDocument  doc ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        doc . setPlainText ( " Hallo \n World " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QTextCursor  tc ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType doc QTextDocument.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        tc  =  doc . find ( " all " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check tc 4 QTextCursor.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  pos  =  tc . position ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pos 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  anc  =  tc . anchor ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check anc 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & pos ,  & anc ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace text
  
						 
					
						
							
								
									
										
										
										
											2010-09-28 09:35:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qthread  {  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  Thread  :  public  QThread 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Thread ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  setId ( int  id )  {  m_id  =  id ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-01 14:15:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        void  run ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  j  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            + + j ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            for  ( int  i  =  0 ;  i  ! =  1000 ;  + + i )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                //sleep(1);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                std : : cerr  < <  m_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            if  ( m_id  = =  2 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                + + j ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            if  ( m_id  = =  3 )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Check j 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // CheckType this qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Expand this.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check this.QThread "This is thread #3" qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                dummyStatement ( this ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            std : : cerr  < <  j ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  m_id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQThread ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        //return;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  int  N  =  14 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Thread  thread [ N ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  N ;  + + i )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            thread [ i ] . setId ( i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            thread [ i ] . setObjectName ( " This is thread # "  +  QString : : number ( i ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            thread [ i ] . start ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType thread qthread::Thread [14].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand thread.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check thread.0 "This is thread #0" qthread::Thread.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check thread.13 "This is thread #13" qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  N ;  + + i )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            thread [ i ] . wait ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & thread ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-05-20 11:34:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								Q_DECLARE_METATYPE ( QHostAddress )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Q_DECLARE_METATYPE ( QList < int > )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Q_DECLARE_METATYPE ( QStringList )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define COMMA , 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Q_DECLARE_METATYPE ( QMap < uint  COMMA  QStringList > )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qvariant  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  value ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant : : Type  t  =  QVariant : : String ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        value  =  QVariant ( t ,  ( void * ) 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        * ( QString * ) value . data ( )  =  QString ( " Some string " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check t QVariant::String (10) QVariant::Type.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check value "Some string" QVariant (QString).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check the variant contains a proper QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var contains objects of the types indicated.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVariant  var ;                         // Type 0, invalid
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var (invalid) QVariant (invalid).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( true ) ;                   // 1, bool
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var true QVariant (bool).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( 2 ) ;                      // 2, int
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 2 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( 3u ) ;                     // 3, uint
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 3 QVariant (uint).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( qlonglong ( 4 ) ) ;           // 4, qlonglong
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 4 QVariant (qlonglong).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( qulonglong ( 5 ) ) ;          // 5, qulonglong
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 5 QVariant (qulonglong).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( double ( 6 ) ) ;              // 6, double
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 6 QVariant (double).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QChar ( 7 ) ) ;               // 7, QChar
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var '?' (7) QVariant (QChar).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        //None,          # 8, QVariantMap
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // None,          # 9, QVariantList
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( QString ( " Hello 10 " ) ) ;    // 10, QString
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var "Hello 10" QVariant (QString).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QRect ( 100 ,  200 ,  300 ,  400 ) ) ;  // 19 QRect
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 300x400+100+200 QVariant (QRect).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QRectF ( 100 ,  200 ,  300 ,  400 ) ) ;  // 19 QRectF
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var 300x400+100+200 QVariant (QRectF).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        /*
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QStringList " ,  #  11 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QByteArray " ,   #  12 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QBitArray " ,    #  13 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QDate " ,        #  14 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QTime " ,        #  15 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QDateTime " ,    #  16 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QUrl " ,         #  17 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QLocale " ,      #  18 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QRect " ,        #  19 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QRectF " ,       #  20 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QSize " ,        #  21 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QSizeF " ,       #  22 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QLine " ,        #  23 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QLineF " ,       #  24 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QPoint " ,       #  25 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QPointF " ,      #  26 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         " QRegExp " ,      #  27 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         */ 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & var ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  var ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var (invalid) QVariant (invalid).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check the list is updated properly.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( QStringList ( )  < <  " World " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var <1 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0 "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QStringList ( )  < <  " World "  < <  " Hello " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var <2 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1 "Hello" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QStringList ( )  < <  " Hello "  < <  " Hello " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var <2 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0 "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1 "Hello" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( QStringList ( )  < <  " World "  < <  " Hello "  < <  " Hello " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var <3 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0 "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & var ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  var ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHostAddress  ha ( " 127.0.0.1 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( ha ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHostAddress  ha1  =  var . value < QHostAddress > ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ha "127.0.0.1" QHostAddress.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ha.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha.a 0 quint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ha.a6 Q_IPV6ADDR.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha.ipString "127.0.0.1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha.isParsed false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha.protocol QAbstractSocket::UnknownNetworkLayerProtocol (-1) QAbstractSocket::NetworkLayerProtocol.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha.scopeId "" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ha1 "127.0.0.1" QHostAddress.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ha1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha1.a 0 quint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ha1.a6 Q_IPV6ADDR.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha1.ipString "127.0.0.1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha1.isParsed false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha1.protocol QAbstractSocket::UnknownNetworkLayerProtocol (-1) QAbstractSocket::NetworkLayerProtocol.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ha1.scopeId "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var <unavailable synchronous data> QVariant (Non).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ha, ha1 and var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var and ha1 look correct.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ha1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This checks user defined types in QVariants.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  QMap < uint ,  QStringList >  MyType ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyType  my ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        my [ 1 ]  =  ( QStringList ( )  < <  " Hello " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        my [ 3 ]  =  ( QStringList ( )  < <  " World " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  var ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( my ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // FIXME: Known to break
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //QString type = var.typeName();
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( my ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check my <2 items> qvariant::MyType.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand my.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand my.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.key 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand my.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.value.0 "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand my.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.key 3 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand my.1.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.value.0 "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var <2 items> QVariant (MyType).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand var.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0.key 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand var.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.0.value.0 "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand var.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1.key 3 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand var.1.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.1.value.0 "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        var . setValue ( my ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( my ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        var . setValue ( my ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & var ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant6 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list  < <  1  < <  2  < <  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  variant  =  qVariantFromValue ( list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check variant <3 items> QVariant (QList<int>).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand variant.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        list . clear ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list  =  qVariantValue < QList < int >  > ( variant ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & list ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariantList ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariantList  vl ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vl <0 items> QVariantList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vl . append ( QVariant ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vl . append ( QVariant ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vl . append ( QVariant ( " Some String " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vl . append ( QVariant ( 21 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vl . append ( QVariant ( 22 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vl . append ( QVariant ( " 2Some String " ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vl <6 items> QVariantList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vl.0 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vl.2 QVariant (QString).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vl ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVariantMap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariantMap  vm ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vm <0 items> QVariantMap.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vm [ " a " ]  =  QVariant ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vm [ " b " ]  =  QVariant ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vm [ " c " ]  =  QVariant ( " Some String " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vm [ " d " ]  =  QVariant ( 21 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vm [ " e " ]  =  QVariant ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vm [ " f " ]  =  QVariant ( " 2Some String " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vm <6 items> QVariantMap.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vm.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.0   QMapNode<QString, QVariant>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vm.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.0.key "a" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.0.value 1 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.5   QMapNode<QString, QVariant>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vm.5.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.5.key "f" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.5.value "2Some String" QVariant (QString).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vm ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant5 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariant6 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQVariantList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVariantMap ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qvariant
  
						 
					
						
							
								
									
										
										
										
											2010-10-07 16:36:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qvector  {  
						 
					
						
							
								
									
										
										
										
											2008-12-10 16:48:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorIntBig ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This tests the display of a big vector.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < int >  vec ( 10000 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <10000 items> QVector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1999 0 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // step over
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // check that the display updates in reasonable time
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vec [ 1 ]  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec [ 2 ]  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( 1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec <10002 items> QVector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.2 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vec ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorFoo ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This tests the display of a vector of pointers to custom structs.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < Foo >  vec ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <0 items> QVector<Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // step over, check display.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vec . append ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( 2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec <2 items> QVector<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vec ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    typedef  QVector < Foo >  FooVector ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorFooTypedef ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        FooVector  vec ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( Foo ( 3 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & vec ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorFooStar ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This tests the display of a vector of pointers to custom structs.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < Foo  * >  vec ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <0 items> QVector<Foo*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // step over
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // check that the display is ok.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vec . append ( new  Foo ( 1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( new  Foo ( 2 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // switch "Auto derefencing pointers" in Locals context menu
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // off and on again, and check result looks sane.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec <3 items> QVector<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.2.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vec ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorBool ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This tests the display of a vector of custom structs.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVector < bool >  vec ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <0 items> QVector<bool>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // step over
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // check that the display is ok.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( true ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( false ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec <2 items> QVector<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 false bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & vec ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVectorListInt ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < QList < int >  >  vec ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVector < QList < int >  >  * pv  =  & vec ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType pv QVector<QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec <0 items> QVector<QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vec . append ( QList < int > ( )  < <  1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        vec . append ( QList < int > ( )  < <  2  < <  3 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType pv QVector<QList<int>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand pv.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.0 <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand pv.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.0.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.1 <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand pv.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.1.0 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.1.1 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <2 items> QVector<QList<int>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0 <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand vec.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1.0 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1.1 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( pv ,  & vec ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-05-25 17:19:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQVector ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQVectorIntBig ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVectorFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVectorFooTypedef ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVectorFooStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVectorBool ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQVectorListInt ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2009-07-08 17:27:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace qvector
  
						 
					
						
							
								
									
										
										
										
											2009-07-08 17:27:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  noargs  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Goo 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       Goo ( const  QString  & str ,  const  int  n )  :  str_ ( str ) ,  n_ ( n )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       QString  str_ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								       int  n_ ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    typedef  QList < Goo >  GooList ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testNoArgumentName ( int  i ,  int ,  int  k ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        GooList  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( Goo ( " Hello " ,  1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list . append ( Goo ( " World " ,  2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < Goo >  list2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2 . append ( Goo ( " Hello " ,  1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2 . append ( Goo ( " World " ,  2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check i 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check k 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list <2 items> noargs::GooList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.0 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.n_ 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.str_ "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1.n_ 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1.str_ "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list2 <2 items> QList<noargs::Goo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list2.0 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list2.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.0.n_ 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.0.str_ "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list2.1 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand list2.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.1.n_ 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.1.str_ "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i ,  & k ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace noargs
  
						 
					
						
							
								
									
										
										
										
											2009-07-08 17:27:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-05-25 17:19:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								void  foo ( )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( int )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( QList < int > )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( QList < QVector < int >  > )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( QList < QVector < int >  * > )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( QList < QVector < int  * >  * > )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								template  < class  T >  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								void  foo ( QList < QVector < T >  * > )  { }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  namespc  {  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  MyBase  :  public  QObject 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyBase ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        virtual  void  doit ( int  i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								           n  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    protected : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  n ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    namespace  nested  { 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        class  MyFoo  :  public  MyBase 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            MyFoo ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            virtual  void  doit ( int  i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Note there's a local 'n' and one in the base class.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                n  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        protected : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  n ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        class  MyBar  :  public  MyFoo 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            virtual  void  doit ( int  i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								               n  =  i  +  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        namespace  { 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            class  MyAnon  :  public  MyBar 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                virtual  void  doit ( int  i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                   n  =  i  +  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            namespace  baz  { 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                class  MyBaz  :  public  MyAnon 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    virtual  void  doit ( int  i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       n  =  i  +  5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                } ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            }  // namespace baz
 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }  // namespace anon
 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    }  // namespace nested
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testNamespace ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This checks whether classes with "special" names are
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // properly displayed.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  nested ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyFoo  foo ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyBar  bar ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyAnon  anon ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        baz : : MyBaz  baz ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType anon namespc::nested::(anonymous namespace)::MyAnon.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bar namespc::nested::MyBar.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType baz namespc::nested::(anonymous namespace)::baz::MyBaz.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType foo namespc::nested::MyFoo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // step into the doit() functions
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        baz . doit ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        anon . doit ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        foo . doit ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bar . doit ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace namespc
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-23 12:34:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Z  :  public  QObject  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								public :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Z ( )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f  =  new  Foo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Foo  * f ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-12-08 14:08:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  testMemoryView ( )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  a [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    for  ( int  i  =  0 ;  i  ! =  20 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a [ i ]  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-01-04 13:16:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								QString  fooxx ( )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  " bababa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  basic  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // This tests display of basic types.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testArray1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        XX  xx ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  * f  =  & xx ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  ff ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  d [ 3 ] [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  3 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            for  ( int  j  =  0 ;  j  ! =  3 ;  + + j ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                d [ i ] [ j ]  =  i  +  j ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType d double [3][3].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand d.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType d.0 double [3].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand d.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d.0.0 0 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d.0.2 2 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType d.2 double [3].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f XX.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ff Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType x X.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType xx XX.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & x ,  & f ,  & d ,  & ff ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testArray2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  c [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        c [ 0 ]  =  ' a ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        c [ 1 ]  =  ' b ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        c [ 2 ]  =  ' c ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        c [ 3 ]  =  ' d ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType c char [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.0 97 'a' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.3 100 'd' char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & c ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testArray3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s [ 0 ]  =  " a " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s [ 1 ]  =  " b " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s [ 2 ]  =  " c " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s [ 3 ]  =  " d " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s QString [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 "a" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.3 "d" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.4 "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.19 "" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testArray4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  b [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b [ 0 ]  =  " a " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b [ 1 ]  =  " b " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b [ 2 ]  =  " c " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b [ 3 ]  =  " d " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType b QByteArray [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand b.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b.0 "a" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b.3 "d" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b.4 "" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b.19 "" QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & b ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testArray5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  foo [ 10 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //for (int i = 0; i != sizeof(foo)/sizeof(foo[0]); ++i) {
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  5 ;  + + i )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            foo [ i ] . a  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            foo [ i ] . doit ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType foo Foo [10].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType foo.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType foo.9 Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & foo ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-5326
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testChar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  s [ 5 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s [ 0 ]  =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char [5].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0 0 '\0' char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand 's' in Locals view.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Open pinnable tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Step over.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check that display and tooltip look sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s , " a " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s , " b " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Close tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-12 09:29:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    static  char  buf [ 20 ]  =  {  0  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testCharStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  * s  =  buf ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char *.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.*s 0 '\0' char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-12 09:29:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand 's' in Locals view.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Open pinnable tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Step over.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check that display and tooltip look sane.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  strcat ( s , " a " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  strcat ( s , " b " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  strcat ( s , " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Close tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  S 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        uint  x  :  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        uint  y  :  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  c  :  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        float  f ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qreal  q ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBitfields ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This checks whether bitfields are properly displayed
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s basic::S.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.b bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.c bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.d double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.f float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.i int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.q qreal.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.x uint.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.y uint.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s . i  =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  Function 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Function ( QByteArray  var ,  QByteArray  f ,  double  min ,  double  max ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          :  var ( var ) ,  f ( f ) ,  min ( min ) ,  max ( max )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  var ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  f ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  min ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  max ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testFunction ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // In order to use this, switch on the 'qDump__Function' in dumper.py
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Function  func ( " x " ,  " sin(x) " , 0, 1) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType func basic::Function.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand func.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.f "sin(x)" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.max 1 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.min 0 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.var "x" QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        func . max  =  10 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func . f  =  " cos(x) " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func . max  =  4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func . max  =  5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func . max  =  6 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func . max  =  7 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType func basic::Function.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand func.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.f "cos(x)" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check func.max 7 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & func ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  Color 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  r , g , b , a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Color ( )  {  r  =  1 ,  g  =  2 ,  b  =  3 ,  a  =  4 ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-11-16 17:09:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testAlphabeticSorting ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This checks whether alphabetic sorting of structure
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // members work.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Color  c ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType c basic::Color.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.a 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.b 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.g 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c.r 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Toogle "Sort Member Alphabetically" in context menu
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // of "Locals and Expressions" view.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check that order of displayed members changes.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & c ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    namespace  ns  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  unsigned  long  long  vl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  vl  verylong ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testTypedef ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        typedef  quint32  myType1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  unsigned  int  myType2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myType1  t1  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myType2  t2  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ns : : vl  j  =  1000 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ns : : verylong  k  =  1000 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check j 1000 basic::ns::vl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check k 1000 basic::ns::verylong.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check t1 0 basic::myType1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check t2 0 basic::myType2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & j ,  & k ,  & t1 ,  & t2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStruct ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  f ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f . doit ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f . doit ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f . doit ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.a 5 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.b 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & f ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:38:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testUnion ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        union  U 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								          int  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  u ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType u basic::U.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand u.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType u.a int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType u.b int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:38:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & u ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testUninitialized ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This tests the display of uninitialized data.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hii <not accessible> QHash<int, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hss <not accessible> QHash<QString, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check li <not accessible> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType mii Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check mss <not accessible> QMap<QString, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s <not accessible> QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check si <not accessible> QStack<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check sl <not accessible> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check sli <not accessible> std::list<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType smii std::map<int, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType smss std::map<std::string, std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ss std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ssi <not accessible> std::stack<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ssl <not accessible> std::list<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType svi std::vector<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vi <not accessible> QVector<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check the display: All values should be <uninitialized> or random data.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check that nothing bad happens if items with random data
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // are expanded.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringList  sl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < int ,  int >  mii ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < QString ,  QString >  mss ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < int ,  int >  hii ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHash < QString ,  QString >  hss ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  li ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVector < int >  vi ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStack < int >  si ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  ss ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < int ,  int >  smii ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < std : : string ,  std : : string >  smss ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < int >  sli ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : list < std : : string >  ssl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : vector < int >  svi ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : stack < int >  ssi ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & sl ,  & mii ,  & mss ,  & hii ,  & hss ,  & si ,  & vi ,  & li , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       & ss ,  & smii ,  & smss ,  & sli ,  & svi ,  & ssi ,  & ssl ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testTypeFormats ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // These tests should result in properly displayed umlauts in the
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Locals and Expressions view. It is only support on gdb with Python.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  char  * s  =  " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  wchar_t  * w  =  L " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  u ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char *.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.*s 97 'a' char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check u "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType w wchar_t *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // All: Select UTF-8 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Windows: Select UTF-16 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Other: Select UCS-6 in "Change Format for Type" in L&W context menu.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        if  ( sizeof ( wchar_t )  = =  4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            u  =  QString : : fromUcs4 ( ( uint  * ) w ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            u  =  QString : : fromUtf16 ( ( ushort  * ) w ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Make sure to undo "Change Format".
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( s ,  w ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    typedef  void  * VoidPtr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    typedef  const  void  * CVoidPtr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  A 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        A ( )  :  test ( 7 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  test ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  doSomething ( CVoidPtr  cp )  const ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  A : : doSomething ( CVoidPtr  cp )  const 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType cp basic::CVoidPtr.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & cp ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  * f  =  new  Foo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.a 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.b 5 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( f ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testPointerTypedef ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        A  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        VoidPtr  p  =  & a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        CVoidPtr  cp  =  & a ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a basic::A.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType cp basic::CVoidPtr.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType p basic::VoidPtr.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . doSomething ( cp ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStringWithNewline ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  hallo  =  " hallo \n welt " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hallo "hallo\nwelt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check that string is properly displayed.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & hallo ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testMemoryView ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a [ 20 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a int [20].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Select "Open Memory View" from Locals and Expressions
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //    context menu for item 'a'.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Step several times.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check the contents of the memory view updates.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  20 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a [ i ]  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testColoredMemoryView ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i  =  42 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  d  =  23 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s  =  " Foo " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d 23 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check i 42 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s "Foo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Select "Open Memory View" from Locals and Expressions
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //    context menu for item 'd'.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check that the opened memory view contains coloured items
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //    for 'i', 'd', and 's'.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ,  & d ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 16:57:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testReference1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a  =  43 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  int  & b  =  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  int  & Ref ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  int  c  =  44 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Ref  d  =  a ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a 43 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b 43 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check c 44 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d 43 basic::Ref.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ,  & c ,  & d ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 16:57:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testReference2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  a  =  " hello " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QString  & b  =  fooxx ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  QString  & Ref ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QString  c  =  " world " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Ref  d  =  a ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a "hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b "bababa" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c "world" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d "hello" basic::Ref.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ,  & c ,  & d ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 16:57:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testLongEvaluation1 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  time  =  QDateTime : : currentDateTime ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  int  N  =  10000 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  bigv [ N ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-19 15:47:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  10000 ;  + + i )  { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            bigv [ i ]  =  time ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-23 22:14:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            time  =  time . addDays ( 1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check N 10000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv QDateTime [10000].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv.0 QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv.9999 QDateTime.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType time QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is expected to take up to a minute.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & bigv ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testLongEvaluation2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  int  N  =  10000 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  bigv [ N ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-19 15:47:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  10000 ;  + + i ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            bigv [ i ]  =  i ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check N 10000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv int [10000].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check bigv.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check bigv.9999 9999 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // This is expected to take up to a minute.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & bigv ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testFork ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QProcess  proc ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        proc . start ( " /bin/ls " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        proc . waitForFinished ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  ba  =  proc . readAllStandardError ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ba . append ( ' x ' ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ba "x" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check proc "" QProcess.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check there is some contents in ba. Error message is expected.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ba ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-25 10:56:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testFunctionPointerHelper ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testFunctionPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  void  ( * func_t ) ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-25 10:56:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        func_t  f2  =  testFunctionPointerHelper ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f2 basic::func_t.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check there's a valid display for f2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & f2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testPassByReferenceHelper ( Foo  & f ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.a 12 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        + + f . a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.a 13 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testPassByReference ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  f ( 12 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testPassByReferenceHelper ( f ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & f ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-15 16:57:43 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBigInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-15 18:28:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        qint64  a  =  Q_INT64_C ( 0xF020304050607080 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        quint64  b  =  Q_UINT64_C ( 0xF020304050607080 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-15 16:57:43 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        quint64  c  =  std : : numeric_limits < quint64 > : : max ( )  -  quint64 ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a -1143861252567568256 qint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b -1143861252567568256 quint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check c -2 quint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-15 16:57:43 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ,  & c ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testHidden ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int   n  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        n  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check n 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        n  =  3 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check n 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            QString  n  =  " 2 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Check n "2" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n@1 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            n  =  " 3 " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n "3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n@1 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                double  n  =  3.5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Check n 3.5 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check n@1 "3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check n@2 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                + + n ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check n 4.5 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check n@1 "3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // Check n@2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                dummyStatement ( & n ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Check n "3" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n@1 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            n  =  " 3 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            n  =  " 4 " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n "4" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Check n@1 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            dummyStatement ( & n ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        + + n ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & n ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBasic ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testReference1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testReference2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testArray1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testArray2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testArray3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testArray4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testArray5 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testChar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testCharStar ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBitfields ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testFunction ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testAlphabeticSorting ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testTypedef ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testPointerTypedef ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStruct ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:38:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testUnion ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testUninitialized ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testTypeFormats ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStringWithNewline ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testMemoryView ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testColoredMemoryView ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testLongEvaluation1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testLongEvaluation2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testFork ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testFunctionPointer ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testPassByReference ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-15 16:57:43 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testBigInt ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testHidden ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace basic
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-02-03 18:23:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  io  {  
						 
					
						
							
								
									
										
										
										
											2010-05-27 18:23:51 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testWCout ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  std ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstring  x  =  L " xxxxx " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wstring : : iterator  i  =  x . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Break here.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        while  ( i  ! =  x . end ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            wcout  < <  * i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            i + + ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcout . flush ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        string  y  =  " yyyyy " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        string : : iterator  j  =  y . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        while  ( j  ! =  y . end ( ) )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            cout  < <  * j ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            j + + ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cout . flush ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-05-27 18:23:51 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testWCout0 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Mixing cout and wcout does not work with gcc.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // See http://gcc.gnu.org/ml/gcc-bugs/2006-05/msg01193.html
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // which also says "you can obtain something close to your
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // expectations by calling std::ios::sync_with_stdio(false);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // at the beginning of your program."
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  std ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //std::ios::sync_with_stdio(false);
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Break here.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcout  < <  L " WWWWWW "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcerr  < <  L " YYYYYY "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cout  < <  " CCCCCC "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cerr  < <  " EEEEEE "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcout  < <  L " WWWWWW "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcerr  < <  L " YYYYYY "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cout  < <  " CCCCCC "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cerr  < <  " EEEEEE "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcout  < <  L " WWWWWW "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wcerr  < <  L " YYYYYY "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cout  < <  " CCCCCC "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cerr  < <  " EEEEEE "  < <  endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testOutput ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  " qDebug() 1 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  " qDebug() 2 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  " qDebug() 3 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  " qDebug <foo & bar> " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cout  < <  " std::cout @@ 1 "  < <  std : : endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cout  < <  " std::cout @@ 2 \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cout  < <  " std::cout @@ 3 "  < <  std : : endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cout  < <  " std::cout <foo & bar> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cerr  < <  " std::cerr 1 \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cerr  < <  " std::cerr 2 \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cerr  < <  " std::cerr 3 \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cerr  < <  " std::cerr <foo & bar> \n " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testInput ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This works only when "Run in terminal" is selected
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // in the Run Configuration.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cin  > >  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  j ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cin  > >  j ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testIO ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testOutput ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //testInput();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //testWCout();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //testWCout0();
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace io
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  sse  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testSSE ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # ifdef __SSE__ 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        float  a [ 4 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        float  b [ 4 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( i  =  0 ;  i  <  4 ;  i + + )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            a [ i ]  =  2  *  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            b [ i ]  =  2  *  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        __m128  sseA ,  sseB ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sseA  =  _mm_loadu_ps ( a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sseB  =  _mm_loadu_ps ( b ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Break here.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand all.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ,  & sseA ,  & sseB ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace sse
  
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  qscript  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQScript ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_SCRIPTLIB 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_UNINITIALIZED_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QScriptEngine  engine ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDateTime  date  =  QDateTime : : currentDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QScriptValue  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d (invalid) QScriptValue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check engine "" QScriptEngine.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (invalid) QScriptValue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check x1 <not accessible> QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s  =  QScriptValue ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  x  =  s . toInt32 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  QScriptValue ( QString ( " 34 " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  x1  =  s . toString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  engine . newVariant ( QVariant ( 43 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVariant  v  =  s . toVariant ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  engine . newVariant ( QVariant ( 43.0 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  engine . newVariant ( QVariant ( QString ( " sss " ) ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  engine . newDate ( date ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x  =  s . toInt32 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  s . toDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . setProperty ( " a " ,  QScriptValue ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QScriptValue  d  =  s . data ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <not accessible> QScriptValue (JSCoreValue).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v 43 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check x 507002817 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check x1 "34" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & x1 ,  & v ,  & s ,  & d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace script
  
						 
					
						
							
								
									
										
										
										
											2011-02-10 15:17:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-04 17:22:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  boost  {  
						 
					
						
							
								
									
										
										
										
											2011-03-04 16:49:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if USE_BOOST 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBoostOptional1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : optional < int >  i ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBoostOptional2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : optional < QStringList >  sl ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sl  =  ( QStringList ( )  < <  " xxx "  < <  " yyy " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sl . get ( ) . append ( " zzz " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & sl ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBoostSharedPtr ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : shared_ptr < int >  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : shared_ptr < int >  i ( new  int ( 43 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : shared_ptr < int >  j  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : shared_ptr < QStringList >  sl ( new  QStringList ( QStringList ( )  < <  " HUH! " ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & j ,  & sl ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoostGregorianDate ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  boost ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  gregorian ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  d ( 2005 ,  Nov ,  29 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Tue Nov 29 2005 boost::gregorian::date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d  + =  months ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Thu Dec 29 2005 boost::gregorian::date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d  + =  months ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Sun Jan 29 2006 boost::gregorian::date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // snap-to-end-of-month behavior kicks in:
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d  + =  months ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Tue Feb 28 2006 boost::gregorian::date6.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Also end of the month (expected in boost)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d  + =  months ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Fri Mar 31 2006 boost::gregorian::date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Not where we started (expected in boost)
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        d  - =  months ( 4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d Tue Nov 30 2005 boost::gregorian::date.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoost ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostOptional1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostOptional2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostSharedPtr ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testBoostGregorianDate ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBoost ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace boost
  
						 
					
						
							
								
									
										
										
										
											2011-03-04 19:26:11 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  mpi  {  
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  structdata 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  ints [ 8 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  chars [ 32 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  doubles [ 5 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    enum  type_t  {  MPI_LB ,  MPI_INT ,  MPI_CHAR ,  MPI_DOUBLE ,  MPI_UB  } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  tree_entry 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        tree_entry ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        tree_entry ( int  l ,  int  o ,  type_t  t ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  blocklength ( l ) ,  offset ( o ) ,  type ( t ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { } 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  blocklength ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  offset ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        type_t  type ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  tree 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        enum  kind_t  {  STRUCT  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  * base ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        kind_t  kind ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  count ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        tree_entry  entries [ 20 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testMPI ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        structdata  buffer  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            //{MPI_LB},
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 0 ,  1024 ,  2048 ,  3072 ,  4096 ,  5120 ,  6144  } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " message to 1 of 2: hello " } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 0 ,  3.14 ,  6.2831853071795862 ,  9.4247779607693793 ,  13 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            //{MPI_UB}
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        tree  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . base  =  & buffer ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . kind  =  tree : : STRUCT ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . count  =  5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . entries [ 0 ]  =  tree_entry ( 1 ,  - 4 ,  MPI_LB ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . entries [ 1 ]  =  tree_entry ( 5 ,   0 ,  MPI_INT ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . entries [ 2 ]  =  tree_entry ( 7 ,  47 ,  MPI_CHAR ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . entries [ 3 ]  =  tree_entry ( 2 ,  76 ,  MPI_DOUBLE ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        x . entries [ 4 ]  =  tree_entry ( 1 ,  100 ,  MPI_UB ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i  =  x . count ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  buffer . ints [ 0 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  buffer . ints [ 1 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  buffer . ints [ 2 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  =  buffer . ints [ 3 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        /*
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                gdb )  print  datatype 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >  $ 3  =  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >    kind  =  STRUCT , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >    count  =  5 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >    entries  =  { { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        blocklength  =  1 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        offset  =  - 4 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        type  =  MPI_LB 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } ,  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        blocklength  =  5 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        offset  =  0 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        type  =  MPI_INT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } ,  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        blocklength  =  7 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        offset  =  47 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        type  =  MPI_CHAR 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } ,  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        blocklength  =  2 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        offset  =  76 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        type  =  MPI_DOUBLE 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } ,  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        blocklength  =  1 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        offset  =  100 , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >        type  =  MPI_UB 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        */ 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace mpi
  
						 
					
						
							
								
									
										
										
										
											2011-03-15 11:23:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 20:03:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//namespace kr {
  
						 
					
						
							
								
									
										
										
										
											2011-05-12 20:03:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // FIXME: put in namespace kr, adjust qdump__KRBase in dumpers/qttypes.py
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  KRBase 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        enum  Type  {  TYPE_A ,  TYPE_B  }  type ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        KRBase ( Type  _type )  :  type ( _type )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-12 20:03:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  KRA  :  KRBase  {  int  x ;  int  y ;  KRA ( ) : KRBase ( TYPE_A ) ,  x ( 1 ) ,  y ( 32 )  { }  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  KRB  :  KRBase  {  KRB ( ) : KRBase ( TYPE_B )  { }  } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-09 08:35:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//} // namespace kr
  
						 
					
						
							
								
									
										
										
										
											2011-05-12 20:03:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  kr  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // Only with python.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // This tests qdump__KRBase in dumpers/qttypes.py which uses
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // a static typeflag to dispatch to subclasses.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testKR ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        KRBase  * ptr1  =  new  KRA ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        KRBase  * ptr2  =  new  KRB ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ptr2  =  new  KRB ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr1 KRBase.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptr1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptr1.type KRBase::TYPE_A (0) KRBase::Type.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr2 KRBase.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptr2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptr2.type KRBase::TYPE_B (1) KRBase::Type.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ptr1 ,  & ptr2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namspace kr
  
						 
					
						
							
								
									
										
										
										
											2011-05-12 20:03:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  eigen  {  
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testEigen ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_EIGEN 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  Eigen ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-17 11:30:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Vector3d  test  =  Vector3d : : Zero ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Matrix3d  myMatrix  =  Matrix3d : : Constant ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MatrixXd  myDynamicMatrix ( 30 ,  10 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        myDynamicMatrix ( 0 ,  0 )  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myDynamicMatrix ( 1 ,  0 )  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myDynamicMatrix ( 2 ,  0 )  =  2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Matrix < double ,  12 ,  15 ,  ColMajor >  colMajorMatrix ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Matrix < double ,  12 ,  15 ,  RowMajor >  rowMajorMatrix ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  k  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  12 ;  + + i )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            for  ( int  j  =  0 ;  j  ! =  15 ;  + + j )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                colMajorMatrix ( i ,  j )  =  k ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                rowMajorMatrix ( i ,  j )  =  k ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                + + k ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // check that Locals and Expresssions view looks sane
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & colMajorMatrix ,  & rowMajorMatrix ,  & test , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                       & myMatrix ,  & myDynamicMatrix ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-04 16:59:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug842  {  
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test842 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-842
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        qWarning ( " Test " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check that Application Output pane contains string "Test".
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug842
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  bug3611  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test3611 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-3611
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        typedef  unsigned  char  byte ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        byte  f  =  ' 2 ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  * x  =  ( int * ) & f ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check f 50 bug3611::byte.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        f  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f  + =  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f 53 bug3611::byte.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & f ,  & x ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug3611
  
						 
					
						
							
								
									
										
										
										
											2011-06-06 14:08:13 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug4019  {  
						 
					
						
							
								
									
										
										
										
											2011-05-23 10:56:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-4019
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  A4019 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        A4019 ( )  :  test ( 7 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  test ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        void  doSomething ( )  const ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-23 10:56:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  A4019 : : doSomething ( )  const 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : cout  < <  test  < <  std : : endl ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-23 10:56:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test4019 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        A4019  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        a . doSomething ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-23 10:56:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespave bug4019
  
						 
					
						
							
								
									
										
										
										
											2011-05-27 15:19:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug4997  {  
						 
					
						
							
								
									
										
										
										
											2011-06-22 13:16:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-4997
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test4997 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  std ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // cin.get(); // if commented out, the debugger doesn't stop at the breakpoint
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // in the next line on Windows when "Run in Terminal" is used.^
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2011-05-27 15:19:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 14:57:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug4904  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-4904
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 14:57:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  CustomStruct  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  dvalue ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test4904 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 14:57:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMap < int ,  CustomStruct >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        CustomStruct  cs1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cs1 . id  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cs1 . dvalue  =  3.14 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        CustomStruct  cs2  =  cs1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        cs2 . id  =  - 1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( cs1 . id ,  cs1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( cs2 . id ,  cs2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:51:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QMap < int ,  CustomStruct > : : iterator  it  =  map . begin ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<int, bug4904::CustomStruct>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, bug4904::CustomStruct>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key -1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value bug4904::CustomStruct.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.0.value.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.dvalue 3.1400000000000001 double.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.id -1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:51:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // - expand map/[0]/value
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // - verify  map[0].key == -1
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // - verify  map[0].value.id == -1
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & it ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 14:57:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug4904
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:01:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug5046  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-5046
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:01:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Foo  {  int  a ,  b ,  c ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test5046 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:01:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  f ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f . a  =  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:51:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        f . b  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f . c  =  3 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        f . a  =  4 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f bug5046::Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.a 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.b 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check f.c 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:51:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // - pop up main editor tooltip over 'f'
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // - verify that the entry is expandable, and expansion works
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & f ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 17:01:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug5046
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug5106  {  
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-5106
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  A5106 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            A5106 ( int  a ,  int  b )  :  m_a ( a ) ,  m_b ( b )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            virtual  int  test ( )  {  return  5 ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  m_a ,  m_b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  B5106  :  public  A5106 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            B5106 ( int  c ,  int  a ,  int  b )  :  A5106 ( a ,  b ) ,  m_c ( c )  { } 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            virtual  int  test ( )  {  return  4 ;  BREAK_HERE ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    private : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  m_c ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test5106 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        B5106  b ( 1 , 2 , 3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b . test ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 13:16:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        b . A5106 : : test ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug5106
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  bug5184  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://bugreports.qt.nokia.com/browse/QTCREATORBUG-5184
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 13:16:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Note: The report there shows type field "QUrl &" instead of QUrl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // It's unclear how this can happen. It should never have been like
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // that with a stock 7.2 and any version of Creator.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  helper ( const  QUrl  & url ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QNetworkRequest  request ( url ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < QByteArray >  raw  =  request . rawHeaderList ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check raw <0 items> QList<QByteArray>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType request QNetworkRequest.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check url "http://127.0.0.1/" QUrl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & request ,  & raw ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 13:16:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test5184 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QUrl  url ( QString ( " http://127.0.0.1/ " ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        helper ( url ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace bug5184
  
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-05-23 10:56:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qc42170  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://www.qtcentre.org/threads/42170-How-to-watch-data-of-actual-type-in-debugger
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  Object 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Object ( int  id_ )  :  id ( id_ )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        virtual  ~ Object ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  id ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  Point  :  Object 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Point ( double  x_ ,  double  y_ )  :  Object ( 1 ) ,  x ( x_ ) ,  y ( y_ )  { } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        double  x ,  y ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Circle  :  Point 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Circle ( double  x_ ,  double  y_ ,  double  r_ )  :  Point ( x_ ,  y_ ) ,  r ( r_ )  {  id  =  2 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        double  r ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  helper ( Object  * obj ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType obj qc42170::Circle.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check that obj is shown as a 'Circle' object.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( obj ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test42170 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Circle  * circle  =  new  Circle ( 1.5 ,  - 2.5 ,  3.0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 15:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Object  * obj  =  circle ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        helper ( circle ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        helper ( obj ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 12:46:32 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qc42170
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 12:25:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug5799  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // https://bugreports.qt.nokia.com/browse/QTCREATORBUG-5799
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    typedef  struct  {  int  m1 ;  int  m2 ;  }  S1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  S2  :  S1  {  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    typedef  struct  S3  {  int  m1 ;  int  m2 ;  }  S3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  S4  :  S3  {  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test5799 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S2  s2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s2 . m1  =  5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S4  s4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s4 . m1  =  5 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 16:57:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        S1  a1 [ 10 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  S1  Array [ 10 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Array  a2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a1 bug5799::S1 [10].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a2 bug5799::Array.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s2 bug5799::S2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s2.bug5799::S1 bug5799::S1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s2.bug5799::S1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s2.bug5799::S1.m1 5 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s2.bug5799::S1.m2 32767 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s4 bug5799::S4.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s4.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s4.bug5799::S3 bug5799::S3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand s4.bug5799::S3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s4.bug5799::S3.m1 5 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s4.bug5799::S3.m2 0 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 12:25:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s2 and s4.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check there is no <unavailable synchronous data>
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s2 ,  & s4 ,  & a1 ,  & a2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 12:25:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug5799
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 17:53:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qc41700  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // http://www.qtcentre.org/threads/41700-How-to-watch-STL-containers-iterators-during-debugging
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test41700 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 17:53:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  std ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  map < string ,  list < string >  >  map_t ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map_t  m ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " one " ] . push_back ( " a " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " one " ] . push_back ( " b " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " one " ] . push_back ( " c " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " two " ] . push_back ( " 1 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " two " ] . push_back ( " 2 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        m [ " two " ] . push_back ( " 3 " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        map_t : : const_iterator  it  =  m . begin ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check m <2 items> qc41700::map_t.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand m.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0   std::pair<std::string const, std::list<std::string>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand m.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.first "one" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.second <3 items> std::list<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand m.0.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.second.0 "a" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.second.1 "b" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.second.2 "c" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1   std::pair<std::string const, std::list<std::string>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand m.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.first "two" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.second <3 items> std::list<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand m.1.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.second.0 "1" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.second.1 "2" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.second.2 "3" std::string.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check that m is displayed nicely.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & it ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-20 17:53:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qc41700
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-29 11:48:12 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  cp42895  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // http://codepaster.europe.nokia.com/?id=42895
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  g ( int  c ,  int  d ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qDebug ( )  < <  c  < <  d ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check c 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d 4 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-29 11:48:12 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check there are frames for g and f in the stack view.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & c ,  & d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  f ( int  a ,  int  b ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        g ( a ,  b ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test42895 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        f ( 3 ,  4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace cp
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-03 19:19:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug6465  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // https://bugreports.qt.nokia.com/browse/QTCREATORBUG-6465
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6465 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  char  Foo [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  foo  =  " foo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  bar [ 20 ]  =  " baz " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // BREAK HERE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & foo ,  & bar ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug6465
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  varargs  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test ( const  char  * format ,  . . . ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        va_list  arg ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        va_start ( arg ,  format ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i  =  va_arg ( arg ,  int ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        double  f  =  va_arg ( arg ,  double ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        va_end ( arg ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ,  & f ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testVaList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test ( " abc " ,  1 ,  2.0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace varargs
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-28 18:57:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  gdb13393  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Base  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base ( )  :  a ( 1 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        virtual  ~ Base ( )  { }   // Enforce type to have RTTI
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Derived  :  public  Base  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Derived ( )  :  b ( 2 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  S 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base  * ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Base  * ptrConst ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base  & ref ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Base  & refConst ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S ( Derived  & d ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  ptr ( & d ) ,  ptrConst ( & d ) ,  ref ( d ) ,  refConst ( d ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test13393 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Derived  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S  s ( d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base  * ptr  =  & d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Base  * ptrConst  =  & d ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-29 12:20:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Base  & ref  =  d ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-28 18:57:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  Base  & refConst  =  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base  * * ptrToPtr  =  & ptr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        # if USE_BOOST 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : shared_ptr < Base >  sharedPtr ( new  Derived ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  sharedPtr  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType d gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand d.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType d.gdb13393::Base gdb13393::Derived.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check d.b 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptr.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ptr.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptr.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrConst gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptrConst.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ptrConst.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptrConst.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrToPtr gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptrToPtr.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ptrToPtr.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptrToPtr.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ref gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ref.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType ref.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ref.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType refConst gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand refConst.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType refConst.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check refConst.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s gdb13393::S.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.ptr gdb13393::Derived.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.ptrConst gdb13393::Derived.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.ref gdb13393::Derived.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.refConst gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check sharedPtr 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-28 18:57:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & d ,  & s ,  & ptrToPtr ,  & sharedPtr ,  & ptrConst ,  & refConst ,  & ref ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace gdb13393
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:12:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  gdb10586  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // http://sourceware.org/bugzilla/show_bug.cgi?id=10586. fsf/MI errors out
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // on -var-list-children on an anonymous union. mac/MI was fixed in 2006.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // The proposed fix has been reported to crash gdb steered from eclipse.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // http://sourceware.org/ml/gdb-patches/2011-12/msg00420.html
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // Check we are not harmed by either version.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testmi ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        struct  test  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  int  a ;  float  b ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  int  c ;  float  d ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        }  v  =  { { 1 ,  2 } ,  { 3 ,  4 } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v gdb10586::test.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & v ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testeclipse ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        struct  {  int  x ;  struct  {  int  a ;  } ;  struct  {  int  b ;  } ;  }  v  =  { 1 ,  { 2 } ,  { 3 } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        struct  s  {  int  x ,  y ;  }  n  =  { 10 ,  20 } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v n.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check n gdb10586.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a 2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check x 1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & v ,  & n ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test10586 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testmi ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testeclipse ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace gdb10586
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:28:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  valgrind  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testLeak ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        new  int [ 100 ] ;  // Leaks intentionally.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testValgrind ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testLeak ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace valgrind
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  sanity  {  
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // A very quick check.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testSanity ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : string  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  =  " hallo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  + =  " hallo " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < int >  qv ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qv . push_back ( 2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < int >  v ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        v . push_back ( 2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QStringList  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list  < <  " aaa "  < <  " bbb "  < <  " cc " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < const  char  * >  list2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2  < <  " foo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2  < <  " bar " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2  < <  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2  < <  " baz " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list2  < <  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  obj ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obj . setObjectName ( " An Object " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QStringList
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2 <5 items> QList<char const*>
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check obj "An Object" QObject
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check qv <1 items> QVector<int>
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s "hallohallo" std::string
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v <1 items> std::vector<int>
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & qv ,  & v ,  & list ,  & list2 ,  & obj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace sanity
  
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:28:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  main ( int  argc ,  char  * argv [ ] )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QApplication  app ( argc ,  argv ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // For a very quick check, step into this one.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    sanity : : testSanity ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // Check for normal dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    basic : : testBasic ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qhostaddress : : testQHostAddress ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    varargs : : testVaList ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    formats : : testFormats ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    breakpoints : : testBreakpoints ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    peekandpoke : : testPeekAndPoke3 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    anon : : testAnonymous ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2009-06-23 10:24:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    itemmodel : : testItemModel ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    noargs : : testNoArgumentName ( 1 ,  2 ,  3 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    text : : testText ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    io : : testIO ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    catchthrow : : testCatchThrow ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    plugin : : testPlugin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    valgrind : : testValgrind ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    namespc : : testNamespace ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    painting : : testPainting ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stddeque : : testStdDeque ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdlist : : testStdList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdhashset : : testStdHashSet ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdmap : : testStdMap ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdset : : testStdSet ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdstack : : testStdStack ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdstream : : testStdStream ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdstring : : testStdString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdvector : : testStdVector ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qbytearray : : testQByteArray ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qdatetime : : testDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qfileinfo : : testQFileInfo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qhash : : testQHash ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qlinkedlist : : testQLinkedList ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qlist : : testQList ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qlocale : : testQLocale ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qmap : : testQMap ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qobject : : testQObject ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qrect : : testGeometry ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qregexp : : testQRegExp ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qregion : : testQRegion ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qscript : : testQScript ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-16 16:37:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qset : : testQSet ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qsharedpointer : : testQSharedPointer ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qstack : : testQStack ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qstringlist : : testQStringList ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qstring : : testQString ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qthread : : testQThread ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qurl : : testQUrl ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qvariant : : testQVariant ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qvector : : testQVector ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qxml : : testQXmlAttributes ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-08 11:58:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Third party data types.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    boost : : testBoost ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    eigen : : testEigen ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    kr : : testKR ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    mpi : : testMPI ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    sse : : testSSE ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-08 11:58:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // The following tests are specific to certain bugs.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    // They need not to be checked during a normal release check.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    cp42895 : : test42895 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug5046 : : test5046 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug4904 : : test4904 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qc41700 : : test41700 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qc42170 : : test42170 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    multibp : : testMultiBp ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug842 : : test842 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug3611 : : test3611 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug4019 : : test4019 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:27:42 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug4997 : : test4997 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug5106 : : test5106 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug5184 : : test5184 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bug5799 : : test5799 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-03 19:19:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6465 : : test6465 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-28 18:57:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    gdb13393 : : test13393 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:12:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    gdb10586 : : test10586 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    final : : testFinal ( & app ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-04 12:19:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    return  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-23 12:47:30 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "simple_test_app.moc"