summaryrefslogtreecommitdiff
path: root/boost/spirit-1.6.1.patch
blob: 1e9d6405a2444a445dd445cd8800401f6a263cb2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
*** misc/spirit-1.6.1/boost/spirit/core/composite/epsilon.hpp	Tue Jul  8 04:19:06 2003
--- misc/build/spirit-1.6.1/boost/spirit/core/composite/epsilon.hpp	Wed Aug 30 15:25:27 2006
***************
*** 70,76 ****
  private:
  };
  
! #if BOOST_WORKAROUND(BOOST_MSVC, == 1310) // VC 7.1
  template <typename CondT>
  inline condition_parser<CondT, false>
  operator~(condition_parser<CondT, true> const& p)
--- 70,76 ----
  private:
  };
  
! #if BOOST_WORKAROUND(BOOST_MSVC, == 1310) || BOOST_WORKAROUND(__SUNPRO_CC, BOOST_TESTED_AT(0x550))
  template <typename CondT>
  inline condition_parser<CondT, false>
  operator~(condition_parser<CondT, true> const& p)
*** misc/spirit-1.6.1/boost/spirit/core/impl/match.ipp	Tue Jul  8 04:19:06 2003
--- misc/build/spirit-1.6.1/boost/spirit/core/impl/match.ipp	Wed Aug 30 15:25:27 2006
***************
*** 154,160 ****
              { return nil_t(); }
          };
  
!     #if !defined(__BORLANDC__)
          struct dummy { void nonnull() {}; };
          typedef void (dummy::*safe_bool)();
      #else
--- 154,160 ----
              { return nil_t(); }
          };
  
!     #if !defined(__BORLANDC__) && !defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
          struct dummy { void nonnull() {}; };
          typedef void (dummy::*safe_bool)();
      #else
***************
*** 161,167 ****
          typedef bool safe_bool;
      #endif
  
!     #if !defined(__BORLANDC__)
      #define BOOST_SPIRIT_SAFE_BOOL(cond)  ((cond) ? &impl::dummy::nonnull : 0)
      #else
      #define BOOST_SPIRIT_SAFE_BOOL(cond)  (cond)
--- 161,167 ----
          typedef bool safe_bool;
      #endif
  
!     #if !defined(__BORLANDC__) && !defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
      #define BOOST_SPIRIT_SAFE_BOOL(cond)  ((cond) ? &impl::dummy::nonnull : 0)
      #else
      #define BOOST_SPIRIT_SAFE_BOOL(cond)  (cond)
*** misc/spirit-1.6.1/boost/spirit/core/scanner/scanner.hpp	Tue Jul  8 04:19:06 2003
--- misc/build/spirit-1.6.1/boost/spirit/core/scanner/scanner.hpp	Wed Aug 30 15:25:27 2006
***************
*** 18,23 ****
--- 18,26 ----
  #include <iterator>
  
  #include "boost/config.hpp"
+ #ifdef BOOST_NO_STD_ITERATOR_TRAITS
+ #include "boost/iterator_adaptors.hpp"
+ #endif
  #include "boost/spirit/core/match.hpp"
  #include "boost/spirit/core/non_terminal/parser_id.hpp"
  
***************
*** 236,245 ****
--- 239,255 ----
      typedef IteratorT iterator_t;
      typedef PoliciesT policies_t;
  
+ #ifdef BOOST_NO_STD_ITERATOR_TRAITS
+     typedef typename boost::detail::iterator_traits<IteratorT>::value_type
+         value_t;
+     typedef typename boost::detail::iterator_traits<IteratorT>::reference
+         ref_t;
+ #else
      typedef typename BOOST_SPIRIT_IT_NS::iterator_traits<IteratorT>::value_type
          value_t;
      typedef typename BOOST_SPIRIT_IT_NS::iterator_traits<IteratorT>::reference
          ref_t;
+ #endif
      typedef typename boost::call_traits<IteratorT>::param_type
          iter_param_t;
  
*** misc/spirit-1.6.1/miniboost/boost/optional.hpp	Tue Jul  8 04:19:09 2003
--- misc/build/spirit-1.6.1/miniboost/boost/optional.hpp	Wed Aug 30 15:25:27 2006
***************
*** 17,22 ****
--- 17,27 ----
  #ifndef BOOST_OPTIONAL_FLC_19NOV2002_HPP
  #define BOOST_OPTIONAL_FLC_19NOV2002_HPP
  
