2012-10-02 09:12:39 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								/****************************************************************************
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2016-01-15 14:55:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Copyright  ( C )  2016  The  Qt  Company  Ltd .  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Contact :  https : //www.qt.io/licensing/
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2012-10-02 09:12:39 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  This  file  is  part  of  Qt  Creator .  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2012-10-02 09:12:39 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  Commercial  License  Usage  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Licensees  holding  valid  commercial  Qt  licenses  may  use  this  file  in  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  accordance  with  the  commercial  license  agreement  provided  with  the  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Software  or ,  alternatively ,  in  accordance  with  the  terms  contained  in  
						 
					
						
							
								
									
										
										
										
											2016-01-15 14:55:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  a  written  agreement  between  you  and  The  Qt  Company .  For  licensing  terms  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  and  conditions  see  https : //www.qt.io/terms-conditions. For further
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  information  use  the  contact  form  at  https : //www.qt.io/contact-us.
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 14:17:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2016-01-15 14:55:33 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  GNU  General  Public  License  Usage  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Alternatively ,  this  file  may  be  used  under  the  terms  of  the  GNU  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  General  Public  License  version  3  as  published  by  the  Free  Software  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  Foundation  with  exceptions  as  appearing  in  the  file  LICENSE . GPL3 - EXCEPT  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  included  in  the  packaging  of  this  file .  Please  review  the  following  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  information  to  ensure  the  GNU  General  Public  License  requirements  will  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								* *  be  met :  https : //www.gnu.org/licenses/gpl-3.0.html.
  
						 
					
						
							
								
									
										
										
										
											2010-12-17 16:01:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* *  
						 
					
						
							
								
									
										
										
										
											2012-10-02 09:12:39 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-08-23 09:18:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <qglobal.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//   // CheckType <name> <type>
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//         - Checks whether the local variable is displayed with type.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//           The value is untested, so it can be used with pointers values etc.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//           that would change between test runs
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//   // Continue
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//       - Continues execution
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// On the TODO list:
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//   // Expand <name1>[ <name2> ...].
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//         - Expands local variables with given names.
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//           There should be at most one "Expand" line per BREAK_HERE,
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								//           and this should placed on the line following the BREAK_HERE
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//           FIXME: Not implemented yet.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:45:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Value: 1
  
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// If the line after a BREAK_HERE line does not contain one of the
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// supported commands, the test stops.
  
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:45:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Value: 2
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Same as 1, except that the debugger will stop automatically when
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// a test after a BREAK_HERE failed
  
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
									
										
										
										
											2012-03-20 15:46:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// Before using this, make sure that "Show a message box when receiving a signal"
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// is disabled in "Tools" -> "Options..." -> "Debugger" -> "GDB".
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifndef USE_AUTORUN 
  
						 
					
						
							
								
									
										
										
										
											2012-02-14 15:16:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_AUTORUN 0 
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// With USE_AUTOBREAK, the debugger will stop automatically on all
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// lines containing the BREAK_HERE macro. This should be enabled
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// during manual testing.
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								// Default: 0
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifndef USE_AUTOBREAK 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_AUTOBREAK 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-11-25 16:29:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// With USE_UNINITIALIZED_AUTOBREAK, the debugger will stop automatically
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// 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-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifndef USE_UNINITIALIZED_AUTOBREAK 
  
						 
					
						
							
								
									
										
										
										
											2011-08-19 15:47:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_UNINITIALIZED_AUTOBREAK 0 
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								////////////// No further global configuration below ////////////////
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								// AUTORUN is only sensibly with AUTOBREAK and without UNINITIALIZED_AUTOBREAK
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if USE_AUTORUN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if !(USE_AUTOBREAK) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# undef USE_AUTOBREAK 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_AUTOBREAK 1 
  
						 
					
						
							
								
									
										
										
										
											2012-11-06 16:39:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# pragma message ("Switching on USE_AUTOBREAK") 
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif  // !USE_AUTOBREAK
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if USE_UNINITIALIZED_AUTOBREAK 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# undef USE_UNINITIALIZED_AUTOBREAK 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_UNINITIALIZED_AUTOBREAK 0 
  
						 
					
						
							
								
									
										
										
										
											2012-11-06 16:39:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# pragma message ("Switching off USE_UNINITIALIZED_AUTOBREAK") 
  
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif  // USE_UNINITIALIZED_AUTOBREAK
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-02-26 16:28:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef HAS_BOOST 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifndef ANDROID 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_BOOST 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifdef HAS_PRIVATE 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_PRIVATE 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-04-09 18:29:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef HAS_EIGEN2 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_EIGEN 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifdef HAS_EIGEN3 
  
						 
					
						
							
								
									
										
										
										
											2014-02-26 16:28:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_EIGEN 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-03-15 16:47:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef HAS_SCRIPT 
  
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# define USE_SCRIPTLIB 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-25 12:01:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef QT_WEBKIT_LIB 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_WEBKITLIB 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_WEBKITLIB 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-12-10 20:18:39 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if QT_VERSION >= 0x050200 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_TIMEZONE 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_TIMEZONE 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if QT_VERSION >= 0x050000 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_JSON 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_JSON 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if QT_VERSION > 0x050000 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_CXX11LIB 1 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# define USE_CXX11LIB 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								void  dummyStatement ( . . . )  { }  
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-09-17 14:26:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if defined(__GNUC__) && defined(__STRICT_ANSI__) 
  
						 
					
						
							
								
									
										
										
										
											2012-02-10 16:32:52 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# undef __STRICT_ANSI__  // working around compile error with MinGW
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QCoreApplication> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QDebug> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QDateTime> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QDir> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QHash> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QLibrary> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QLinkedList> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QList> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QMap> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QPointer> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QProcess> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QRegExp> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QString> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QStringList> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QSettings> 
  
						 
					
						
							
								
									
										
										
										
											2014-09-17 14:26:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QSharedPointer> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QStack> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QThread> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QVariant> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QVector> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QUrl> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_GUILIB 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QAction> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QApplication>   // QWidgets: Separate module as of Qt 5
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QColor> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QFont> 
  
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QLabel> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QPainter> 
  
						 
					
						
							
								
									
										
										
										
											2016-10-13 08:40:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QPixmap> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QPainterPath> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QRegion> 
  
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QStandardItemModel> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QTextCursor> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QTextDocument> 
  
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#  if USE_TIMEZONE 
  
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#   include <QTimeZone> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#  endif 
  
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_SCRIPTLIB 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QScriptEngine> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QScriptValue> 
  
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-02-10 15:17:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-25 12:01:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_WEBKITLIB 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QWebPage> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QXmlAttributes> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-29 14:57:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QHostAddress> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QNetworkRequest> 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <array> 
  
						 
					
						
							
								
									
										
										
										
											2013-11-27 10:00:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <unordered_map> 
  
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-02-03 20:55:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <complex> 
  
						 
					
						
							
								
									
										
										
										
											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> 
  
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <memory> 
  
						 
					
						
							
								
									
										
										
										
											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> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-07-14 13:13:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <QMetaMethod> 
  
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <stdarg.h> 
  
						 
					
						
							
								
									
										
										
										
											2013-10-10 16:12:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <stdint.h> 
  
						 
					
						
							
								
									
										
										
										
											2011-08-04 17:14:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  "../simple/deep/deep/simple_test_app.h" 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_JSON 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QJsonArray> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QJsonObject> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <QJsonValue> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											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> 
  
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/date_time.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/date_time/gregorian/gregorian.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/date_time/posix_time/posix_time.hpp> 
  
						 
					
						
							
								
									
										
										
										
											2012-04-21 00:49:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <boost/bimap.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 
  
						 
					
						
							
								
									
										
										
										
											2014-04-09 18:29:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <Eigen/Core> 
  
						 
					
						
							
								
									
										
										
										
											2011-05-16 20:04:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-01 12:39:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_PRIVATE 
  
						 
					
						
							
								
									
										
										
										
											2012-02-15 10:42:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <private/qobject_p.h> 
  
						 
					
						
							
								
									
										
										
										
											2011-03-01 12:39:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-08-18 10:56:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if defined(__GNUC__) && !defined(__llvm__) && !defined(Q_OS_MAC) 
  
						 
					
						
							
								
									
										
										
										
											2014-02-26 16:28:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#   ifndef ANDROID 
  
						 
					
						
							
								
									
										
										
										
											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> 
  
						 
					
						
							
								
									
										
										
										
											2014-02-26 16:28:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#   endif 
  
						 
					
						
							
								
									
										
										
										
											2010-04-15 18:28:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
									
										
										
										
											2018-07-19 00:07:58 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <windows.h> 
  
						 
					
						
							
								
									
										
										
										
											2016-04-20 09:33:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <basetsd.h> 
  
						 
					
						
							
								
									
										
										
										
											2010-04-07 15:23:37 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# undef min 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# undef max 
  
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-05-13 17:38:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_SSE && !defined(__SSE__) 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# undef USE_SSE 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# if USE_SSE 
  
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# include  <xmmintrin.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# include  <stddef.h> 
  
						 
					
						
							
								
									
										
										
										
											2013-05-13 17:38:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2010-10-26 10:40:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# 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 
  
						 
					
						
							
								
									
										
										
										
											2019-06-19 11:01:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#        define BREAK_HERE DebugBreak(); 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    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 
  
						 
					
						
							
								
									
										
										
										
											2012-11-06 16:28:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#        include <crtdbg.h> 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#        define BREAK_UNINITIALIZED_HERE _CrtDbgReport(_CRT_WARN, NULL, NULL, "simple_test_app", NULL) 
  
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								#    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 ) ;  }  
						 
					
						
							
								
									
										
										
										
											2016-04-20 09:33:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								uint  qHash ( const  QPointer < QObject >  & p )  {  return  PtrToUint ( p . data ( ) ) ;  }  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2016-04-28 15:52:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								uint  qHash ( const  QPointer < QObject >  & p )  {  return  ( ulong ) p . data ( ) ;  }  
						 
					
						
							
								
									
										
										
										
											2016-04-20 09:33:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-11 22:09:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								struct  BaseClass  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    BaseClass ( )  :  a ( 1 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    virtual  ~ BaseClass ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    virtual  int  foo ( )  {  return  a ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								struct  DerivedClass  :  BaseClass  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    DerivedClass ( )  :  b ( 2 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  foo ( )  {  return  b ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-21 16:45:23 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  multibp  {  
						 
					
						
							
								
									
										
										
										
											2010-01-04 13:16:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:11:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // This tests multiple breakpoints.
 
							 
						 
					
						
							
								
									
										
										
										
											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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:11:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            // Manual: Add a breakpoint in the constructor
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // Manual: Check there are multiple entries in the Breakpoint view.
 
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-06-28 14:04:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  Fooooo  :  public  Foo  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								public :  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    Fooooo ( int  x )  :  Foo ( x ) ,  a ( x  +  2 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								} ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2019-07-23 16:30:37 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								class  D  :  public  X ,  public  Y  {  int  diamond ;  D ( ) { Q_UNUSED ( 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        union  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  int  i ;  int  b ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            struct  {  float  f ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            double  d ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        }  a  =  { { 42 ,  43 } } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . i  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        a . i  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a union {...}.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s and s[0].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s peekandpoke::S [10].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Watcher Context: "Add New Watcher".
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Type    ['s[%d].a' % i for i in range(5)]
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Expand it, continue stepping. This should result in a list
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: of five items containing the .a fields of s[0]..s[4].
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:22:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  10 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            s [ i ] . a  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Toggle between "Normal" and "Displayed" in L&W Context Menu,
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Toggle between "Normal" and "Displayed" in L&W Context Menu,
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: entry "Display of Type QImage".
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . drawEllipse ( 120 ,  70 ,  15 ,  15 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-03-17 11:44:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        pain . end ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-25 10:56:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & pain ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        TestAnonymous  a ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand a a.#1 a.#2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a anon::TestAnonymous.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check a.#1   {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.#1.b int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a.#1.i int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-24 16:51:41 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Something  s ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s anon::(anonymous namespace)::Something.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.b 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-24 16:51:41 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-24 16:51:41 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : map < int ,  Something >  m ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType m std::map<int, anon::{anonymous}::Something>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & s ,  & m ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ba.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ba "Hello"World" QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 16:37:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ba QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 16:37:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check buf1 "î" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check buf2 "î" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check buf3 "\ee" QByteArray.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType str1 char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & buf1 ,  & buf2 ,  & buf3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQByteArray4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        char  data [ ]  =  { ' H ' ,  ' e ' ,  ' l ' ,  ' l ' ,  ' o ' } ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QByteArray  ba1  =  QByteArray : : fromRawData ( data ,  4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  ba2  =  QByteArray : : fromRawData ( data  +  1 ,  4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba1 "Hell" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ba2 "ello" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ba1 ,  & ba2 ,  & data ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQByteArray ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQByteArray3 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQByteArray4 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-08-30 11:47:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  undefined  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testUndefined ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  * i  =  new  int ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        delete  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-12 14:30:41 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-30 11:47:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Uncomment the following line. Step.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // On Linux, a SIGABRT should be received.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        //delete i;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace undefined
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qdatetime  {  
						 
					
						
							
								
									
										
										
										
											2010-09-27 12:40:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:41:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQTimeZone ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_TIMEZONE 
  
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:41:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QTimeZone  zz ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QTimeZone  tz ( " UTC+05:00 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & zz ,  & tz ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:41:05 +01: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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand date.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType date QDate.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand time.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType time QTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(ISO) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(Locale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.(SystemLocale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check time.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-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand date.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType date QDateTime.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check date.(ISO) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(Locale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.(SystemLocale) "" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check date.toString "" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check date.toUTC  QDateTime.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:13:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Step, check display
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        date  =  QDateTime : : currentDateTime ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:13:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        date  =  date . addDays ( 5 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  date . addDays ( 5 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & date ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testDateTime ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:41:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQTimeZone ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQDate ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qdatetime
  
						 
					
						
							
								
									
										
										
										
											2009-09-03 09:15:24 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-10-07 16:36:25 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:57:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qdir  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQDir ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QDir  dir ( " C: \\ Program Files " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dir . absolutePath ( ) ;  // Keep in to facilitate stepping
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir "C:/Program Files" QDir.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir.absolutePath "C:/Program Files" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir.canonicalPath "C:/Program Files" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:57:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QDir  dir ( " /tmp " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dir . absolutePath ( ) ;  // Keep in to facilitate stepping
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:57:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir "/tmp" QDir.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir.absolutePath "/tmp" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check dir.canonicalPath "/tmp" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:57:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & dir ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qdir
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qfileinfo  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQFileInfo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QFile  file ( " C: \\ Program Files \\ t " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        file . setObjectName ( " A QFile instance " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QFileInfo  fi ( " C: \\ Program Files \\ tt " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s  =  fi . absoluteFilePath ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check fi "C:/Program Files/tt" QFileInfo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check file "C:\Program Files\t" QFile.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s "C:/Program Files/tt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & file ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s "/tmp/tt" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-13 19:31:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & file ,  & s ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0 hash.1 hash.1.value hash.2 hash.2.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <3 items> QHash<QString, QList<int>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value <0 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.key "Welt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.value <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1.value.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2   QHashNode<QString, QList<int>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.key "!" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2.value <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <2 items> QHash<int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0 hash.8.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <9 items> QHash<QString, int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "123.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8   QHashNode<QString, int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0 hash.8/
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <9 items> QHash<QByteArray, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QByteArray, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "123.0" QByteArray.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.8   QHashNode<QByteArray, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <1 items> QHash<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0 hash.0.value hash.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <2 items> QHash<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.value.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.1   QHashNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand hash hash.0 hash.0.value hash.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <3 items> QHash<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.0   QHashNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.0.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType hash.0.value.o QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check hash.2   QHashNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-31 11:28:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQHashIntFloatIterator ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  QHash < int ,  float >  Hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash  hash ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 33 ]  =  33.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 44 ]  =  44.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 55 ]  =  55.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        hash [ 66 ]  =  66.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash : : iterator  it1  =  hash . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash : : iterator  it2  =  it1 ;  + + it2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Hash : : iterator  it3  =  it2 ;  + + it3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash : : iterator  it4  =  it3 ;  + + it4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash : : iterator  it5  =  it4 ;  + + it5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Hash : : iterator  it6  =  it5 ;  + + it6 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-31 11:28:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand hash.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash <6 items> qhash::Hash.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-31 11:28:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check hash.11 11 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it1.key 55 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it1.value 55 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it6.key 33 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it6.value 33 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-31 11:28:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & hash ,  & it1 ,  & it2 ,  & it3 ,  & it4 ,  & it5 ,  & it6 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQHash ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash5 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash6 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHash7 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-31 11:28:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQHashIntFloatIterator ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qhash
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2009-07-14 18:14:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qhostaddress  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 18:48:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQHostAddress1 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											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 " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 14:19:45 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        uint  ip2  =  ha2 . toIPv4Address ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 14:19:45 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ha1 ,  & ha2 ,  & ip2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 18:48:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQHostAddress2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QIPv6Address  addr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  16 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            addr . c [ i ]  =  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 4 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 5 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 6 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 7 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 12 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 13 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 14 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        addr . c [ 15 ]  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QHostAddress  ha1 ( addr ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 14:19:45 -07:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        ha1 . setScopeId ( QLatin1String ( " wlan0 " ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-07-09 18:48:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ha1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQHostAddress ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHostAddress1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQHostAddress2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-05 15:06:14 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // 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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQPixmap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-13 08:40:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QSize  size  =  pm . size ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check im (200x200) QImage.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType pain QPainter.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pm (200x200) QPixmap.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-10-13 08:40:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & im ,  & pm ,  & size ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list list.0 list.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QLinkedList<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<unsigned long long>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list list.0 list.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> QLinkedList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand big.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check big <10000 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-08-15 18:09:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQListIntTakeFirst ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < int >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . takeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQListStringTakeFirst ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QList < QString >  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 1 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 2 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . takeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <2 items> QList<QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 "1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQStringListTakeFirst ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringList  l ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 1 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . append ( " 2 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . takeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l <2 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check l.0 "1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & l ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned short>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<QChar>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<unsigned long long>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 16:37:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType l.0 unsigned long long.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType l.2 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <4 items> QList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l r.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-15 18:09:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQListIntTakeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQListStringTakeFirst ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQStringListTakeFirst ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.value map.1 map.1.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key 11 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.0 "11" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key 22 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMap<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMap<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.key map.0.value map.1 map.1.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "33.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.key map.0.value map.1 map.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> QMap<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.o QObject.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.key map.0.value map.1 map.1.value.1 map.1.value.2 map.3 map.3.value map.3.value.2.
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QList<nsA::nsB::SomeType*>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "1" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value <3 items> QList<nsA::nsB::SomeType*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.0 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.1 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.1.a 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value.2 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.value.2.a 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3   QMapNode<QString, QList<nsA::nsB::SomeType*>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.key "foo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3.value <3 items> QList<nsA::nsB::SomeType*>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.3.value.2 nsA::nsB::SomeType.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <6 items> QMultiMap<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.5 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMultiMap<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <1 items> QMultiMap<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> QMultiMap<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.1 map.2 map.3.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <4 items> QMultiMap<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.key "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.key "Hallo" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.3   QMapNode<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-27 22:34:13 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QObject : : connect ( & child ,  & QObject : : destroyed ,  & parent ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : connect ( & child ,  & QObject : : destroyed ,  & child ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : disconnect ( & child ,  & QObject : : destroyed ,  & parent ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : disconnect ( & child ,  & QObject : : destroyed ,  & child ,  & QObject : : 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 : 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            TestObject ( QObject  * parent  =  0 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                :  QObject ( parent ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                m_ui  =  new  Ui ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                # if USE_GUILIB 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                m_ui - > w  =  new  QWidget ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                m_ui - > w  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            } 
							 
						 
					
						
							
								
									
										
										
										
											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 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 22:30:59 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_SLOT  void  setMyProp1 ( const  QString & mt )  {  m_myProp1  =  mt ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2014-04-03 22:08:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_INVOKABLE  void  foo ( )  { } 
							 
						 
					
						
							
								
									
										
										
										
											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 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 22:30:59 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_SLOT  void  setMyProp2 ( const  QString & mt )  {  m_myProp2  =  mt ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2009-11-27 14:47:03 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-01-20 15:03:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_PROPERTY ( long  myProp3  READ  myProp3 ) 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-06 08:54:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            long  myProp3 ( )  const  {  return  - 54 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-20 15:03:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-06 08:54:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_PROPERTY ( int  myProp4  READ  myProp4 ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            int  myProp4 ( )  const  {  return  - 44 ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-20 15:03:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-04-03 22:08:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            Q_SIGNAL  void  sigFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Q_SIGNAL  void  sigBar ( int ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-07-14 13:13:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            enum  Side  {  LeftSide ,  RightSide  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            Q_ENUMS ( Side ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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'));
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Names : : Bar : : TestObject  test ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test . setMyProp1 ( " HELLO " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test . setMyProp2 ( " WORLD " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-20 15:03:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        test . setObjectName ( " An object " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  s  =  test . myProp1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s  + =  test . myProp2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-07-14 13:13:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  QMetaObject  * mo  =  test . metaObject ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaMethod  mm0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QMetaObject  smo  =  test . staticMetaObject ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaMethod  mm  =  mo - > method ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QByteArray  mmname  =  mm . name ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaEnum  me0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaEnum  me  =  mo - > enumerator ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaProperty  mp0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaProperty  mp  =  mo - > property ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaClassInfo  mci0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QMetaClassInfo  mci  =  mo - > classInfo ( 0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  n  =  mo - > methodCount ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QVector < QMetaMethod >  v ( n ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  n ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            v [ i ]  =  mo - > method ( i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-09-06 08:54:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        test . setProperty ( " USER DEFINED 1 " ,  44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        test . setProperty ( " USER DEFINED 2 " ,  QStringList ( )  < <  " FOO "  < <  " BAR " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 12:42:29 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s "HELLOWORLD" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check test  qobject::Names::Bar::TestObject.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-07-14 13:13:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ,  & mm ,  & smo ,  & mo ,  & mmname ,  & mm0 ,  & me ,  & me0 ,  & mp ,  & mp0 ,  & mci ,  & mci0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-04-08 14:38:42 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject3 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QAction  act ( " xxx " ,  qApp ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  t  =  act . text ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t  + =  " y " ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & act ,  & t ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-27 22:34:13 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QObject : : connect ( & ob ,  & QObject : : destroyed ,  & ob1 ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : connect ( & ob1 ,  & QObject : : destroyed ,  & ob ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-27 22:34:13 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QObject : : disconnect ( & ob ,  & QObject : : destroyed ,  & ob1 ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject : : disconnect ( & ob1 ,  & QObject : : destroyed ,  & ob ,  & QObject : : deleteLater ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & ob ,  & ob1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2010-07-07 17:11:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQObject5 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWidget  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setObjectName ( " An Object " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setProperty ( " USER DEFINED 1 " ,  44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob . setProperty ( " USER DEFINED 2 " ,  QStringList ( )  < <  " FOO "  < <  " BAR " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QList < QObject  * >  obs ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( & ob1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obs . append ( 0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        obs . append ( qApp ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ob1 . setObjectName ( " Another Object " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & obs ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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 " ) ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-27 22:34:13 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QObject : : connect ( & sender ,  & Sender : : aSignal ,  & receiver ,  & Receiver : : aSlot ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ob ob.properties.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ob ob.properties.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-06-17 13:35:33 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQObject3 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQObject4 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQObject5 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testGeometry ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQPoint ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQPointF ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQRect ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQRectF ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSize ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQSizeF ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 10:46:08 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qrect
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qregion  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQRegion ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check region <1 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check region <2 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand region.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check region <4 items> QRegion.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < int >  vv  =  { 1 ,  2 ,  3 } ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-06 08:54:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & region ,  & vv ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QRect  x ( 12 ,  34 ,  66 ,  77 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVector < QRect >  rr  =  { { 1 ,  2 ,  3 ,  4 } ,  { 5 ,  6 ,  7 ,  8 } } ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-09-06 08:54:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & region ,  & vv ,  & rr ,  & x ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-07 12:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType dir QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType lib QLibrary.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-26 17:00:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType name QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
									
										
										
										
											2018-08-24 12:48:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        lib . unload ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand settings.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check settings  QSettings.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check settings.@1 "" QObject.
 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-09 14:33:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        int  a  =  ' a ' ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  b  =  ' b ' ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-08-11 18:37:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ;  // Comment out.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-09 14:33:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        * ( int  * ) 0  =  a  +  b ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-09 14:33:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testEndlessRecursion ( int  i  =  0 ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-08-11 18:37:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ;  // Comment out.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-09 14:33:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testEndlessRecursion ( i  +  1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-17 12:53:01 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  str  =  QString : : fromUtf8 ( " XXXXXXXXXXXXXXyyXXX ö " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QLabel  l ( str ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . setObjectName ( " Some Label " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        l . show ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 13:15:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testNullReferenceHelper ( int  & i ,  int  & j ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        i  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        j  + =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testNullReference ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i  =  21 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  * p  =  & i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  * q  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  & pp  =  * p ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  & qq  =  * q ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check i 21 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType p int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check p 21 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check q 0x0 int *.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check pp 21 int &.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check qq <null reference> int &.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 13:15:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2017-08-11 18:37:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        return ;  // Comment out.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 13:15:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testNullReferenceHelper ( pp ,  qq ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( p ,  q ,  & i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 13:15:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testNullReference ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QSet<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QSet<QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <1 items> QSet<QPointer<QObject>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand atts atts.attList atts.attList.1 atts.attList.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType atts QXmlAttributes.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType atts.[vptr] .
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check atts.attList <3 items> QXmlAttributes::AttributeList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType atts.attList.0 QXmlAttributes::Attribute.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType atts.d QXmlAttributesPrivate.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qxml
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdarray  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdArray ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_CXX11LIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : array < int ,  4 >  a  =  { { 1 ,  2 ,  3 ,  4 } } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : array < QString ,  4 >  b  =  { { " 1 " ,  " 2 " ,  " 3 " ,  " 4 " } } ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-09 23:02:18 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a <4 items> std::array<int, 4u>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-17 18:16:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a <4 items> std::array<QString, 4u>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-17 18:16:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdcomplex
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 20:55:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdcomplex  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdComplex ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : complex < double >  c ( 1 ,  2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check c (1.000000, 2.000000) std::complex<double>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 20:55:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & c ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  // namespace stdcomplex
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 20:55:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stddeque  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdDequeInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : deque < int >  deque ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        deque . push_back ( 2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <3 items> std::deque<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque deque.0 deque.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType deque.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.0.a 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand deque deque.0 deque.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check deque <2 items> std::deque<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType deque.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check deque.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType deque.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand h.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check h <4 items> __gnu__cxx::hash_set<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> std::list<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <more than 1000 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list list.0 list.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 15 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list list.0 list.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> std::list<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <2 items> std::list<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-27 10:00:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdunorderedmap  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2013-11-27 10:00:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdUnorderedMapStringFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This is not supposed to work with the compiled dumpers.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < std : : string ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 44.0 " ]  =  Foo ( 44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.second map.2 map.2.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <3 items> std::unordered_map<QString, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.first "44.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.2.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.second.a 44 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapCharStarFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < const  char  * ,  Foo >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  Foo ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 33.0 " ]  =  Foo ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.first map.0.second map.1 map.1.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<char const*, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first.*first 50 '2' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first.*first 51 '3' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second.a 33 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapUIntUInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < uint ,  uint >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<unsigned int, unsigned int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.22 2 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapUIntStringList ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#if 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < uint ,  QStringList >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.first map.0.second map.1 map.1.second.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.0 "11" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first 22 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second.0 "22" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapUIntStringListTypedef ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								#if 0 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  std : : unordered_map < uint ,  QStringList >  T ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        T  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  QStringList ( )  < <  " 11 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  QStringList ( )  < <  " 22 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> stdmap::T.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapUIntFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < uint ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<unsigned int, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.22 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapUIntFloatIterator ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  std : : unordered_map < int ,  float >  Map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 33 ]  =  33.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 44 ]  =  44.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 55 ]  =  55.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 66 ]  =  66.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it1  =  map . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it2  =  it1 ;  + + it2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it3  =  it2 ;  + + it3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it4  =  it3 ;  + + it4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it5  =  it4 ;  + + it5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it6  =  it5 ;  + + it6 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <6 items> stdmap::Map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.11 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it1.first 11 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it1.second 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it6.first 66 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it6.second 66 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ,  & it1 ,  & it2 ,  & it3 ,  & it4 ,  & it5 ,  & it6 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapStringFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < std : : string ,  float >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 11.0 " ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " 22.0 " ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<QString, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapIntString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < int ,  QString >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  " 11.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  " 22.0 " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <2 items> std::unordered_map<int, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMapStringPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QObject  ob ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unordered_map < std : : string ,  QPointer < QObject >  >  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " Hallo " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " Welt " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ " . " ]  =  QPointer < QObject > ( & ob ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map map.0 map.2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <3 items> std::unordered_map<QString, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.first "Welt" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapCharStarFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapUIntUInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapUIntStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapUIntStringListTypedef ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapUIntFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapUIntFloatIterator ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapStringFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapIntString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUnorderedMapStringPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdUnorderedMap ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2013-11-27 10:00:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdunorderedmap
  
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.second map.2 map.2.second.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <3 items> std::map<QString, Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "22.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2.first "44.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.2.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.first map.0.second map.1 map.1.second.
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first.*first 50 '2' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.a 22 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<char const* const, Foo>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.first char *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first.*first 51 '3' char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.1.second Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<unsigned int, unsigned int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.first map.0.second map.1 map.1.second.
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second.0 "11" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<unsigned int const, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.first 22 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1.second <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<unsigned int, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMapUIntFloatIterator ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-29 12:16:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        typedef  std : : map < int ,  float >  Map ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Map  map ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 11 ]  =  11.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 22 ]  =  22.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 33 ]  =  33.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 44 ]  =  44.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 55 ]  =  55.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map [ 66 ]  =  66.0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it1  =  map . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it2  =  it1 ;  + + it2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Map : : iterator  it3  =  it2 ;  + + it3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it4  =  it3 ;  + + it4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it5  =  it4 ;  + + it5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Map : : iterator  it6  =  it5 ;  + + it6 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <6 items> stdmap::Map.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.11 11 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-29 12:16:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it1.first 11 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it1.second 11 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it6.first 66 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check it6.second 66 float.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ,  & it1 ,  & it2 ,  & it3 ,  & it4 ,  & it5 ,  & it6 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<QString, float>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<QString const, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> std::map<int, QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first 11 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.second "11.0" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.1   std::pair<int const, QString>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.2.
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.first "." QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.second QPointer<QObject>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.2   std::pair<QString const, QPointer<QObject>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-07-19 23:37:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMultiMapUIntFloat ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  std : : pair < uint ,  float >  V ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : multimap < uint ,  float >  map ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-01-12 11:23:56 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        map . insert ( V ( 11 ,  11.0f ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( V ( 22 ,  22.0f ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( V ( 22 ,  33.0f ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( V ( 22 ,  34.0f ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( V ( 22 ,  35.0f ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        map . insert ( V ( 22 ,  36.0f ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-19 23:37:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand map.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map <6 items> std:multimap<unsigned int, float>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0 11 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.5 22 float.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & map ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdMultiSetInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifndef Q_CC_MSVC 
  
						 
					
						
							
								
									
										
										
										
											2014-07-19 23:37:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : multiset < int >  set  =  { 1 ,  1 ,  2 ,  3 ,  3 ,  3 } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & set ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2014-07-19 23:37:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdMap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapStringFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapCharStarFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntUInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntStringList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntStringListTypedef ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapUIntFloat ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdMapUIntFloatIterator ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdMapStringFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapIntString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMapStringPointer ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-07-19 23:37:17 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdMultiMapUIntFloat ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdMultiSetInt ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  stdptr  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2012-02-28 23:23:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdUniquePtrInt ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 19:50:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : unique_ptr < int >  p ( new  int ( 32 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-09 23:02:18 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check p 32 std::unique_ptr<int, std::default_delete<int> >.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-28 23:23:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdUniquePtrFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : unique_ptr < Foo >  p ( new  Foo ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check p 32 std::unique_ptr<Foo, std::default_delete<Foo> >.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdSharedPtrInt ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-23 18:02:46 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : shared_ptr < int >  p ( new  int ( 32 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check p 32 std::shared_ptr<int, std::default_delete<int> >.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-28 23:23:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSharedPtrFoo ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : shared_ptr < Foo >  p ( new  Foo ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check p 32 std::shared_ptr<Foo, std::default_delete<int> >.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdPtr ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-28 23:23:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdUniquePtrInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdUniquePtrFoo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdSharedPtrInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdSharedPtrFoo ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testStdPtr ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2012-02-02 13:18:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace stdptr
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 22:57:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  lambda  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testLambda ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2013-11-21 22:57:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : string  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        auto  f  =  [ & ]  ( )  - >  const  std : : string  &  { 
							 
						 
					
						
							
								
									
										
										
										
											2016-04-20 09:33:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                size_t  z  =  x . size ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-07-23 10:58:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                Q_UNUSED ( z ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 22:57:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                return  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        auto  c  =  f ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & x ,  & f ,  & c ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2013-11-21 22:57:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace lambda
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check set <3 items> std::set<int>
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & set ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSetIntIterator ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  std : : set < int >  Set ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set  set ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-03-27 16:02:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        set . insert ( 11 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 22 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 33 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 44 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 55 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( 66 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set : : iterator  it1  =  set . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set : : iterator  it2  =  it1 ;  + + it2 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Set : : iterator  it3  =  it2 ;  + + it3 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set : : iterator  it4  =  it3 ;  + + it4 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set : : iterator  it5  =  it4 ;  + + it5 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Set : : iterator  it6  =  it5 ;  + + it6 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check set <6 items> stdset::Set.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it1.value 11 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check it6.value 66 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-09-19 15:04:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & set ,  & it1 ,  & it2 ,  & it3 ,  & it4 ,  & it5 ,  & it6 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdSetString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        std : : set < QString >  set ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        set . insert ( " 22.0 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand set.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check set <1 items> std::set<QString>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-15 01:45:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdSetIntIterator ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <3 items> std::stack<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s s.0 s.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s s.0 s.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> std::stack<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <4 items> QList<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<std::string>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <3 items> std::vector<int*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v v.0 v.0.x v.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <3 items> std::vector<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType v.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v v.0 v.0.x.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <4 items> std::vector<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType v.0 Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:24:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v.1.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdVectorBool1 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v <5 items> std::vector<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v.0 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.2 false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.3 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.4 false 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdVectorBool2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < bool >  v1 ( 65 ,  true ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : vector < bool >  v2 ( 65 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v2.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v1 <65 items> std::vector<bool>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v1.0 true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v1.64 true bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v2 <65 items> std::vector<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v2.0 false bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v2.64 false bool.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & v1 ,  & v2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list vector vector.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <1 items> std::list<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vector.0 <0 items> std::list<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vector.2 <1 items> std::list<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdVectorBool1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testStdVectorBool2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# ifdef Q_OS_WIN 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        is . open ( " C: \\ Program Files \\ Windows NT \\ Accessories \\ wordpad.exe " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# else 
  
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        is . open ( " /etc/passwd " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-15 16:22:05 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-10-20 15:20:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        //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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check m  QStandardItemModel.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check mi "1" QModelIndex.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i1 ,  & mi ,  & m ,  & i2 ,  & i11 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QStack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <10000 items> QStack<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s s.0 s.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <3 items> QStack<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s s.0 s.3.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <4 items> QStack<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s.3 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s <2 items> QStack<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-09 12:21:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QUrl  url ( QString ( " http://qt-project.org " ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-09 12:21:04 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check url "http://qt-project.org" QUrl.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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  " ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        str  + =  "  World " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        str . prepend ( " Prefix:  " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check str "Prefix: Hello  big, \t\r\n\000\001 fat  World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & str ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQString2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QChar  data [ ]  =  { ' H ' ,  ' e ' ,  ' l ' ,  ' l ' ,  ' o ' } ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  str1  =  QString : : fromRawData ( data ,  4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str2  =  QString : : fromRawData ( data  +  1 ,  4 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str1 "Hell" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check str2 "ello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & str1 ,  & str2 ,  & data ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-11-17 18:24:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQString4 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  <  1000000 ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            str  + =  QString : : fromLatin1 ( " %1  " ) . arg ( i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & str ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-11-17 23:06:46 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQStringRef ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  str  =  " Hello " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QStringRef  ref ( & str ,  1 ,  2 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ref "el" QStringRef.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-17 23:06:46 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & str ,  & ref ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testQString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testQString1 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQString2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQString3 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-17 18:24:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQString4 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-17 23:06:46 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testQStringRef ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-20 13:54:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand l.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check l <3 items> QStringList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 16:37:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check u "aöa" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  unsigned  char  uu [ ]  =  { ' a ' ,  153  /* ö Latin1 */ ,  ' 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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        //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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace text
  
						 
					
						
							
								
									
										
										
										
											2010-09-28 09:35:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-10-25 01:06:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qprocess  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQProcess ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  int  N  =  14 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QProcess  proc [ N ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  N ;  + + i )  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            proc [ i ] . start ( " sleep 10 " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            proc [ i ] . waitForStarted ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-26 11:01:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & proc ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-25 01:06:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace qprocess
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Expand this.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Expand this.@1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Check j 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                // CheckType this qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Check this.@1  QThread.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-14 13:24:02 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								                // Check this.@1.@1 "Thread #3" QObject.
 
							 
						 
					
						
							
								
									
										
										
										
											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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-14 13:24:02 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            thread [ i ] . setObjectName ( " Thread # "  +  QString : : number ( i ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-19 11:21:22 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            thread [ i ] . start ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand thread.0.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand thread.0.@1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand thread.13.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand thread.13.@1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType thread qthread::Thread [14].
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check thread.0  qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-14 13:24:02 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check thread.0.@1.@1 "Thread #0" qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check thread.13  qthread::Thread.
 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-14 13:24:02 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check thread.13.@1.@1 "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 )  
						 
					
						
							
								
									
										
										
										
											2014-04-03 17:44:48 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								typedef  QMap < uint ,  QStringList >  QMapUIntQStringList ;  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								Q_DECLARE_METATYPE ( QMapUIntQStringList )  
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var <1 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var <2 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var <2 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var <3 items> QVariant (QStringList).
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ha ha1 var.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ha "127.0.0.1" QHostAddress.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType var QVariant (QHostAddress).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data "127.0.0.1" QHostAddress.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-21 16:31:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  char  * name  =  QMetaType : : typeName ( var . userType ( ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand my my.0 my.0.value my.1 my.1.value var var.data var.data.0 var.data.0.value var.data.1 var.data.1.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check my <2 items> qvariant::MyType.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check my.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.key 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.0.value.0 "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.key 3 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check my.1.value.0 "World" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType var QVariant (QMap<unsigned int , QStringList>).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data <2 items> QMap<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.0   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.0.key 1 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.0.value <1 items> QStringList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var.0.value.0 "Hello" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check var.data.1   QMapNode<unsigned int, QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.1.key 3 unsigned int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.1.value <1 items> QStringList.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check var.data.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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-21 16:31:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & var ,  & name ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-28 16:31:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQVariant6 ( ) 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if QT_VERSION > 0x050000 
  
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QList < int >  list ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        list  < <  1  < <  2  < <  3 ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-05-27 13:32:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QVariant  variant  =  QVariant : : fromValue ( list ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list variant variant.data.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType variant QVariant (QList<int>).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.data <3 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.data.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.data.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check variant.data.2 3 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        list . clear ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-04 17:06:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        list  =  variant . value < QList < int >  > ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check list <3 items> QList<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vl.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vl <6 items> QVariantList.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-24 15:13:20 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vm [ " abd " ]  =  QVariant ( 1 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-09-15 15:17:35 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vm vm.0 vm.5.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vm <6 items> QVariantMap.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vm.0   QMapNode<QString, QVariant>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.0.key "a" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.0.value 1 QVariant (int).
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vm.5   QMapNode<QString, QVariant>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-09-03 22:03:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        for  ( int  i  =  0 ;  i  ! =  vec . size ( ) ;  + + i ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            vec [ i ]  =  i  *  i ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <10000 items> QVector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec.0 0 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-09-03 22:03:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec.1999 3996001 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <10002 items> QVector<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec vec.0 vec.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <2 items> QVector<Foo>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType vec.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.1 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-06-28 14:04:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        vec . append ( new  Fooooo ( 3 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec vec.0 vec.2.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-06-28 14:04:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <4 items> QVector<Foo*>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType vec.0 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.a 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 0x0 Foo *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType vec.2 Foo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.2.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-06-28 14:04:11 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType vec.3 Fooooo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.3.a 5 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand vec.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec <2 items> QVector<bool>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand pv pv.0 pv.1 vec vec.0 vec.1.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType pv QVector<QList<int>>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check pv.0 <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.0.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pv.1 <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check vec.0 <1 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.0.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check vec.1 <2 items> QList<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand list list.0 list.1 list2 list2.1.
 
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list.0 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.n_ 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list.0.str_ "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list.1 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType list2.0 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.0.n_ 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check list2.0.str_ "Hello" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType list2.1 noargs::Goo.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-10-16 10:48:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  gccextensions  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testGccExtensions ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# ifdef __GNUC__ 
  
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        char  v [ 8 ]  =  { 1 ,  2 } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  w  __attribute__  ( ( vector_size  ( 8 ) ) )  =  { 1 ,  2 } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  y [ 2 ]  =  { 1 ,  2 } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  z  __attribute__  ( ( vector_size  ( 8 ) ) )  =  { 1 ,  2 } ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-16 10:48:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.0 1 char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.1 2 char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check w.0 1 char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check w.1 2 char.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check y.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check y.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check z.0 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check z.1 2 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & v ,  & w ,  & y ,  & z ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace gccextension
  
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    dummyStatement ( & a ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2010-12-08 14:08:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2010-01-04 13:16:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								QString  fooxx ( )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    return  " bababa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  basic  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-04-05 14:14:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    struct  Empty  { } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Data  {  Data ( )  :  a ( 42 )  { }  int  a ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  VEmpty  { } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  VData  {  VData ( )  :  v ( 42 )  { }  int  v ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  S1  :  Empty ,  Data ,  virtual  VEmpty ,  virtual  VData 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S1 ( )  :  i1 ( 1 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  S2  :  Empty ,  Data ,  virtual  VEmpty ,  virtual  VData 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        S2 ( )  :  i2 ( 1 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i2 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Combined  :  S1 ,  S2 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Combined ( )  :  c ( 1 )  { }  int  c ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testInheritance ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Combined  combined ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        combined . S1 : : a  =  42 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        combined . S2 : : a  =  43 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        combined . S1 : : v  =  44 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        combined . S2 : : v  =  45 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & combined ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // This tests display of basic types.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-23 13:08:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        quint64  u64  =  ULLONG_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qint64  s64  =  LLONG_MAX ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-25 17:55:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        quint32  u32  =  UINT_MAX ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qint32  s32  =  INT_MAX ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        quint64  u64s  =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-23 13:08:08 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        qint64  s64s  =  LLONG_MIN ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        quint32  u32s  =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-02-25 17:55:36 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        qint32  s32s  =  INT_MIN ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u64 18446744073709551615 quint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s64 9223372036854775807 qint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u32 4294967295 quint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s32 2147483647 qint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u64s 0 quint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s64s -9223372036854775808 qint64.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u32s 0 quint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s32s -2147483648 qint32.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & u64 ,  & s64 ,  & u32 ,  & s32 ,  & u64s ,  & s64s ,  & u32s ,  & s32s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2013-10-10 16:12:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testStdInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        uint8_t  u8  =  64 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int8_t  s8  =   65 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u8 64 uint8_t
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check u8 65 int8_t
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & u8 ,  & s8 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 17:32:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testArray1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand d d.0.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType d double [3][3].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType d.0 double [3].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 14:24:39 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & d ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType c char [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s QString [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand b.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType b QByteArray [20].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType foo Foo [10].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/browse/QTCREATORBUG-5326
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testChar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:35:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        char  s [ 6 ] ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        s [ 0 ]  =  0 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-08 08:28:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char [6].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check s.0 0 '\0' char.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Open pinnable tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Step over.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Check that display and tooltip look sane.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-08 08:28:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        strcat ( s ,  " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s ,  " \" " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s ,  " a " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s ,  " b " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        strcat ( s ,  " \" " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Close tooltip.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-08 08:52:53 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2017-02-22 15:09:35 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    static  char  buf [ 20 ]  =  { 0 } ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-12 09:29:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testCharStar ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  * s  =  buf ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char *.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Open pinnable tooltip.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Step over.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Check that display and tooltip look sane.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-07-12 09:29:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s basic::S.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand func.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType func basic::Function.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand func.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType func basic::Function.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand c.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType c basic::Color.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Toogle "Sort Member Alphabetically" in context menu
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: of "Locals and Expressions" view.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Check that order of displayed members changes.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2016-02-23 13:43:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        using  uvl  =  unsigned  long  long ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  usingverylong  =  uvl ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-02-23 13:43:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testUsing ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_CXX11LIB 
  
						 
					
						
							
								
									
										
										
										
											2016-02-23 13:43:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        using  myType1  =  quint32 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  myType2  =  unsigned  int ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myType1  t1  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        myType2  t2  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ns : : uvl  j  =  1000 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ns : : usingverylong  k  =  1000 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check j 1000 basic::ns::uvl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check k 1000 basic::ns::usingverylong.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check t1 0 basic::myType1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check t2 0 basic::myType2.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & j ,  & k ,  & t1 ,  & t2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2016-02-23 13:43:06 +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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand u.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType u basic::U.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 13:21:24 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_UNINITIALIZED_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>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType mii <not accessible> QMap<int, int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Note: All values should be <uninitialized> or random data.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: Check that nothing bad happens if items with random data
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: are expanded.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 " ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-25 16:25:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  char  cs [ ]  =  " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  cc [ ]  =  " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  wchar_t  * w  =  L " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-25 16:25:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        const  wchar_t  cw [ ]  =  L " aöa " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        wchar_t  ww [ ]  =  L " aöa " ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QString  u ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s char *.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Skip 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".
 
							 
						 
					
						
							
								
									
										
										
										
											2014-06-25 16:25:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( s ,  w ,  & ww ,  & cw ,  & cc ,  & cs ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-08-29 13:00:12 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Select "Open Memory Editor->Open Memory Editor Showing Stack Layout"
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // from Locals and Expressions context menu.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check b "bababa" QString &.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 14:32:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testReference3 ( const  QString  & a ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  QString  & b  =  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  QString  & Ref ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        const  Ref  d  =  const_cast < Ref > ( a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check a "hello" QString &.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b "hello" QString &.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 14:32:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d "hello" basic::Ref.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & a ,  & b ,  & d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-05-11 22:09:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testDynamicReference ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        DerivedClass  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BaseClass  * b1  =  & d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BaseClass  & b2  =  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType b1 DerivedClass *.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType b2 DerivedClass &.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  x  =  b1 - > foo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  y  =  b2 . foo ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & d ,  & b1 ,  & b2 ,  & x ,  & y ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:46:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QDateTime  x  =  time ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# if USE_TIMEZONE 
  
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QTimeZone  tz ( " UTC+05:00 " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-30 23:46:25 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        x . setTimeZone ( tz ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-10-24 16:04:18 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								# endif 
  
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check N 10000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv QDateTime [10000].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType bigv.0 QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv.9999 QDateTime.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType time QDateTime.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Note: This is expected to _not_ take up to a minute.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-22 11:17:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand bigv.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check N 10000 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType bigv int [10000].
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check bigv.0 0 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check bigv.9999 9999 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Note: 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check proc  QProcess.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check there is some contents in ba. Error message is expected.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & ba ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 11:33:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    int  testFunctionPointerHelper ( int  x )  {  return  x ;  } 
							 
						 
					
						
							
								
									
										
										
										
											2012-06-13 13:10:57 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testFunctionPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 11:33:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        typedef  int  ( * func_t ) ( int ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func_t  f  =  testFunctionPointerHelper ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a  =  f ( 43 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType f basic::func_t.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check there's a valid display for f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & f ,  & a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  Class 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Class ( )  :  a ( 34 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  testFunctionPointerHelper ( int  x )  {  return  x ;  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testMemberFunctionPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Class  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  int  ( Class : : * func_t ) ( int ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        func_t  f  =  & Class : : testFunctionPointerHelper ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a  =  ( x . * f ) ( 43 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType f basic::func_t.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check there's a valid display for f.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & f ,  & a ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testMemberPointer ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Class  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  int  ( Class : : * member_t ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        member_t  m  =  & Class : : a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a  =  x . * m ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 11:33:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType m basic::member_t.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 11:33:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check there's a valid display for m.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & m ,  & a ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 16:23:10 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testPassByReferenceHelper ( Foo  & f ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo &.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f Foo &.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 14:47:59 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    int  testReturnInt ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  1 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bool  testReturnBool ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  true ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QString  testReturnQString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  " string " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testReturn ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        bool  b  =  testReturnBool ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b true bool.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  i  =  testReturnInt ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check i 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QString  s  =  testReturnQString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s "string" QString.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & i ,  & b ,  & s ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-10-31 10:11:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # ifdef Q_COMPILER_RVALUE_REFS 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    struct  X  {  X ( )  :  a ( 2 ) ,  b ( 3 )  { }  int  a ,  b ;  } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    X  testRValueReferenceHelper1 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  X ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    X  testRValueReferenceHelper2 ( X  & & x ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        return  x ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testRValueReference ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  & & x1  =  testRValueReferenceHelper1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  & & x2  =  testRValueReferenceHelper2 ( std : : move ( x1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  & & x3  =  testRValueReferenceHelper2 ( testRValueReferenceHelper1 ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  y1  =  testRValueReferenceHelper1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  y2  =  testRValueReferenceHelper2 ( std : : move ( y1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        X  y3  =  testRValueReferenceHelper2 ( testRValueReferenceHelper1 ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & x1 ,  & x2 ,  & x3 ,  & y1 ,  & y2 ,  & y3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testRValueReference ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBasic ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-04-05 14:14:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testInheritance ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-11-09 11:42:14 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testInt ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-10-10 16:12:50 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testStdInt ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testReference1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testReference2 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 14:32:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testReference3 ( " hello " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-31 10:11:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testRValueReference ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-11 22:09:19 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testDynamicReference ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 14:47:59 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testReturn ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-02-23 13:43:06 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testUsing ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-01-15 17:42:45 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								//        testFork();
  
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testFunctionPointer ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 11:33:45 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testMemberPointer ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testMemberFunctionPointer ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-12 13:40:32 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        std : : cout  < <  " Values are  "  < <  i  < <  "  and  "  < <  j  < <  " . "  < <  std : : endl ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2013-05-13 17:38:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if USE_SSE 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2014-05-05 18:28:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        __m128i  sseAi ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sseAi  =  _mm_set_epi32 ( 1 ,  3 ,  5 ,  7 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand a b.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType sseA __m128.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType sseB __m128.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check engine  QScriptEngine.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        date  =  s . toDateTime ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        s . setProperty ( " a " ,  QScriptValue ( ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QScriptValue  d  =  s . data ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d (invalid) QScriptValue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v 43 QVariant (int).
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check x 33 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check x1 "34" QString.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-08 14:08:16 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & x1 ,  & v ,  & s ,  & d ,  & x ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace script
  
						 
					
						
							
								
									
										
										
										
											2011-02-10 15:17:55 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-03-04 17:22:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  qjson  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testQJson ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # if USE_JSON 
 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QJsonObject  obj  { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " -1 " ,  - 1 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " 3 " ,  3 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " 0x3fffff (4194303) " ,  4194303 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " 0x400000 (4194304) " ,  4194304 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " 0x800000 (8388608) " ,  8388608 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " 0x1000000 (16777216) " ,  16777216 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " -0x3fffff (-4194303) " ,  - 4194303 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " -0x400000 (-4194304) " ,  - 4194304 } , 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            { " -0x800000 (-8388608) " ,  - 8388608 } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         QJsonArray  arr ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         for  ( unsigned  int  i  =  0 ;  i  <  32 ;  + + i )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-03 08:36:50 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								             const  qint64  bit  =  1ll  < <  i ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit  -  1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit  +  1 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								         } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								         for  ( unsigned  int  i  =  0 ;  i  <  32 ;  + + i )  { 
							 
						 
					
						
							
								
									
										
										
										
											2017-05-03 08:36:50 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								             const  qint64  bit  =  - ( 1ll  < <  i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit  +  1 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								             arr . append ( QJsonValue ( bit  -  1 ) ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								         } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v -1 QJsonValue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check obj "foo" -1 QJsonValue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2016-06-03 09:36:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace json
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-25 12:01:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  webkit  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testWTFString ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # if USE_WEBKITLIB 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_UNINITIALIZED_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        QWebPage  p ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType p QWebPage.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testWebKit ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testWTFString ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace webkit
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check i <uninitialized> boost::optional<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        i  =  1 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check i 1 boost::optional<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testBoostOptional2 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        boost : : optional < QStringList >  sl ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-24 13:51:49 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check sl <uninitialized> boost::optional<QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        sl  =  ( QStringList ( )  < <  " xxx "  < <  " yyy " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        sl . get ( ) . append ( " zzz " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check sl <3 items> boost::optional<QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand sl.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s (null) boost::shared_ptr<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check i 43 boost::shared_ptr<int>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check j 43 boost::shared_ptr<int>.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check sl  boost::shared_ptr<QStringList>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check sl.data <1 items> QStringList
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d Tue Feb 28 2006 boost::gregorian::date.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d Wed Nov 30 2005 boost::gregorian::date.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & d ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoostPosixTimeTimeDuration ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  boost ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  posix_time ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time_duration  d1 ( 1 ,  0 ,  0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d1 01:00:00 boost::posix_time::time_duration.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time_duration  d2 ( 0 ,  1 ,  0 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d2 00:01:00 boost::posix_time::time_duration.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        time_duration  d3 ( 0 ,  0 ,  1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d3 00:00:01 boost::posix_time::time_duration.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & d1 ,  & d2 ,  & d3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-21 00:49:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoostBimap ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  boost : : bimap < int ,  int >  B ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        B  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b <0 items> boost::B.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        b . left . insert ( B : : left_value_type ( 1 ,  2 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check b <1 items> boost::B.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        B : : left_const_iterator  it  =  b . left . begin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  l  =  it - > first ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  r  =  it - > second ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & b ,  & l ,  & r ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoostPosixTimePtime ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  boost ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  gregorian ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        using  namespace  posix_time ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ptime  p1 ( date ( 2002 ,  1 ,  10 ) ,  time_duration ( 1 ,  0 ,  0 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check p1 Thu Jan 10 01:00:00 2002 boost::posix_time::ptime.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ptime  p2 ( date ( 2002 ,  1 ,  10 ) ,  time_duration ( 0 ,  0 ,  0 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check p2 Thu Jan 10 00:00:00 2002 boost::posix_time::ptime.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        ptime  p3 ( date ( 1970 ,  1 ,  1 ) ,  time_duration ( 0 ,  0 ,  0 ) ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check p3 Thu Jan 1 00:00:00 1970 boost::posix_time::ptime.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & p1 ,  & p2 ,  & p3 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  testBoost ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostOptional1 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostOptional2 ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostSharedPtr ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-20 14:35:34 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testBoostPosixTimeTimeDuration ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        testBoostPosixTimePtime ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-12 17:50:50 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testBoostGregorianDate ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-21 00:49:59 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        testBoostBimap ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >      } } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								                >  } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        */ 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-23 17:53:17 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & i ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-17 14:54:31 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // 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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand ptr1 ptr2.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr1 KRBase.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // https://bugreports.qt.io/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-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: Check that Application Output pane contains string "Test".
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-15 13:32:46 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug842
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  bug3611  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test3611 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // https://bugreports.qt.io/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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check f 50 '2' 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-01-22 17:40:57 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check f 53 '5' bug3611::byte.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand map map.0 map.0.value.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map <2 items> QMap<int, bug4904::CustomStruct>.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check map.0   QMapNode<int, bug4904::CustomStruct>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check map.0.key -1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType map.0.value bug4904::CustomStruct.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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-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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/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-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand f.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType f bug5046::Foo.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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-12-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Manual: pop up main editor tooltip over 'f'
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Manual: 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/browse/QTCREATORBUG-5106
 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-15 16:23:28 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    class  A5106 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2019-07-23 10:58:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            A5106 ( int  a ,  int  b )  :  m_a ( a ) ,  m_b ( b )  { Q_UNUSED ( m_a ) ; Q_UNUSED ( m_b ) } 
							 
						 
					
						
							
								
									
										
										
										
											2011-06-22 10:42:40 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            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 : 
							 
						 
					
						
							
								
									
										
										
										
											2019-07-23 10:58:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								            B5106 ( int  c ,  int  a ,  int  b )  :  A5106 ( a ,  b ) ,  m_c ( c )  { Q_UNUSED ( m_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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/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.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-05-07 15:04:06 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check url "http://127.0.0.1/" QUrl &.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/browse/QTCREATORBUG-5799
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 12:25:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand s2 s2.@1 s4 s4.@1
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType a1 bug5799::S1 [10].
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType a2 bug5799::Array.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s2 bug5799::S2.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s2.@1 bug5799::S1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s2.@1.m1 5 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s2.@1.m2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s4 bug5799::S4.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s4.@1 bug5799::S3.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check s4.@1.m1 5 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType s4.@1.m2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & s2 ,  & s4 ,  & a1 ,  & a2 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-08-16 12:25:54 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug5799
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-01-16 18:49:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug6813  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/browse/QTCREATORBUG-6813
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-16 18:49:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    void  test6813 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      int  foo  =  0 ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      int  * bar  =  & foo ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      //std::cout << "&foo: " << &foo << "; bar: " << bar << "; &bar: " << &bar;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								      dummyStatement ( & foo ,  & bar ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug6813
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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-14 12:26:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand m m.0 m.0.second m.1 m.1.second.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check m <2 items> qc41700::map_t.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check m.0   std::pair<std::string const, std::list<std::string>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.first "one" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.0.second <3 items> std::list<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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>>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.first "two" std::string.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check m.1.second <3 items> std::list<std::string>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // 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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2014-12-15 09:31:53 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // https://bugreports.qt.io/browse/QTCREATORBUG-6465
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-03 19:19:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6465 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        typedef  char  Foo [ 20 ] ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Foo  foo  =  " foo " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        char  bar [ 20 ]  =  " baz " ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // BREAK HERE
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & foo ,  & bar ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace bug6465
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 09:56:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug6857  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  MyFile  :  public  QFile 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyFile ( const  QString  & fileName ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  QFile ( fileName )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6857 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyFile  file ( " /tmp/tt " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        file . setObjectName ( " A file " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 09:56:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand file.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand file.@1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand file.@1.@1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check file  bug6857::MyFile.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check file.@1 "/tmp/tt" QFile.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check file.@1.@1.@1 "A file" QObject.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 09:56:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & file ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 13:29:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  bug6858  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  MyFile  :  public  QFile 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyFile ( const  QString  & fileName ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            :  QFile ( fileName )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6858 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyFile  file ( " /tmp/tt " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        file . setObjectName ( " Another file " ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 13:29:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QFile  * pfile  =  & file ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand pfile.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand pfile.@1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand pfile.@1.@1.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check pfile  bug6858::MyFile.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check pfile.@1 "/tmp/tt" QFile.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-10 17:28:16 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check pfile.@1.@1.@1 "Another file" QObject.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 13:29:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & file ,  pfile ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 14:39:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								namespace  bug6863  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  MyObject  :  public  QObject 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Q_OBJECT 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        MyObject ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  setProp ( QObject  * obj ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        obj - > setProperty ( " foo " ,  " bar " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand obj.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check obj.[QObject].properties <2 items>.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & obj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6863 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 19:28:54 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        QFile  file ( " /tmp/tt " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        setProp ( & file ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 14:39:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        MyObject  obj ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        setProp ( & obj ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-22 17:53:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  bug6933  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Base 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-02 18:57:36 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        Base ( )  :  a ( 21 )  { } 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-22 17:53:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        virtual  ~ Base ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  a ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    class  Derived  :  public  Base 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-02 18:57:36 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    public : 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Derived ( )  :  b ( 42 )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        int  b ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-22 17:53:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  test6933 ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Derived  d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Base  * b  =  & d ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        BREAK_HERE ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand b b.bug6933::Base
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check b.[bug6933::Base].[vptr]
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-02 18:57:36 +03:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check b.b 42 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-15 16:34:07 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-22 17:53:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & d ,  b ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
									
										
										
										
											2012-01-24 13:29:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand d ptr ptr.@1 ptrConst ptrToPtr ref refConst s.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType d gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType d.@1 gdb13393::Base.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check d.b 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptr.@1 gdb13393::Base.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check ptr.@1.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrConst gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrConst.@1 gdb13393::Base.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-02 19:09:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ptrConst.b 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrToPtr gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ptrToPtr.[vptr] .
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:09:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ptrToPtr.@1.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ref gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType ref.[vptr] .
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:09:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check ref.@1.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType refConst gdb13393::Derived.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType refConst.[vptr] .
 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-13 13:09:52 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check refConst.@1.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-07 14:55:37 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // CheckType s gdb13393::S.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-08 17:40:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-15 12:25:27 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v  gdb10586::test.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v.a 1 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:12:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // 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 ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-01 08:51:48 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Expand v.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Expand n.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType v {...}.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // CheckType n gdb10586::s.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.a 2 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-20 18:55:12 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Check v.b 3 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check v.x 1 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check n.x 10 int.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Check n.y 20 int.
 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:12:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        // Continue.
 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:35:28 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								        dummyStatement ( & v ,  & n ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 08:12:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    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
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-08-07 18:48:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								namespace  tmplate  {  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    template < typename  T >   struct  Template 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Template ( )  :  t ( )  { } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // This serves as a manual test that multiple breakpoints work.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // Each of the two '// BREAK_HERE' below is in a function that
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // is instantiated three times, so both should be reported as
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        // breakpoints with three subbreakpoints each.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        template  < typename  S >  void  fooS ( S  s ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            t  =  s ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // BREAK_HERE;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        template  < int  N >  void  fooN ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            t  =  N ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								            // BREAK_HERE;
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        T  t ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    void  testTemplate ( ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    { 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        Template < double >  t ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooS ( 1 ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooS ( 1. ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooS ( ' a ' ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooN < 2 > ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooN < 3 > ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        t . fooN < 4 > ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        dummyStatement ( & t ,  & t . t ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    } 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								}  // namespace tmplate
  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2015-01-12 11:23:56 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								template  < class  X >  int  ffff ( X )  
						 
					
						
							
								
									
										
										
										
											2013-08-16 23:44:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2015-01-12 11:23:56 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    return  sizeof ( X ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-08-16 23:44:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								}  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-08-18 16:14:34 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								int  main ( int  argc ,  char  * argv [ ] )  
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								{  
						 
					
						
							
								
									
										
										
										
											2013-08-16 23:44:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    int  z  =  ffff ( 3 )  +  ffff ( 2.0 ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2019-07-23 10:58:00 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    Q_UNUSED ( z ) 
							 
						 
					
						
							
								
									
										
										
										
											2013-08-16 23:44:15 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # if USE_GUILIB 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QApplication  app ( argc ,  argv ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-07-19 12:44:55 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    # else 
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    QCoreApplication  app ( argc ,  argv ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    # endif 
 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-04-11 14:11:07 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    QChar  c ( 0x1E9E ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    bool  b  =  c . isPrint ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qDebug ( )  < <  c  < <  b ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-12-14 10:14:41 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // Notify Creator about auto run intention.
 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    if  ( USE_AUTORUN ) 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qWarning ( " Creator: Switch on magic autorun. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    else 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								        qWarning ( " Creator: Switch off magic autorun. " ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-16 10:48:58 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    gccextensions : : testGccExtensions ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-30 11:47:43 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    undefined : : testUndefined ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    plugin : : testPlugin ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    valgrind : : testValgrind ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    namespc : : testNamespace ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-08-07 18:48:21 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    tmplate : : testTemplate ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    painting : : testPainting ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-04-25 12:01:20 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    webkit : : testWebKit ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-10 14:37:15 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2012-02-04 00:59:31 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdarray : : testStdArray ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-03 20:55:04 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdcomplex : : testStdComplex ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stddeque : : testStdDeque ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdlist : : testStdList ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdhashset : : testStdHashSet ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    stdmap : : testStdMap ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-27 10:00:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdunorderedmap : : testStdUnorderedMap ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-02 19:50:47 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    stdptr : : testStdPtr ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2013-11-21 22:57:22 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    lambda : : testLambda ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2008-12-02 12:01:29 +01:00 
										
									 
								 
							 
							
								
							 
							
								 
							
							
								
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qbytearray : : testQByteArray ( ) ; 
							 
						 
					
						
							
								
							 
							
								
							 
							
								 
							
							
								    qdatetime : : testDateTime ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-05 10:57:38 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qdir : : testQDir ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-18 15:03:58 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2016-05-24 12:19:26 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qjson : : testQJson ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2015-12-07 18:59:51 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    // qthread::testQThread();
 
							 
						 
					
						
							
								
									
										
										
										
											2012-10-25 01:06:44 +02:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    qprocess : : testQProcess ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-16 18:49:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6813 : : test6813 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2011-11-03 19:19:10 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6465 : : test6465 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 09:56:13 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6857 : : test6857 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-01-24 13:29:21 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6858 : : test6858 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-03-14 14:39:01 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6863 : : test6863 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											2012-02-22 17:53:00 +01:00 
										
									 
								 
							 
							
								
									
										 
								
							 
							
								 
							
							
								    bug6933 : : test6933 ( ) ; 
							 
						 
					
						
							
								
									
										
										
										
											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"