1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

add SPROUT_FORWARD - workaround for ICC

This commit is contained in:
bolero-MURAKAMI 2014-02-22 16:32:51 +09:00
parent 7831105add
commit 274122efb2
202 changed files with 750 additions and 741 deletions

View file

@ -34,7 +34,7 @@ namespace sprout {
Arg
>::type operator&(Arg&& arg) {
return sprout::weed::make_expr<sprout::weed::tag::address_of>(
sprout::forward<Arg>(arg)
SPROUT_FORWARD(Arg, arg)
);
}
} // namespace weed

View file

@ -39,8 +39,8 @@ namespace sprout {
Arg2
>::type operator|(Arg1&& arg1, Arg2&& arg2) {
return sprout::weed::make_expr<sprout::weed::tag::bitwise_or>(
sprout::forward<Arg1>(arg1),
sprout::forward<Arg2>(arg2)
SPROUT_FORWARD(Arg1, arg1),
SPROUT_FORWARD(Arg2, arg2)
);
}
} // namespace weed

View file

@ -34,7 +34,7 @@ namespace sprout {
Arg
>::type operator*(Arg&& arg) {
return sprout::weed::make_expr<sprout::weed::tag::dereference>(
sprout::forward<Arg>(arg)
SPROUT_FORWARD(Arg, arg)
);
}
} // namespace weed

View file

@ -34,7 +34,7 @@ namespace sprout {
Arg
>::type operator!(Arg&& arg) {
return sprout::weed::make_expr<sprout::weed::tag::logical_not>(
sprout::forward<Arg>(arg)
SPROUT_FORWARD(Arg, arg)
);
}
} // namespace weed

View file

@ -36,8 +36,8 @@ namespace sprout {
Arg2
>::type operator->*(Arg1&& arg1, Arg2&& arg2) {
return sprout::weed::make_expr<sprout::weed::tag::mem_ptr>(
sprout::forward<Arg1>(arg1),
sprout::forward<Arg2>(arg2)
SPROUT_FORWARD(Arg1, arg1),
SPROUT_FORWARD(Arg2, arg2)
);
}
} // namespace weed

View file

@ -39,8 +39,8 @@ namespace sprout {
Arg2
>::type operator-(Arg1&& arg1, Arg2&& arg2) {
return sprout::weed::make_expr<sprout::weed::tag::minus>(
sprout::forward<Arg1>(arg1),
sprout::forward<Arg2>(arg2)
SPROUT_FORWARD(Arg1, arg1),
SPROUT_FORWARD(Arg2, arg2)
);
}
} // namespace weed

View file

@ -39,8 +39,8 @@ namespace sprout {
Arg2
>::type operator%(Arg1&& arg1, Arg2&& arg2) {
return sprout::weed::make_expr<sprout::weed::tag::modulus>(
sprout::forward<Arg1>(arg1),
sprout::forward<Arg2>(arg2)
SPROUT_FORWARD(Arg1, arg1),
SPROUT_FORWARD(Arg2, arg2)
);
}
} // namespace weed

View file

@ -34,7 +34,7 @@ namespace sprout {
Arg
>::type operator-(Arg&& arg) {
return sprout::weed::make_expr<sprout::weed::tag::negate>(
sprout::forward<Arg>(arg)
SPROUT_FORWARD(Arg, arg)
);
}
} // namespace weed

View file

@ -39,8 +39,8 @@ namespace sprout {
Arg2
>::type operator>>(Arg1&& arg1, Arg2&& arg2) {
return sprout::weed::make_expr<sprout::weed::tag::shift_left>(
sprout::forward<Arg1>(arg1),
sprout::forward<Arg2>(arg2)
SPROUT_FORWARD(Arg1, arg1),
SPROUT_FORWARD(Arg2, arg2)
);
}
} // namespace weed

View file

@ -34,7 +34,7 @@ namespace sprout {
Arg
>::type operator+(Arg&& arg) {
return sprout::weed::make_expr<sprout::weed::tag::unary_plus>(
sprout::forward<Arg>(arg)
SPROUT_FORWARD(Arg, arg)
);
}
} // namespace weed