+ #if defined _MSC_VER
+ #pragma warning(push)
+ #pragma warning(disable: 4668) // "id is not defined as a preprocessor macro"
+ #endif
+ 
  #include<new>
  #include<algorithm>
  
***************
*** 194,200 ****
--- 199,209 ----
  
      // implicit conversion to "bool"
      // No-throw
+ #if defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
+     operator bool() const { return m_initialized; }
+ #else
      operator unspecified_bool_type() const { return m_initialized ? &this_type::destroy : 0 ; }
+ #endif // defined(__SUNPRO_CC)
  
         // This is provided for those compilers which don't like the conversion to bool
         // on some contexts.
***************
*** 313,317 ****
--- 322,330 ----
  
  } // namespace boost
  
+ #if defined _MSC_VER
+ #pragma warning(pop)
  #endif
+ 
+ #endif
  
*** misc/spirit-1.6.1/miniboost/boost/scoped_array.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/scoped_array.hpp	Wed Aug 30 15:25:27 2006
***************
*** 83,88 ****
--- 83,91 ----
  
      // implicit conversion to "bool"
  
+ #if defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
+     operator bool() const { return ptr != 0; }
+ #else
      typedef T * (this_type::*unspecified_bool_type)() const;
  
      operator unspecified_bool_type() const // never throws
***************
*** 89,94 ****
--- 92,98 ----
      {
          return ptr == 0? 0: &this_type::get;
      }
