Compare commits

...

10 Commits

Author SHA1 Message Date
7ce07a8920 v2, v3, integration branch
[SVN r62649]
2010-06-09 11:34:33 +00:00
e39914bddd Undo r56305
[SVN r58129]
2009-12-03 22:20:47 +00:00
64776ee43c rm cmake from trunk. I'm not entirely sure this is necessary to satisfy the inspect script, but I'm not taking any chances, and it is easy to put back
[SVN r56942]
2009-10-17 02:07:38 +00:00
d3b53cbdf8 Merged 2009 GSoC work from sandbox-branches/bhy/py3k branch back into trunk.
[SVN r56305]
2009-09-19 02:32:41 +00:00
0bf0587f58 Copyrights on CMakeLists.txt to keep them from clogging up the inspect
reports.  This is essentially the same commit as r55095 on the release
branch.



[SVN r55159]
2009-07-26 00:49:56 +00:00
1b4fdee6ff Cleanup function_types Jamfile.
Make it directly depends on Wave target. Simplify naming
of targets. Addresses #1653


[SVN r53619]
2009-06-04 09:36:17 +00:00
b7da1bd1ab adds tests with const result
[SVN r49980]
2008-11-28 11:38:38 +00:00
8554f430fe Updating dependency information for modularized libraries.
[SVN r49628]
2008-11-07 17:05:27 +00:00
ee8ed76bc5 Updating CMake files to latest trunk. Added dependency information for regression tests and a few new macros for internal use.
[SVN r49627]
2008-11-07 17:02:56 +00:00
e60e1b82aa Continuing merge of CMake build system files into trunk with the encouragement of Doug Gregor
[SVN r49510]
2008-11-01 13:15:41 +00:00
2 changed files with 52 additions and 23 deletions

View File

@ -6,31 +6,25 @@
# Generates preprocessed files with wave.
rule wave
{
Depends $1 : $2 ;
}
actions wave
{
../../../dist/bin/wave -S../../.. $(>) -o $(<)
$(>[1]) -S../../.. $(>[2]) -o $(<)
}
make ../../../libs/function_types/build/timestamps/arity_loops
: preprocess_arity_loops.cpp : wave
W = ../../../tools/wave/build//wave ;
make arity_loops
: preprocess_arity_loops.cpp $(W) : wave : <location>build/timestamps
;
explicit ../../../libs/function_types/build/timestamps/arity_loops ;
make ../../../libs/function_types/build/timestamps/encoding
: preprocess_encoding.cpp : wave
make encoding
: preprocess_encoding.cpp $(W) : wave : <location>build/timestamps
;
explicit ../../../libs/function_types/build/timestamps/encoding ;
make ../../../libs/function_types/build/timestamps/cc_names
: preprocess_cc_names.cpp : wave
make cc_names
: preprocess_cc_names.cpp $(W) : wave : <location>build/timestamps
;
explicit ../../../libs/function_types/build/timestamps/cc_names ;
explicit arity_loops encoding cc_names ;

View File

@ -16,12 +16,19 @@ namespace ft = boost::function_types;
class C;
typedef C func();
typedef C const c_func();
typedef C (*func_ptr)();
typedef C const (*c_func_ptr)();
typedef C (&func_ref)();
typedef C const (&c_func_ref)();
typedef C (C::*mem_func_ptr)();
typedef C (C::*c_mem_func_ptr)() const;
typedef C (C::*v_mem_func_ptr)() volatile;
typedef C (C::*cv_mem_func_ptr)() const volatile;
typedef C const (C::*c_mem_func_ptr)();
typedef C (C::*mem_func_ptr_c)() const;
typedef C const (C::*c_mem_func_ptr_c)() const;
typedef C (C::*mem_func_ptr_v)() volatile;
typedef C const (C::*c_mem_func_ptr_v)() volatile;
typedef C (C::*mem_func_ptr_cv)() const volatile;
typedef C const (C::*c_mem_func_ptr_cv)() const volatile;
typedef int C::* mem_ptr;
typedef int const C::* c_mem_ptr;
@ -29,28 +36,56 @@ BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<func>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_func>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<func_ptr>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_func_ptr>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<func_ref>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_func_ref>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<mem_func_ptr>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_mem_func_ptr>::type,C>
boost::is_same<ft::result_type<c_mem_func_ptr>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<v_mem_func_ptr>::type,C>
boost::is_same<ft::result_type<mem_func_ptr_c>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<cv_mem_func_ptr>::type,C>
boost::is_same<ft::result_type<c_mem_func_ptr_c>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<mem_func_ptr_v>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_mem_func_ptr_v>::type,C const>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<mem_func_ptr_cv>::type,C>
));
BOOST_MPL_ASSERT((
boost::is_same<ft::result_type<c_mem_func_ptr_cv>::type,C const>
));
BOOST_MPL_ASSERT((