NEW FILE HEADER / COPYRIGHT FORMAT
[senf.git] / Packets / PacketParser.ih
index 2fb098a..250c1fa 100644 (file)
@@ -1,6 +1,8 @@
+// $Id$
+//
 // Copyright (C) 2007 
-// Fraunhofer Institut fuer offene Kommunikationssysteme (FOKUS)
-// Kompetenzzentrum fuer Satelitenkommunikation (SatCom)
+// Fraunhofer Institute for Open Communication Systems (FOKUS) 
+// Competence Center NETwork research (NET), St. Augustin, GERMANY 
 //     Stefan Bund <g0dil@berlios.de>
 //
 // This program is free software; you can redistribute it and/or modify
@@ -25,7 +27,7 @@
 #define IH_PacketParser_ 1
 
 // Custom includes
-#include "Utils/mpl.hh"
+#include "../Utils/mpl.hh"
 
 ///////////////////////////////ih.p////////////////////////////////////////
 
@@ -61,6 +63,16 @@ namespace detail {
     template <class Parser, unsigned _>
     struct ParserInitBytes_Choose 
         : public boost::integral_constant<PacketParserBase::size_type, Parser::init_bytes> {};
+    // ^^-- g++ error signaled here:
+    //    error: 'fixed_bytes' is not a member of 'some-class-name'
+    //
+    // The 'some-class-name' class (as given in the error message) does not seem to be a parser at
+    // all (it has neither a 'fixed_bytes' nor an 'init_bytes' member).
+    //
+    // Either 'some-class-name' is not the class you wanted to use (it really is no parser) or you
+    // left out either 'init_bytes' or 'fixed_bytes' when defining the parser. This will also
+    // happen, if you forget to call 'SENF_PARSER_FINALIZE()' when defining a composite parser.
+    ///////////////////////////////////////////////////////////////////////////////////////////////
 
     // If Parser::init_bytes is not defined, this specialization is chosen which instead uses
     // 'Parser::fixed_bytes'