+ #endif // defined(__SUNPRO_CC)
  
      bool operator! () const // never throws
      {
*** misc/spirit-1.6.1/miniboost/boost/scoped_ptr.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/scoped_ptr.hpp	Wed Aug 30 15:25:27 2006
***************
*** 102,107 ****
--- 102,110 ----
  
      // implicit conversion to "bool"
  
+ #if defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
+     operator bool() const { return ptr != 0; }
+ #else
      typedef T * (this_type::*unspecified_bool_type)() const;
  
      operator unspecified_bool_type() const // never throws
***************
*** 108,113 ****
--- 111,117 ----
      {
          return ptr == 0? 0: &this_type::get;
      }
+ #endif // defined(__SUNPRO_CC)
  
      bool operator! () const // never throws
      {
*** misc/spirit-1.6.1/miniboost/boost/shared_array.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/shared_array.hpp	Wed Aug 30 15:25:27 2006
***************
*** 94,99 ****
--- 94,102 ----
  
      // implicit conversion to "bool"
  
+ #if defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
+     operator bool() const { return px != 0; }
+ #else
      typedef T * (this_type::*unspecified_bool_type)() const;
  
      operator unspecified_bool_type() const // never throws
***************
*** 100,105 ****
--- 103,109 ----
      {
          return px == 0? 0: &this_type::get;
      }
+ #endif // defined(__SUNPRO_CC)
  
      bool operator! () const // never throws
      {
*** misc/spirit-1.6.1/miniboost/boost/shared_ptr.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/shared_ptr.hpp	Wed Aug 30 15:25:27 2006
***************
*** 35,41 ****
  
  #ifdef BOOST_MSVC  // moved here to work around VC++ compiler crash
  # pragma warning(push)
! # pragma warning(disable:4284) // odd return type for operator->
  #endif
  
  namespace boost
--- 35,41 ----
  
  #ifdef BOOST_MSVC  // moved here to work around VC++ compiler crash
  # pragma warning(push)
! # pragma warning(disable: 4668) // "id is not defined as a preprocessor macro"
  #endif
  
  namespace boost
***************
*** 246,251 ****
--- 246,254 ----
  
      // implicit conversion to "bool"
  
+ #if defined(__SUNPRO_CC) // workaround opt bug when compiling with -xO3
+     operator bool() const { return px != 0; }
+ #else
      typedef T * (this_type::*unspecified_bool_type)() const;
  
      operator unspecified_bool_type() const // never throws
***************
*** 252,257 ****
--- 255,261 ----
      {
          return px == 0? 0: &this_type::get;
      }
+ #endif // defined(__SUNPRO_CC)
  
      // operator! is redundant, but some compilers need it
  
*** misc/spirit-1.6.1/miniboost/boost/throw_exception.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/throw_exception.hpp	Wed Aug 30 15:25:27 2006
***************
*** 29,35 ****
  
  #ifdef BOOST_NO_EXCEPTIONS
  
! void throw_exception(std::exception const & e); // user defined
  
  #else
  
--- 29,36 ----
  
  #ifdef BOOST_NO_EXCEPTIONS
  
! // void throw_exception(std::exception const & e); // user defined
! inline void throw_exception(std::exception const &) {}
  
  #else
  
*** misc/spirit-1.6.1/miniboost/boost/config/user.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/config/user.hpp	Wed Aug 30 15:25:27 2006
***************
*** 66,68 ****
--- 66,74 ----
  // #define BOOST_DISABLE_WIN32
  
  
+ // Switch off exception statements if file is compiled without
+ // exception support:
+ #if defined(EXCEPTIONS_OFF) && !defined(BOOST_NO_EXCEPTIONS)
+ #define BOOST_NO_EXCEPTIONS
+ #endif
+ 
*** misc/spirit-1.6.1/miniboost/boost/config/compiler/gcc.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/config/compiler/gcc.hpp	Wed Aug 30 15:25:27 2006
***************
*** 59,65 ****
  #endif
  //
  // last known and checked version is 3.2:
! #if (__GNUC__ > 3) || ((__GNUC__ == 3) && (__GNUC_MINOR__ > 2))
  #  if defined(BOOST_ASSERT_CONFIG)
  #     error "Unknown compiler version - please run the configure tests and report the results"
  #  else
--- 59,66 ----
  #endif
  //
  // last known and checked version is 3.2:
! // although 3.4+x & 4.x are unchecked, we will give it a try
! #if (__GNUC__ > 4)
  #  if defined(BOOST_ASSERT_CONFIG)
  #     error "Unknown compiler version - please run the configure tests and report the results"
  #  else
*** misc/spirit-1.6.1/miniboost/boost/config/compiler/sunpro_cc.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/config/compiler/sunpro_cc.hpp	Wed Aug 30 15:25:27 2006
***************
*** 45,52 ****
  #      define BOOST_NO_INTEGRAL_INT64_T
  #    endif
  
! #    if (__SUNPRO_CC <= 0x540) || !defined(BOOST_STRICT_CONFIG)
  #      define BOOST_NO_TEMPLATE_TEMPLATES
  #    endif
  
  #define BOOST_COMPILER "Sun compiler version " BOOST_STRINGIZE(__SUNPRO_CC)
--- 45,57 ----
  #      define BOOST_NO_INTEGRAL_INT64_T
  #    endif
  
! #    if (__SUNPRO_CC <= 0x550) || !defined(BOOST_STRICT_CONFIG)
  #      define BOOST_NO_TEMPLATE_TEMPLATES
+        // see http://lists.boost.org/MailArchives/boost/msg47184.php
+        // and http://lists.boost.org/MailArchives/boost/msg47220.php
+ #      define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
+ #      define BOOST_NO_SFINAE
+ #      define BOOST_NO_ARRAY_TYPE_SPECIALIZATIONS
  #    endif
  
  #define BOOST_COMPILER "Sun compiler version " BOOST_STRINGIZE(__SUNPRO_CC)
*** misc/spirit-1.6.1/miniboost/boost/config/compiler/visualc.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/config/compiler/visualc.hpp	Wed Jun 28 16:54:42 2006
***************
*** 1,123 ****
! //  (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
! //  distribute this software is granted provided this copyright notice appears
! //  in all copies. This software is provided "as is" without express or implied
! //  warranty, and with no claim as to its suitability for any purpose.
! 
! //  See http://www.boost.org for most recent version.
! 
! //  Microsoft Visual C++ compiler setup:
! 
! #define BOOST_MSVC _MSC_VER
! 
! // turn off the warnings before we #include anything
! #pragma warning( disable : 4503 ) // warning: decorated name length exceeded
! 
! #if _MSC_VER <= 1200  // 1200 == VC++ 6.0
! #pragma warning( disable : 4786 ) // ident trunc to '255' chars in debug info
! #  define BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
! #  define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
! #  define BOOST_NO_VOID_RETURNS
! #  define BOOST_NO_EXCEPTION_STD_NAMESPACE
! #  define BOOST_NO_DEDUCED_TYPENAME
!    // disable min/max macro defines on vc6:
!    //
! #endif
! 
! #if (_MSC_VER <= 1300)  // 1200 == VC++ 7.0
! 
! #if !defined(_MSC_EXTENSIONS) && !defined(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS)      // VC7 bug with /Za
! #  define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
! #endif
! 
! #  define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
! #  define BOOST_NO_PRIVATE_IN_AGGREGATE
! #  define BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP
! #  define BOOST_NO_INTEGRAL_INT64_T
! 
! //    VC++ 6/7 has member templates but they have numerous problems including
! //    cases of silent failure, so for safety we define:
! #  define BOOST_NO_MEMBER_TEMPLATES
! //    For VC++ experts wishing to attempt workarounds, we define:
! #  define BOOST_MSVC6_MEMBER_TEMPLATES
! 
! #  define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
! #  define BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
! #  define BOOST_NO_CV_VOID_SPECIALIZATIONS
! #  define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
! #  define BOOST_NO_USING_TEMPLATE
! #  define BOOST_NO_SWPRINTF
! #  define BOOST_NO_TEMPLATE_TEMPLATES
! #  if (_MSC_VER > 1200)
! #     define BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS
! #  endif
! 
! #endif
! 
! #if _MSC_VER < 1310 // 1310 == VC++ 7.1
! #  define BOOST_NO_SWPRINTF
! #endif
! 
! #if _MSC_VER <= 1310
! #  define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
! #endif
! 
! #ifndef _NATIVE_WCHAR_T_DEFINED
! #  define BOOST_NO_INTRINSIC_WCHAR_T
! #endif
! 
! //   
! // check for exception handling support:   
! #ifndef _CPPUNWIND   
! #  define BOOST_NO_EXCEPTIONS   
! #endif 
! 
! //
! // __int64 support:
! //
! #if (_MSC_VER >= 1200) && defined(_MSC_EXTENSIONS)
! #   define BOOST_HAS_MS_INT64
! #endif
! #if (_MSC_VER >= 1310) && defined(_MSC_EXTENSIONS)
! #   define BOOST_HAS_LONG_LONG
! #endif
! //
! // disable Win32 API's if compiler extentions are
! // turned off:
! //
! #ifndef _MSC_EXTENSIONS
! #  define BOOST_DISABLE_WIN32
! #endif
! 
! # if _MSC_VER == 1200
! #   define BOOST_COMPILER_VERSION 6.0
! # elif _MSC_VER == 1300
! #   define BOOST_COMPILER_VERSION 7.0
! # elif _MSC_VER == 1310
! #   define BOOST_COMPILER_VERSION 7.1
! # else
! #   define BOOST_COMPILER_VERSION _MSC_VER
! # endif
! 
! #define BOOST_COMPILER "Microsoft Visual C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
! 
! //
! // versions check:
! // we don't support Visual C++ prior to version 6:
! #if _MSC_VER < 1200
! #error "Compiler not supported or configured - please reconfigure"
! #endif
! //
! // last known and checked version is 1310:
! #if (_MSC_VER > 1310)
! #  if defined(BOOST_ASSERT_CONFIG)
! #     error "Unknown compiler version - please run the configure tests and report the results"
! #  else
! #     pragma message("Unknown compiler version - please run the configure tests and report the results")
! #  endif
! #endif
! 
! 
! 
! 
! 
! 
--- 1,124 ----
! //  (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
! //  distribute this software is granted provided this copyright notice appears
! //  in all copies. This software is provided "as is" without express or implied
! //  warranty, and with no claim as to its suitability for any purpose.
! 
! //  See http://www.boost.org for most recent version.
! 
! //  Microsoft Visual C++ compiler setup:
! 
! #define BOOST_MSVC _MSC_VER
! 
! // turn off the warnings before we #include anything
! #pragma warning( disable : 4503 ) // warning: decorated name length exceeded
! 
! #if _MSC_VER <= 1200  // 1200 == VC++ 6.0
! #pragma warning( disable : 4786 ) // ident trunc to '255' chars in debug info
! #  define BOOST_NO_EXPLICIT_FUNCTION_TEMPLATE_ARGUMENTS
! #  define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
! #  define BOOST_NO_VOID_RETURNS
! #  define BOOST_NO_EXCEPTION_STD_NAMESPACE
! #  define BOOST_NO_DEDUCED_TYPENAME
!    // disable min/max macro defines on vc6:
!    //
! #endif
! 
! #if (_MSC_VER <= 1300)  // 1200 == VC++ 7.0
! 
! #if !defined(_MSC_EXTENSIONS) && !defined(BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS)      // VC7 bug with /Za
! #  define BOOST_NO_DEPENDENT_TYPES_IN_TEMPLATE_VALUE_PARAMETERS
! #endif
! 
! #  define BOOST_NO_INCLASS_MEMBER_INITIALIZATION
! #  define BOOST_NO_PRIVATE_IN_AGGREGATE
! #  define BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP
! #  define BOOST_NO_INTEGRAL_INT64_T
! 
! //    VC++ 6/7 has member templates but they have numerous problems including
! //    cases of silent failure, so for safety we define:
! #  define BOOST_NO_MEMBER_TEMPLATES
! //    For VC++ experts wishing to attempt workarounds, we define:
! #  define BOOST_MSVC6_MEMBER_TEMPLATES
! 
! #  define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
! #  define BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION
! #  define BOOST_NO_CV_VOID_SPECIALIZATIONS
! #  define BOOST_NO_FUNCTION_TEMPLATE_ORDERING
! #  define BOOST_NO_USING_TEMPLATE
! #  define BOOST_NO_SWPRINTF
! #  define BOOST_NO_TEMPLATE_TEMPLATES
! #  if (_MSC_VER > 1200)
! #     define BOOST_NO_MEMBER_FUNCTION_SPECIALIZATIONS
! #  endif
! 
! #endif
! 
! #if _MSC_VER < 1310 // 1310 == VC++ 7.1
! #  define BOOST_NO_SWPRINTF
! #endif
! 
! #if _MSC_VER <= 1310
! #  define BOOST_NO_MEMBER_TEMPLATE_FRIENDS
! #endif
! 
! #ifndef _NATIVE_WCHAR_T_DEFINED
! #  define BOOST_NO_INTRINSIC_WCHAR_T
! #endif
! 
! //
! // check for exception handling support:
! #ifndef _CPPUNWIND
! #  define BOOST_NO_EXCEPTIONS
! #endif
! 
! //
! // __int64 support:
! //
! #if (_MSC_VER >= 1200) && defined(_MSC_EXTENSIONS)
! #   define BOOST_HAS_MS_INT64
! #endif
! #if (_MSC_VER >= 1310) && defined(_MSC_EXTENSIONS)
! #   define BOOST_HAS_LONG_LONG
! #endif
! //
! // disable Win32 API's if compiler extentions are
! // turned off:
! //
! #ifndef _MSC_EXTENSIONS
! #  define BOOST_DISABLE_WIN32
! #endif
! 
! # if _MSC_VER == 1200
! #   define BOOST_COMPILER_VERSION 6.0
! # elif _MSC_VER == 1300
! #   define BOOST_COMPILER_VERSION 7.0
! # elif _MSC_VER == 1310
! #   define BOOST_COMPILER_VERSION 7.1
! # elif _MSC_VER == 1400
! #   define BOOST_COMPILER_VERSION 8.0
! # else
! #   define BOOST_COMPILER_VERSION _MSC_VER
! # endif
! 
! #define BOOST_COMPILER "Microsoft Visual C++ version " BOOST_STRINGIZE(BOOST_COMPILER_VERSION)
! 
! //
! // versions check:
! // we don't support Visual C++ prior to version 6:
! #if _MSC_VER < 1200
! #error "Compiler not supported or configured - please reconfigure"
! #endif
! //
! // last known and checked version is 1310:
! #if (_MSC_VER > 1410)
! #  if defined(BOOST_ASSERT_CONFIG)
! #     error "Unknown compiler version - please run the configure tests and report the results"
! #  else
! #     pragma message("Unknown compiler version - please run the configure tests and report the results")
! #  endif
! #endif
! 
! 
! 
! 
! 
*** misc/spirit-1.6.1/miniboost/boost/config/platform/win32.hpp	Tue Jul  8 04:19:08 2003
--- misc/build/spirit-1.6.1/miniboost/boost/config/platform/win32.hpp	Wed Jun 28 16:54:42 2006
***************
*** 1,67 ****
! //  (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
! //  distribute this software is granted provided this copyright notice appears
! //  in all copies. This software is provided "as is" without express or implied
! //  warranty, and with no claim as to its suitability for any purpose.
! 
! //  See http://www.boost.org for most recent version.
! 
! //  Win32 specific config options:
! 
! #define BOOST_PLATFORM "Win32"
! 
! #if defined(__GNUC__) && !defined(BOOST_NO_SWPRINTF)
! #  define BOOST_NO_SWPRINTF
! #endif
! 
! #ifndef BOOST_DISABLE_WIN32
! //
! // Win32 will normally be using native Win32 threads,
! // but there is a pthread library avaliable as an option:
! //
! #ifndef BOOST_HAS_PTHREADS
! #  define BOOST_HAS_WINTHREADS
! #endif
! 
! // WEK: Added
! #define BOOST_HAS_FTIME
! 
! #endif
! 
! //
! // disable min/max macros:
! //
! #ifdef min
! #  undef min
! #endif
! #ifdef max
! #  undef max
! #endif
! #ifndef NOMINMAX
! #  define NOMINMAX
! #endif
! 
! #ifdef BOOST_MSVC
! namespace std{
!   // Apparently, something in the Microsoft libraries requires the "long"
!   // overload, because it calls the min/max functions with arguments of
!   // slightly different type.  (If this proves to be incorrect, this
!   // whole "BOOST_MSVC" section can be removed.)
!   inline long min(long __a, long __b) {
!     return __b < __a ? __b : __a;
!   }
!   inline long max(long __a, long __b) {
!     return  __a < __b ? __b : __a;
!   }
!   // The "long double" overload is required, otherwise user code calling
!   // min/max for floating-point numbers will use the "long" overload.
!   // (SourceForge bug #495495)
!   inline long double min(long double __a, long double __b) {
!     return __b < __a ? __b : __a;
!   }
!   inline long double max(long double __a, long double __b) {
!     return  __a < __b ? __b : __a;
!   }
! }
! using std::min;
! using std::max;
! #     endif
--- 1,69 ----
! //  (C) Copyright Boost.org 2001. Permission to copy, use, modify, sell and
! //  distribute this software is granted provided this copyright notice appears
! //  in all copies. This software is provided "as is" without express or implied
! //  warranty, and with no claim as to its suitability for any purpose.
! 
! //  See http://www.boost.org for most recent version.
! 
! //  Win32 specific config options:
! 
! #define BOOST_PLATFORM "Win32"
! 
! #if defined(__GNUC__) && !defined(BOOST_NO_SWPRINTF)
! #  define BOOST_NO_SWPRINTF
! #endif
! 
! #ifndef BOOST_DISABLE_WIN32
! //
! // Win32 will normally be using native Win32 threads,
! // but there is a pthread library avaliable as an option:
! //
! #ifndef BOOST_HAS_PTHREADS
! #  define BOOST_HAS_WINTHREADS
! #endif
! 
! // WEK: Added
! #define BOOST_HAS_FTIME
! 
! #endif
! 
! //
! // disable min/max macros:
! //
! #ifdef min
! #  undef min
! #endif
! #ifdef max
! #  undef max
! #endif
! #ifndef NOMINMAX
! #  define NOMINMAX
! #endif
! 
! #if (_MSC_VER < 1400)
! #ifdef BOOST_MSVC
! namespace std{
!   // Apparently, something in the Microsoft libraries requires the "long"
!   // overload, because it calls the min/max functions with arguments of
!   // slightly different type.  (If this proves to be incorrect, this
!   // whole "BOOST_MSVC" section can be removed.)
!   inline long min(long __a, long __b) {
!     return __b < __a ? __b : __a;
!   }
!   inline long max(long __a, long __b) {
!     return  __a < __b ? __b : __a;
!   }
!   // The "long double" overload is required, otherwise user code calling
!   // min/max for floating-point numbers will use the "long" overload.
!   // (SourceForge bug #495495)
!   inline long double min(long double __a, long double __b) {
!     return __b < __a ? __b : __a;
!   }
!   inline long double max(long double __a, long double __b) {
!     return  __a < __b ? __b : __a;
!   }
! }
! using std::min;
! using std::max;
! #     endif
! #endif