Stiffstream / sobjectizer

An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. With performance, quality, and stability proved by years in the production.

Home Page:https://stiffstream.com/en/products/sobjectizer.html

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

state_t's on_enter/on_exit should accept noexcept methods

eao197 opened this issue · comments

For example:

class my_agent : public so_5::agent_t {
  state_t st_normal{ this };
  ...
  void on_enter_st_normal() noexcept {...}
  ...
  void so_define_agent() override {
    st_normal.on_enter(&my_agent::on_enter_st_normal); // (1)
    ...
  }
};

Now the compilation fails at point (1) because in C++17 noexcept is a part of the method signature and that case is not handled in SObjectizer's is_agent_method_pointer metafunction.

Fixed in v.5.7.1.