Ugh.  Another try, to unbreak gcc this time!

Jenga.
diff --git a/src/hb-subset.cc b/src/hb-subset.cc
index 4c7fbf9..bccb98d 100644
--- a/src/hb-subset.cc
+++ b/src/hb-subset.cc
@@ -47,9 +47,12 @@
 #include "hb-ot-layout-gpos-table.hh"
 
 
-static unsigned int
+HB_UNUSED static inline unsigned int
 _plan_estimate_subset_table_size (hb_subset_plan_t *plan,
-				  unsigned int table_len) HB_UNUSED
+				  unsigned int table_len);
+static inline unsigned int
+_plan_estimate_subset_table_size (hb_subset_plan_t *plan,
+				  unsigned int table_len)
 {
   unsigned int src_glyphs = plan->source->get_num_glyphs ();
   unsigned int dst_glyphs = plan->glyphset ()->get_population ();