• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Copyright David Abrahams, Daniel Wallin 2006.
2# Copyright Cromwell D. Enage 2017.
3# Distributed under the Boost Software License, Version 1.0.
4# (See accompanying file LICENSE_1_0.txt or copy at
5# http://www.boost.org/LICENSE_1_0.txt)
6
7# Boost Parameter Library test Jamfile
8
9import testing ;
10
11project boost/parameter
12    :
13        default-build
14        <warnings>off
15    ;
16
17import python ;
18
19alias parameter_standard_tests
20    :
21    [ run maybe.cpp : : : : : <preserve-target-tests>off ]
22    [ run singular.cpp : : : : : <preserve-target-tests>off ]
23    [ run tutorial.cpp : : : : : <preserve-target-tests>off ]
24    [ run compose.cpp
25        :
26        :
27        :
28            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=3
29        :
30        :
31            <preserve-target-tests>off
32    ]
33    [ run sfinae.cpp
34        :
35        :
36        :
37            <define>BOOST_PARAMETER_MAX_ARITY=2
38            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
39        :
40        :
41            <preserve-target-tests>off
42    ]
43    [ run efficiency.cpp
44        :
45        :
46        :
47        :
48        :
49            <variant>release
50            <preserve-target-tests>off
51    ]
52    [ run evaluate_category.cpp
53        :
54        :
55        :
56            <define>BOOST_PARAMETER_MAX_ARITY=4
57            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
58        :
59        :
60            <preserve-target-tests>off
61    ]
62    [ run evaluate_category_16.cpp
63        :
64        :
65        :
66            <define>BOOST_PARAMETER_MAX_ARITY=16
67            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
68        :
69        :
70            <preserve-target-tests>off
71    ]
72    [ run parameterized_inheritance.cpp
73        :
74        :
75        :
76            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=3
77        :
78        :
79            <preserve-target-tests>off
80    ]
81    [ run preprocessor_eval_cat_no_spec.cpp
82        :
83        :
84        :
85            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
86        :
87        :
88            <preserve-target-tests>off
89    ]
90    [ run optional_deduced_sfinae.cpp
91        :
92        :
93        :
94            <define>BOOST_PARAMETER_MAX_ARITY=2
95            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=2
96        :
97        :
98            <preserve-target-tests>off
99    ]
100    [ run preprocessor_eval_category.cpp
101        :
102        :
103        :
104            <define>BOOST_PARAMETER_MAX_ARITY=4
105            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
106        :
107        :
108            <preserve-target-tests>off
109    ]
110    [ run normalized_argument_types.cpp
111        :
112        :
113        :
114            <define>BOOST_PARAMETER_MAX_ARITY=2
115            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
116        :
117        :
118            <preserve-target-tests>off
119    ]
120    [ run basics.cpp
121        :
122        :
123        :
124            <define>BOOST_PARAMETER_MAX_ARITY=4
125            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
126        :
127        :
128            <preserve-target-tests>off
129    ]
130    [ run mpl.cpp
131        :
132        :
133        :
134            <define>BOOST_PARAMETER_MAX_ARITY=4
135            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
136        :
137        :
138            <preserve-target-tests>off
139    ]
140    [ run preprocessor.cpp
141        :
142        :
143        :
144            <define>BOOST_PARAMETER_MAX_ARITY=4
145            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
146        :
147        :
148            <preserve-target-tests>off
149    ]
150    [ run preprocessor_deduced.cpp
151        :
152        :
153        :
154            <define>BOOST_PARAMETER_MAX_ARITY=4
155            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
156        :
157        :
158            <preserve-target-tests>off
159    ]
160    [ run deduced.cpp
161        :
162        :
163        :
164            <define>BOOST_PARAMETER_MAX_ARITY=4
165            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
166        :
167        :
168            <preserve-target-tests>off
169    ]
170    [ run deduced_dependent_predicate.cpp
171        :
172        :
173        :
174            <define>BOOST_PARAMETER_MAX_ARITY=4
175            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
176        :
177        :
178            <preserve-target-tests>off
179    ]
180    [ run earwicker.cpp
181        :
182        :
183        :
184            <define>BOOST_PARAMETER_MAX_ARITY=4
185            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
186        :
187        :
188            <preserve-target-tests>off
189    ]
190    [ run macros.cpp
191        :
192        :
193        :
194            <define>BOOST_PARAMETER_MAX_ARITY=4
195            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
196        :
197        :
198            <preserve-target-tests>off
199    ]
200    [ compile unwrap_cv_reference.cpp ]
201    [ compile ntp.cpp
202        :
203            <define>BOOST_PARAMETER_MAX_ARITY=4
204            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
205    ]
206    [ compile function_type_tpl_param.cpp ]
207    [ compile-fail duplicates.cpp
208        :
209            <define>BOOST_PARAMETER_MAX_ARITY=4
210            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
211        :
212            duplicates_fail
213    ]
214    [ compile-fail deduced_unmatched_arg.cpp
215        :
216            <define>BOOST_PARAMETER_MAX_ARITY=4
217            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
218        :
219            deduced_unmatched_arg_fail
220    ]
221    [ compile-fail basics.cpp
222        :
223            <define>BOOST_PARAMETER_MAX_ARITY=4
224            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
225            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE
226        :
227            basics_fail
228    ]
229    [ compile-fail compose.cpp
230        :
231            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=3
232            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_0
233        :
234            compose_fail_0
235    ]
236    [ compile-fail compose.cpp
237        :
238            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=3
239            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_1
240        :
241            compose_fail_1
242    ]
243    [ compile-fail evaluate_category.cpp
244        :
245            <define>BOOST_PARAMETER_MAX_ARITY=4
246            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
247            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE
248        :
249            evaluate_category_fail
250    ]
251    [ compile-fail preprocessor_deduced.cpp
252        :
253            <define>BOOST_PARAMETER_MAX_ARITY=4
254            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
255            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE
256        :
257            preprocessor_deduced_fail
258    ]
259    [ compile-fail deduced.cpp
260        :
261            <define>BOOST_PARAMETER_MAX_ARITY=4
262            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
263            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE
264        :
265            deduced_fail
266    ]
267    ;
268
269alias parameter_literate_tests
270    :
271    [ run literate/building-argumentpacks0.cpp
272        :
273        :
274        :
275            <define>BOOST_PARAMETER_MAX_ARITY=2
276            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
277        :
278        :
279            <preserve-target-tests>off
280    ]
281    [ run literate/deduced-parameters0.cpp
282        :
283        :
284        :
285            <define>BOOST_PARAMETER_MAX_ARITY=5
286            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
287        :
288        :
289            <preserve-target-tests>off
290    ]
291    [ run literate/deduced-template-parameters0.cpp
292        :
293        :
294        :
295            <define>BOOST_PARAMETER_MAX_ARITY=4
296            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
297        :
298        :
299            <preserve-target-tests>off
300    ]
301    [ run literate/default-expression-evaluation0.cpp
302        :
303        :
304        :
305            <define>BOOST_PARAMETER_MAX_ARITY=5
306            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
307        :
308        :
309            <preserve-target-tests>off
310    ]
311    [ run literate/extracting-parameter-types0.cpp
312        :
313        :
314        :
315        :
316        :
317            <preserve-target-tests>off
318    ]
319    [ run literate/extracting-parameter-types1.cpp
320        :
321        :
322        :
323        :
324        :
325            <preserve-target-tests>off
326    ]
327    [ run literate/fine-grained-name-control0.cpp
328        :
329        :
330        :
331            <define>BOOST_PARAMETER_MAX_ARITY=2
332            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
333        :
334        :
335            <preserve-target-tests>off
336    ]
337    [ run literate/lazy-default-computation0.cpp
338        :
339        :
340        :
341        :
342        :
343            <preserve-target-tests>off
344    ]
345    [ run literate/lazy-default-computation1.cpp
346        :
347        :
348        :
349        :
350        :
351            <preserve-target-tests>off
352    ]
353    [ run literate/namespaces0.cpp
354        :
355        :
356        :
357            <define>BOOST_PARAMETER_MAX_ARITY=2
358            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
359        :
360        :
361            <preserve-target-tests>off
362    ]
363    [ run literate/namespaces1.cpp
364        :
365        :
366        :
367            <define>BOOST_PARAMETER_MAX_ARITY=2
368            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
369        :
370        :
371            <preserve-target-tests>off
372    ]
373    [ run literate/namespaces2.cpp
374        :
375        :
376        :
377            <define>BOOST_PARAMETER_MAX_ARITY=2
378            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
379        :
380        :
381            <preserve-target-tests>off
382    ]
383    [ run literate/namespaces3.cpp
384        :
385        :
386        :
387            <define>BOOST_PARAMETER_MAX_ARITY=2
388            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
389        :
390        :
391            <preserve-target-tests>off
392    ]
393    [ run literate/parameter-enabled-constructors0.cpp
394        :
395        :
396        :
397            <define>BOOST_PARAMETER_MAX_ARITY=2
398            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
399        :
400        :
401            <preserve-target-tests>off
402    ]
403    [ run literate/parameter-enabled-function-call-operators0.cpp
404        :
405        :
406        :
407            <define>BOOST_PARAMETER_MAX_ARITY=2
408            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
409        :
410        :
411            <preserve-target-tests>off
412    ]
413    [ run literate/parameter-enabled-member-functions0.cpp
414        :
415        :
416        :
417            <define>BOOST_PARAMETER_MAX_ARITY=2
418            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
419        :
420        :
421            <preserve-target-tests>off
422    ]
423    [ run literate/predicate-requirements0.cpp
424        :
425        :
426        :
427            <define>BOOST_PARAMETER_MAX_ARITY=5
428            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
429        :
430        :
431            <preserve-target-tests>off
432    ]
433    [ run literate/static-member-functions0.cpp
434        :
435        :
436        :
437            <define>BOOST_PARAMETER_MAX_ARITY=2
438            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
439        :
440        :
441            <preserve-target-tests>off
442    ]
443    [ run literate/top-level0.cpp
444        :
445        :
446        :
447            <define>BOOST_PARAMETER_MAX_ARITY=3
448            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=4
449        :
450        :
451            <preserve-target-tests>off
452    ]
453    [ compile literate/class-template-skeleton0.cpp
454        :
455            <define>BOOST_PARAMETER_MAX_ARITY=4
456            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
457    ]
458    [ compile literate/defining-the-keywords0.cpp ]
459    [ compile literate/defining-the-keywords1.cpp ]
460    [ compile literate/exercising-the-code-so-far0.cpp
461        :
462            <define>BOOST_PARAMETER_MAX_ARITY=4
463            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
464    ]
465    [ compile literate/handling-out-parameters0.cpp
466        :
467            <define>BOOST_PARAMETER_MAX_ARITY=5
468            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
469    ]
470    [ compile literate/headers-and-namespaces0.cpp ]
471    [ compile literate/optional-parameters0.cpp
472        :
473            <define>BOOST_PARAMETER_MAX_ARITY=5
474            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
475    ]
476    [ compile literate/parameter-enabled-member-functions1.cpp
477        :
478            <define>BOOST_PARAMETER_MAX_ARITY=2
479            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
480    ]
481    [ compile literate/required-parameters0.cpp
482        :
483            <define>BOOST_PARAMETER_MAX_ARITY=2
484            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=3
485    ]
486    [ compile literate/template-keywords0.cpp ]
487    [ compile literate/template-keywords1.cpp ]
488    [ compile literate/writing-the-function0.cpp
489        :
490            <define>BOOST_PARAMETER_MAX_ARITY=5
491            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=6
492    ]
493    ;
494
495alias parameter_python_test
496    :
497    :
498        # Python fails for clang on linux with cxxstd set to 14
499        <target-os>linux
500        <toolset>clang
501        <cxxstd>14
502    ;
503
504alias parameter_python_test
505    :
506    :
507        # Python fails for clang on linux with cxxstd set to 1z
508        <target-os>linux
509        <toolset>clang
510        <cxxstd>1z
511    ;
512
513alias parameter_python_test
514    :
515    :
516        # Python fails for xcode 8.3.0 on osx
517        # so we turn off this test for this compiler completely for now
518        <target-os>darwin
519        # TODO: Differentiate by xcode version or by clang version
520    ;
521
522alias parameter_python_test
523    :
524    :
525        # Python fails for mingw compilers with cxxstd set to 11 or higher
526        # because of a Python header problem
527        # so we turn off this test for this compiler completely
528        <target-os>windows
529        <toolset>gcc
530        <address-model>32
531    ;
532
533alias parameter_python_test
534    :
535    :
536        # Python fails for clang-linux compilers with cxxstd set to 11 or higher
537        # because of a Python header problem
538        # so we turn off this test for this compiler completely
539        <target-os>windows
540        <toolset>clang-linux
541        <address-model>32
542    ;
543
544alias parameter_python_test
545    :
546    :
547        # Python fails for windows compilers with 64-bit addressing set
548        # because of a Python header problem
549        <target-os>windows
550        <address-model>64
551    ;
552
553alias parameter_python_test
554    :
555    [ bpl-test python_test ]
556    ;
557
558alias parameter_macros_eval_category
559    :
560    :
561        <target-os>linux
562        <toolset>gcc
563        <toolset-gcc:version>4.8
564    ;
565
566alias parameter_macros_eval_category
567    :
568    :
569        # This test fails for xcode 7.3.0 on osx
570        # so we turn off this test for this compiler for now
571        <target-os>darwin
572        <cxxstd>03
573        # TODO: Differentiate by xcode version or by clang version
574    ;
575
576alias parameter_macros_eval_category
577    :
578    :
579        <target-os>windows
580        <toolset>gcc
581    ;
582
583alias parameter_macros_eval_category
584    :
585    [ run macros_eval_category.cpp
586        :
587        :
588        :
589            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=10
590            <define>BOOST_PARAMETER_MAX_ARITY=10
591            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
592        :
593            macros_eval_category_cxx98
594        :
595            <preserve-target-tests>off
596    ]
597    :
598        <cxxstd>98
599    ;
600
601alias parameter_macros_eval_category
602    :
603    [ run macros_eval_category.cpp
604        :
605        :
606        :
607            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=10
608            <define>BOOST_PARAMETER_MAX_ARITY=10
609            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
610        :
611            macros_eval_category_cxx03
612        :
613            <preserve-target-tests>off
614    ]
615    :
616        <cxxstd>03
617    ;
618
619alias parameter_macros_eval_category
620    :
621    [ run macros_eval_category.cpp
622        :
623        :
624        :
625            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=10
626            <define>BOOST_PARAMETER_MAX_ARITY=10
627            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=11
628        :
629        :
630            <preserve-target-tests>off
631    ]
632    ;
633
634alias parameter_evaluate_category_10
635    :
636    [ run evaluate_category_10.cpp
637        :
638        :
639        :
640            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
641        :
642            evaluate_category_10_gcc_4_8_linux
643        :
644            <preserve-target-tests>off
645    ]
646    :
647        <target-os>linux
648        <toolset>gcc
649        <toolset-gcc:version>4.8
650    ;
651
652alias parameter_evaluate_category_10
653    :
654    [ run evaluate_category_10.cpp
655        :
656        :
657        :
658            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
659        :
660            evaluate_category_10_mingw
661        :
662            <preserve-target-tests>off
663    ]
664    :
665        <target-os>windows
666        <toolset>gcc
667    ;
668
669alias parameter_evaluate_category_10
670    :
671    [ run evaluate_category_10.cpp
672        :
673        :
674        :
675        :
676            evaluate_category_10_cxx98
677        :
678            <preserve-target-tests>off
679    ]
680    :
681        <cxxstd>98
682    ;
683
684alias parameter_evaluate_category_10
685    :
686    [ run evaluate_category_10.cpp
687        :
688        :
689        :
690            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
691        :
692            evaluate_category_10_cxx03
693        :
694            <preserve-target-tests>off
695    ]
696    :
697        <cxxstd>03
698    ;
699
700alias parameter_evaluate_category_10
701    :
702    [ run evaluate_category_10.cpp
703        :
704        :
705        :
706            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=10
707            <define>BOOST_PARAMETER_MAX_ARITY=10
708            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=11
709        :
710        :
711            <preserve-target-tests>off
712    ]
713    ;
714
715alias parameter_preprocessor_eval_cat_8
716    :
717    [ run preprocessor_eval_cat_8.cpp
718        :
719        :
720        :
721            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
722            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=0
723        :
724            preproc_eval_cat_8_mingw
725        :
726            <preserve-target-tests>off
727    ]
728    :
729        <target-os>windows
730        <toolset>gcc
731    ;
732
733alias parameter_preprocessor_eval_cat_8
734    :
735    [ run preprocessor_eval_cat_8.cpp
736        :
737        :
738        :
739            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
740            <define>BOOST_PARAMETER_MAX_ARITY=8
741            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=9
742        :
743        :
744            <preserve-target-tests>off
745    ]
746    ;
747
748alias parameter_preprocessor_eval_cat_fail
749    :
750    :
751        # This test fails for xcode 7.3.0 and xcode 8.3.0 on osx
752        # so we turn off this test for this compiler for now
753        <target-os>darwin
754        <cxxstd>03
755        # TODO: Differentiate by xcode version or by clang version
756    ;
757
758alias parameter_preprocessor_eval_cat_fail
759    :
760    :
761        <target-os>windows
762        <toolset>gcc
763    ;
764
765alias parameter_preprocessor_eval_cat_fail
766    :
767    [ compile-fail preprocessor_eval_category.cpp
768        :
769            <define>BOOST_PARAMETER_MAX_ARITY=8
770            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=9
771            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE
772        :
773            preproc_eval_cat_fail
774    ]
775    ;
776
777alias parameter_vendor_specific_fail_tests ;
778
779alias parameter_vendor_specific_fail_tests
780    :
781    [ compile-fail preprocessor_deduced.cpp
782        :
783            <define>BOOST_PARAMETER_MAX_ARITY=4
784            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
785            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
786        :
787            preproc_deduced_fail_msvc08
788    ]
789    :
790        <toolset>msvc
791        <toolset-msvc:version>8.0
792    ;
793
794alias parameter_vendor_specific_fail_tests
795    :
796    [ compile-fail preprocessor_deduced.cpp
797        :
798            <define>BOOST_PARAMETER_MAX_ARITY=4
799            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
800            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
801        :
802            preproc_deduced_fail_msvc09
803    ]
804    :
805        <toolset>msvc
806        <toolset-msvc:version>9.0
807    ;
808
809alias parameter_vendor_specific_fail_tests
810    :
811    [ compile-fail preprocessor_deduced.cpp
812        :
813            <define>BOOST_PARAMETER_MAX_ARITY=4
814            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
815            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
816        :
817            preproc_deduced_fail_msvc10
818    ]
819    :
820        <toolset>msvc
821        <toolset-msvc:version>10.0
822    ;
823
824alias parameter_vendor_specific_fail_tests
825    :
826    [ compile-fail compose.cpp
827        :
828            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=3
829            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
830        :
831            compose_fail_msvc11
832    ]
833    [ compile-fail preprocessor_deduced.cpp
834        :
835            <define>BOOST_PARAMETER_MAX_ARITY=4
836            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
837            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
838        :
839            preproc_deduced_fail_msvc11
840    ]
841    :
842        <toolset>msvc
843        <toolset-msvc:version>11.0
844    ;
845
846alias parameter_vendor_specific_fail_tests
847    :
848    [ compile-fail evaluate_category.cpp
849        :
850            <define>BOOST_PARAMETER_MAX_ARITY=4
851            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
852            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
853        :
854            evaluate_category_fail_msvc12
855    ]
856    [ compile-fail preprocessor_eval_category.cpp
857        :
858            <define>BOOST_PARAMETER_MAX_ARITY=8
859            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=9
860            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
861        :
862            preproc_eval_cat_fail_msvc12
863    ]
864    [ compile-fail preprocessor_eval_cat_no_spec.cpp
865        :
866            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
867            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
868        :
869            preproc_eval_cat_no_spec_fail_msvc12
870    ]
871    :
872        <toolset>msvc
873        <toolset-msvc:version>12.0
874    ;
875
876alias parameter_vendor_specific_fail_tests
877    :
878    [ compile-fail evaluate_category.cpp
879        :
880            <define>BOOST_PARAMETER_MAX_ARITY=4
881            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
882            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
883        :
884            evaluate_category_fail_msvc14_0
885    ]
886    [ compile-fail preprocessor_eval_category.cpp
887        :
888            <define>BOOST_PARAMETER_MAX_ARITY=8
889            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=9
890            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
891        :
892            preproc_eval_cat_fail_msvc14_0
893    ]
894    [ compile-fail preprocessor_eval_cat_no_spec.cpp
895        :
896            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
897            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
898        :
899            preproc_eval_cat_no_spec_fail_msvc14_0
900    ]
901    :
902        <toolset>msvc
903        <toolset-msvc:version>14.0
904    ;
905
906alias parameter_vendor_specific_fail_tests
907    :
908    [ compile-fail evaluate_category.cpp
909        :
910            <define>BOOST_PARAMETER_MAX_ARITY=4
911            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=5
912            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
913        :
914            evaluate_category_fail_msvc14_1
915    ]
916    [ compile-fail preprocessor_eval_category.cpp
917        :
918            <define>BOOST_PARAMETER_MAX_ARITY=8
919            <define>BOOST_PARAMETER_EXPONENTIAL_OVERLOAD_THRESHOLD_ARITY=9
920            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
921        :
922            preproc_eval_cat_fail_msvc14_1
923    ]
924    [ compile-fail preprocessor_eval_cat_no_spec.cpp
925        :
926            <define>BOOST_PARAMETER_COMPOSE_MAX_ARITY=8
927            <define>LIBS_PARAMETER_TEST_COMPILE_FAILURE_VENDOR_SPECIFIC
928        :
929            preproc_eval_cat_no_spec_fail_msvc14_1
930    ]
931    :
932        <toolset>msvc
933        <toolset-msvc:version>14.1
934    ;
935
936# TODO: Replace with "undeprecated" version.
937test-suite "parameter"
938    :
939        parameter_macros_eval_category
940        parameter_evaluate_category_10
941        parameter_preprocessor_eval_cat_8
942        parameter_preprocessor_eval_cat_fail
943        parameter_standard_tests
944        parameter_literate_tests
945        parameter_python_test
946        parameter_vendor_specific_fail_tests
947    ;
948