-inline void libmemcached_error(YYLTYPE *locp, Context *context, yyscan_t *scanner, const char *error)
+#define parser_abort(A, B) do { parser::abort_func((A), (B)); YYABORT; } while (0)
+
+inline void config_error(Context *context, yyscan_t *scanner, const char *error)
+{
+ if (not context->end())
+ parser::abort_func(context, error);
+}
+
+int config_parse(Context*, yyscan_t *);
+
+void Context::start()