For non-void type deduction by decltype, the functions should have an explicit return mentioned. Not having this breaks build for codes with serializing function signatures similar to the one below:

struct Cerealizable {
  template<typename Archive>
  Archive& serialize(Archive& ref_archive) {
    return ref_archive(stuff_0, stuff_1);
  }

  int stuff_0 {}, stuff_1 {};
};

Build error in GCC with "-Wall -Werror" flags
Merge branch 'Support_Non-void_Return_Type_Functions' of https://github.com/ustulation/cereal into ustulation-Support_Non-void_Return_Type_Functions

Conflicts:
	include/cereal/access.hpp
Merge branch 'ustulation-Support_Non-void_Return_Type_Functions' into develop

see #135