aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlec Thomas <alec@swapoff.org>2014-10-31 16:24:40 +1100
committerAlec Thomas <alec@swapoff.org>2014-10-31 16:24:40 +1100
commit9e4314ef1d4575caa99fee3a4ae7f479b8153a34 (patch)
tree86c01a301616488c9a7a6d1629de9610fbbece01
parentcb06961a67b1aaeedea3edd0f3b18aa88cb50b99 (diff)
Hack for VS internal error. Fixes #23 (again).
-rw-r--r--entityx/Event.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/entityx/Event.h b/entityx/Event.h
index 9919eb8..6e6757d 100644
--- a/entityx/Event.h
+++ b/entityx/Event.h
@@ -159,7 +159,8 @@ class EventManager : entityx::help::NonCopyable {
*/
template <typename E, typename ... Args>
void emit(Args && ... args) {
- E event(std::forward<Args>(args) ...);
+ // Using 'E event(std::forward...)' causes VS to fail with an internal error. Hack around it.
+ E event = E(std::forward<Args>(args) ...);
auto sig = signal_for(std::size_t(E::family()));
BaseEvent *base = &event;
sig->emit(base);