Make Extension a template
diff --git a/src/hb-ot-layout-gsub-table.hh b/src/hb-ot-layout-gsub-table.hh
index 7f23dec..7cf1e1b 100644
--- a/src/hb-ot-layout-gsub-table.hh
+++ b/src/hb-ot-layout-gsub-table.hh
@@ -878,7 +878,7 @@
struct ChainContextSubst : ChainContext {};
-struct ExtensionSubst : Extension
+struct ExtensionSubst : Extension<ExtensionSubst>
{
inline const struct SubstLookupSubTable& get_subtable (void) const
{
@@ -887,9 +887,6 @@
return StructAtOffset<SubstLookupSubTable> (this, offset);
}
- template <typename context_t>
- inline typename context_t::return_t process (context_t *c) const;
-
inline bool sanitize (hb_sanitize_context_t *c);
inline bool is_reverse (void) const;
@@ -1380,12 +1377,6 @@
/* Out-of-class implementation for methods recursing */
-template <typename context_t>
-inline typename context_t::return_t ExtensionSubst::process (context_t *c) const
-{
- return get_subtable ().process (c, get_type ());
-}
-
inline bool ExtensionSubst::sanitize (hb_sanitize_context_t *c)
{
TRACE_SANITIZE (this);