1 2# Copyright (C) 2006-2009, 2012 Alexander Nasonov 3# Copyright (C) 2012 Lorenzo Caminiti 4# Distributed under the Boost Software License, Version 1.0 5# (see accompanying file LICENSE_1_0.txt or a copy at 6# http://www.boost.org/LICENSE_1_0.txt) 7# Home at http://www.boost.org/libs/scope_exit 8 9import testing ; 10import ../../config/checks/config : requires ; 11 12rule run-vaseq ( target : requirements * ) 13{ 14 run $(target).cpp : : : $(requirements) ; 15 run $(target)_seq.cpp : : : $(requirements) ; 16 run $(target)_seq_nova.cpp : : : $(requirements) ; 17} 18 19rule run-typeof ( native_target emulation_target ) 20{ 21 run $(native_target).cpp : : : <define>BOOST_TYPEOF_NATIVE ; 22 run $(native_target).cpp : : : <define>BOOST_TYPEOF_EMULATION : 23 $(emulation_target) : ; 24} 25 26rule compile-fail-typeof ( native_target emulation_target ) 27{ 28 compile-fail $(native_target).cpp : <define>BOOST_TYPEOF_NATIVE ; 29 compile-fail $(native_target).cpp : <define>BOOST_TYPEOF_EMULATION : 30 $(emulation_target) : ; 31} 32 33run-vaseq same_line ; 34run-vaseq world ; 35run-vaseq world_checkpoint ; 36run-vaseq world_checkpoint_all : [ requires cxx11_lambdas ] ; 37run-vaseq world_this ; 38run-vaseq world_tpl ; 39run world_void.cpp ; 40run world_void_nova.cpp ; 41 42run-typeof native emulation ; 43run-typeof native_tpl emulation_tpl ; 44run-typeof native_this emulation_this ; 45run-typeof native_this_tpl emulation_this_tpl ; 46compile-fail-typeof native_const_error emulation_const_error ; 47compile-fail-typeof native_cv_error emulation_cv_error ; 48run native_tu_test.cpp native_tu1.cpp native_tu2.cpp : : : 49 <define>BOOST_TYPEOF_NATIVE ; 50run native_tu_test.cpp native_tu1.cpp native_tu2.cpp : : : 51 <define>BOOST_TYPEOF_EMULATION : emulation_tu_test : ; 52 53