diff --git a/include/boost/mpl/set/aux_/item.hpp b/include/boost/mpl/set/aux_/item.hpp index 2c2e527..af3d5c1 100644 --- a/include/boost/mpl/set/aux_/item.hpp +++ b/include/boost/mpl/set/aux_/item.hpp @@ -29,6 +29,7 @@ template< typename T, typename Base > struct s_item : Base { + typedef s_item item_; typedef void_ last_masked_; typedef Base next_; typedef T item_type_; @@ -53,6 +54,7 @@ template< typename T, typename Base > struct s_mask : Base { + typedef s_mask item_; typedef T last_masked_; typedef void_ item_type_; typedef Base base; @@ -66,6 +68,7 @@ template< typename T, typename Base > struct s_unmask : Base { + typedef s_unmask item_; typedef void_ last_masked_; typedef T item_type_; typedef Base base; diff --git a/include/boost/mpl/set/aux_/iterator.hpp b/include/boost/mpl/set/aux_/iterator.hpp index 30464d0..4814e09 100644 --- a/include/boost/mpl/set/aux_/iterator.hpp +++ b/include/boost/mpl/set/aux_/iterator.hpp @@ -31,9 +31,9 @@ template< typename Set, typename Tail > struct s_iter; template< typename Set, typename Tail > struct s_iter_impl { - typedef Tail tail_; - typedef forward_iterator_tag category; - typedef typename Tail::type type; + typedef Tail tail_; + typedef forward_iterator_tag category; + typedef typename Tail::item_::type type; #if defined(BOOST_NO_TEMPLATE_PARTIAL_SPECIALIZATION) typedef typename eval_if< diff --git a/include/boost/mpl/set/aux_/numbered.hpp b/include/boost/mpl/set/aux_/numbered.hpp index 423bb67..558cc3c 100644 --- a/include/boost/mpl/set/aux_/numbered.hpp +++ b/include/boost/mpl/set/aux_/numbered.hpp @@ -22,9 +22,9 @@ #define i_ BOOST_PP_FRAME_ITERATION(1) # define AUX778076_SET_TAIL(set, i_, T) \ - BOOST_PP_CAT(set,i_)< \ + typename BOOST_PP_CAT(set,i_)< \ BOOST_PP_ENUM_PARAMS(i_, T) \ - > \ + >::item_ \ /**/ #if i_ > 0 diff --git a/include/boost/mpl/set/aux_/preprocessed/plain/set10.hpp b/include/boost/mpl/set/aux_/preprocessed/plain/set10.hpp index 1db4320..2c42b38 100644 --- a/include/boost/mpl/set/aux_/preprocessed/plain/set10.hpp +++ b/include/boost/mpl/set/aux_/preprocessed/plain/set10.hpp @@ -18,7 +18,7 @@ template< struct set1 : s_item< T0 - , set0< > + , typename set0< >::item_ > { typedef set1 type; @@ -30,7 +30,7 @@ template< struct set2 : s_item< T1 - , set1 + , typename set1::item_ > { typedef set2 type; @@ -42,7 +42,7 @@ template< struct set3 : s_item< T2 - , set2< T0,T1 > + , typename set2< T0,T1 >::item_ > { typedef set3 type; @@ -54,7 +54,7 @@ template< struct set4 : s_item< T3 - , set3< T0,T1,T2 > + , typename set3< T0,T1,T2 >::item_ > { typedef set4 type; @@ -66,7 +66,7 @@ template< struct set5 : s_item< T4 - , set4< T0,T1,T2,T3 > + , typename set4< T0,T1,T2,T3 >::item_ > { typedef set5 type; @@ -79,7 +79,7 @@ template< struct set6 : s_item< T5 - , set5< T0,T1,T2,T3,T4 > + , typename set5< T0,T1,T2,T3,T4 >::item_ > { typedef set6 type; @@ -92,7 +92,7 @@ template< struct set7 : s_item< T6 - , set6< T0,T1,T2,T3,T4,T5 > + , typename set6< T0,T1,T2,T3,T4,T5 >::item_ > { typedef set7 type; @@ -105,7 +105,7 @@ template< struct set8 : s_item< T7 - , set7< T0,T1,T2,T3,T4,T5,T6 > + , typename set7< T0,T1,T2,T3,T4,T5,T6 >::item_ > { typedef set8 type; @@ -118,7 +118,7 @@ template< struct set9 : s_item< T8 - , set8< T0,T1,T2,T3,T4,T5,T6,T7 > + , typename set8< T0,T1,T2,T3,T4,T5,T6,T7 >::item_ > { typedef set9 type; @@ -131,7 +131,7 @@ template< struct set10 : s_item< T9 - , set9< T0,T1,T2,T3,T4,T5,T6,T7,T8 > + , typename set9< T0,T1,T2,T3,T4,T5,T6,T7,T8 >::item_ > { typedef set10 type; diff --git a/include/boost/mpl/set/aux_/preprocessed/plain/set20.hpp b/include/boost/mpl/set/aux_/preprocessed/plain/set20.hpp index 1e4e844..cb4e466 100644 --- a/include/boost/mpl/set/aux_/preprocessed/plain/set20.hpp +++ b/include/boost/mpl/set/aux_/preprocessed/plain/set20.hpp @@ -20,7 +20,7 @@ template< struct set11 : s_item< T10 - , set10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 > + , typename set10< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9 >::item_ > { typedef set11 type; @@ -34,7 +34,7 @@ template< struct set12 : s_item< T11 - , set11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 > + , typename set11< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10 >::item_ > { typedef set12 type; @@ -48,7 +48,8 @@ template< struct set13 : s_item< T12 - , set12< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11 > + , typename set12< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10 + , T11 >::item_ > { typedef set13 type; @@ -62,7 +63,8 @@ template< struct set14 : s_item< T13 - , set13< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12 > + , typename set13< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12 >::item_ > { typedef set14 type; @@ -76,7 +78,8 @@ template< struct set15 : s_item< T14 - , set14< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13 > + , typename set14< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13 >::item_ > { typedef set15 type; @@ -91,7 +94,8 @@ template< struct set16 : s_item< T15 - , set15< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14 > + , typename set15< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14 >::item_ > { typedef set16 type; @@ -106,7 +110,8 @@ template< struct set17 : s_item< T16 - , set16< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15 > + , typename set16< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15 >::item_ > { typedef set17 type; @@ -121,7 +126,8 @@ template< struct set18 : s_item< T17 - , set17< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16 > + , typename set17< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16 >::item_ > { typedef set18 type; @@ -136,7 +142,8 @@ template< struct set19 : s_item< T18 - , set18< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17 > + , typename set18< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17 >::item_ > { typedef set19 type; @@ -151,7 +158,8 @@ template< struct set20 : s_item< T19 - , set19< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18 > + , typename set19< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18 >::item_ > { typedef set20 type; diff --git a/include/boost/mpl/set/aux_/preprocessed/plain/set30.hpp b/include/boost/mpl/set/aux_/preprocessed/plain/set30.hpp index d3ae419..08f2cda 100644 --- a/include/boost/mpl/set/aux_/preprocessed/plain/set30.hpp +++ b/include/boost/mpl/set/aux_/preprocessed/plain/set30.hpp @@ -22,7 +22,8 @@ template< struct set21 : s_item< T20 - , set20< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19 > + , typename set20< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19 >::item_ > { typedef set21 type; @@ -38,7 +39,8 @@ template< struct set22 : s_item< T21 - , set21< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20 > + , typename set21< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20 >::item_ > { typedef set22 type; @@ -54,7 +56,8 @@ template< struct set23 : s_item< T22 - , set22< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21 > + , typename set22< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21 >::item_ > { typedef set23 type; @@ -70,7 +73,8 @@ template< struct set24 : s_item< T23 - , set23< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22 > + , typename set23< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22 >::item_ > { typedef set24 type; @@ -86,7 +90,8 @@ template< struct set25 : s_item< T24 - , set24< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23 > + , typename set24< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23 >::item_ > { typedef set25 type; @@ -103,7 +108,9 @@ template< struct set26 : s_item< T25 - , set25< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24 > + , typename set25< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23 + , T24 >::item_ > { typedef set26 type; @@ -120,7 +127,9 @@ template< struct set27 : s_item< T26 - , set26< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25 > + , typename set26< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24 + , T25 >::item_ > { typedef set27 type; @@ -137,7 +146,9 @@ template< struct set28 : s_item< T27 - , set27< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26 > + , typename set27< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26 >::item_ > { typedef set28 type; @@ -154,7 +165,9 @@ template< struct set29 : s_item< T28 - , set28< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27 > + , typename set28< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27 >::item_ > { typedef set29 type; @@ -171,7 +184,9 @@ template< struct set30 : s_item< T29 - , set29< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28 > + , typename set29< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28 >::item_ > { typedef set30 type; diff --git a/include/boost/mpl/set/aux_/preprocessed/plain/set40.hpp b/include/boost/mpl/set/aux_/preprocessed/plain/set40.hpp index 078f347..a8571a6 100644 --- a/include/boost/mpl/set/aux_/preprocessed/plain/set40.hpp +++ b/include/boost/mpl/set/aux_/preprocessed/plain/set40.hpp @@ -24,7 +24,9 @@ template< struct set31 : s_item< T30 - , set30< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29 > + , typename set30< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29 >::item_ > { typedef set31 type; @@ -42,7 +44,9 @@ template< struct set32 : s_item< T31 - , set31< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30 > + , typename set31< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30 >::item_ > { typedef set32 type; @@ -60,7 +64,9 @@ template< struct set33 : s_item< T32 - , set32< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31 > + , typename set32< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31 >::item_ > { typedef set33 type; @@ -78,7 +84,9 @@ template< struct set34 : s_item< T33 - , set33< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32 > + , typename set33< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32 >::item_ > { typedef set34 type; @@ -96,7 +104,9 @@ template< struct set35 : s_item< T34 - , set34< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33 > + , typename set34< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33 >::item_ > { typedef set35 type; @@ -115,7 +125,9 @@ template< struct set36 : s_item< T35 - , set35< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34 > + , typename set35< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34 >::item_ > { typedef set36 type; @@ -134,7 +146,9 @@ template< struct set37 : s_item< T36 - , set36< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35 > + , typename set36< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35 >::item_ > { typedef set37 type; @@ -153,7 +167,9 @@ template< struct set38 : s_item< T37 - , set37< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36 > + , typename set37< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36 >::item_ > { typedef set38 type; @@ -172,7 +188,9 @@ template< struct set39 : s_item< T38 - , set38< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37 > + , typename set38< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37 >::item_ > { typedef set39 type; @@ -191,7 +209,10 @@ template< struct set40 : s_item< T39 - , set39< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38 > + , typename set39< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37 + , T38 >::item_ > { typedef set40 type; diff --git a/include/boost/mpl/set/aux_/preprocessed/plain/set50.hpp b/include/boost/mpl/set/aux_/preprocessed/plain/set50.hpp index 0c1c602..79798ab 100644 --- a/include/boost/mpl/set/aux_/preprocessed/plain/set50.hpp +++ b/include/boost/mpl/set/aux_/preprocessed/plain/set50.hpp @@ -26,7 +26,10 @@ template< struct set41 : s_item< T40 - , set40< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39 > + , typename set40< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38 + , T39 >::item_ > { typedef set41 type; @@ -46,7 +49,10 @@ template< struct set42 : s_item< T41 - , set41< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40 > + , typename set41< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40 >::item_ > { typedef set42 type; @@ -66,7 +72,10 @@ template< struct set43 : s_item< T42 - , set42< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41 > + , typename set42< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41 >::item_ > { typedef set43 type; @@ -86,7 +95,10 @@ template< struct set44 : s_item< T43 - , set43< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42 > + , typename set43< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42 >::item_ > { typedef set44 type; @@ -106,7 +118,10 @@ template< struct set45 : s_item< T44 - , set44< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43 > + , typename set44< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43 >::item_ > { typedef set45 type; @@ -127,7 +142,10 @@ template< struct set46 : s_item< T45 - , set45< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44 > + , typename set45< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43, T44 >::item_ > { typedef set46 type; @@ -148,7 +166,10 @@ template< struct set47 : s_item< T46 - , set46< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45 > + , typename set46< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43, T44, T45 >::item_ > { typedef set47 type; @@ -169,7 +190,10 @@ template< struct set48 : s_item< T47 - , set47< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46 > + , typename set47< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43, T44, T45, T46 >::item_ > { typedef set48 type; @@ -190,7 +214,10 @@ template< struct set49 : s_item< T48 - , set48< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47 > + , typename set48< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43, T44, T45, T46, T47 >::item_ > { typedef set49 type; @@ -211,7 +238,10 @@ template< struct set50 : s_item< T49 - , set49< T0,T1,T2,T3,T4,T5,T6,T7,T8,T9,T10,T11,T12,T13,T14,T15,T16,T17,T18,T19,T20,T21,T22,T23,T24,T25,T26,T27,T28,T29,T30,T31,T32,T33,T34,T35,T36,T37,T38,T39,T40,T41,T42,T43,T44,T45,T46,T47,T48 > + , typename set49< T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11 + , T12, T13, T14, T15, T16, T17, T18, T19, T20, T21, T22, T23, T24, T25 + , T26, T27, T28, T29, T30, T31, T32, T33, T34, T35, T36, T37, T38, T39 + , T40, T41, T42, T43, T44, T45, T46, T47, T48 >::item_ > { typedef set50 type; diff --git a/include/boost/mpl/set/aux_/set0.hpp b/include/boost/mpl/set/aux_/set0.hpp index 7c3c312..44473ba 100644 --- a/include/boost/mpl/set/aux_/set0.hpp +++ b/include/boost/mpl/set/aux_/set0.hpp @@ -50,9 +50,9 @@ namespace boost { namespace mpl { #endif - template< typename Dummy = na > struct set0 { + typedef set0<> item_; typedef aux::set_tag tag; typedef void_ last_masked_; typedef void_ item_type_;