diff --git a/uppsrc/CppBase/CppBase.h b/uppsrc/CppBase/CppBase.h index a6611d62b..53a86d271 100644 --- a/uppsrc/CppBase/CppBase.h +++ b/uppsrc/CppBase/CppBase.h @@ -20,9 +20,9 @@ const VectorMap& GetNamespaceMacros(); const Index& GetNamespaceEndMacros(); struct CppMacro : Moveable { - String param; String body; + byte md5[16]; String Define(const char *s); void SetUndef() { body = "\x7f"; } diff --git a/uppsrc/CppBase/macro.cpp b/uppsrc/CppBase/macro.cpp index 0c2b05ee3..161b33ddf 100644 --- a/uppsrc/CppBase/macro.cpp +++ b/uppsrc/CppBase/macro.cpp @@ -36,6 +36,10 @@ String CppMacro::Define(const char *s) while(!p.IsEof() && !p.IsChar2('/', '/')) p.SkipTerm(); body = String(b, p.GetPtr()); + Md5Stream m; + m.Put(param); + m.Put(body); + m.Finish(md5); } catch(CParser::Error) { return Null;