[subset] use glyphset_gsub instead of glyphset for GDEF
diff --git a/src/hb-ot-layout-gdef-table.hh b/src/hb-ot-layout-gdef-table.hh
index 41c5a1e..aea644f 100644
--- a/src/hb-ot-layout-gdef-table.hh
+++ b/src/hb-ot-layout-gdef-table.hh
@@ -84,7 +84,7 @@
   bool subset (hb_subset_context_t *c) const
   {
     TRACE_SUBSET (this);
-    const hb_set_t &glyphset = *c->plan->glyphset ();
+    const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
     const hb_map_t &glyph_map = *c->plan->glyph_map;
 
     auto *out = c->serializer->start_embed (*this);
@@ -371,7 +371,7 @@
   bool subset (hb_subset_context_t *c) const
   {
     TRACE_SUBSET (this);
-    const hb_set_t &glyphset = *c->plan->glyphset ();
+    const hb_set_t &glyphset = *c->plan->glyphset_gsub ();
     const hb_map_t &glyph_map = *c->plan->glyph_map;
 
     auto *out = c->serializer->start_embed (*this);
diff --git a/test/subset/data/Makefile.am b/test/subset/data/Makefile.am
index 33ffb9e..15061ef 100644
--- a/test/subset/data/Makefile.am
+++ b/test/subset/data/Makefile.am
@@ -30,6 +30,7 @@
 	expected/layout.gsub8 \
 	expected/layout.khmer \
 	expected/layout.gdef \
+	expected/layout.gdef.glyphset \
 	expected/layout.context \
 	expected/layout.gdef-varstore \
 	expected/layout.gdef-attachlist \
diff --git a/test/subset/data/Makefile.sources b/test/subset/data/Makefile.sources
index 34f2f07..dedcef0 100644
--- a/test/subset/data/Makefile.sources
+++ b/test/subset/data/Makefile.sources
@@ -16,6 +16,7 @@
 	tests/layout.gdef-attachlist.tests \
 	tests/layout.gdef-varstore.tests \
 	tests/layout.gdef.tests \
+	tests/layout.gdef.glyphset.tests \
 	tests/layout.gpos.tests \
 	tests/layout.gpos2.tests \
 	tests/layout.gpos3.tests \
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.9dd.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.9dd.ttf
new file mode 100644
index 0000000..3110b2e
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.9dd.ttf
Binary files differ
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.retain-all-codepoint.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.retain-all-codepoint.ttf
new file mode 100644
index 0000000..19d86e6
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.default.retain-all-codepoint.ttf
Binary files differ
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.9dd.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.9dd.ttf
new file mode 100644
index 0000000..731dae6
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.9dd.ttf
Binary files differ
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.retain-all-codepoint.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.retain-all-codepoint.ttf
new file mode 100644
index 0000000..59ccc85
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.drop-hints.retain-all-codepoint.ttf
Binary files differ
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.9dd.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.9dd.ttf
new file mode 100644
index 0000000..16355fe
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.9dd.ttf
Binary files differ
diff --git a/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.retain-all-codepoint.ttf b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.retain-all-codepoint.ttf
new file mode 100644
index 0000000..58312ad
--- /dev/null
+++ b/test/subset/data/expected/layout.gdef.glyphset/IndicTestHowrah-Regular.retain-gids.retain-all-codepoint.ttf
Binary files differ
diff --git a/test/subset/data/fonts/IndicTestHowrah-Regular.ttf b/test/subset/data/fonts/IndicTestHowrah-Regular.ttf
new file mode 100644
index 0000000..f761b7f
--- /dev/null
+++ b/test/subset/data/fonts/IndicTestHowrah-Regular.ttf
Binary files differ
diff --git a/test/subset/data/tests/layout.gdef.glyphset.tests b/test/subset/data/tests/layout.gdef.glyphset.tests
new file mode 100644
index 0000000..b5591ef
--- /dev/null
+++ b/test/subset/data/tests/layout.gdef.glyphset.tests
@@ -0,0 +1,11 @@
+FONTS:
+IndicTestHowrah-Regular.ttf
+
+PROFILES:
+default.txt
+drop-hints.txt
+retain-gids.txt
+
+SUBSETS:
+U+9dd
+*
diff --git a/test/subset/meson.build b/test/subset/meson.build
index a287136..8f7ed81 100644
--- a/test/subset/meson.build
+++ b/test/subset/meson.build
@@ -21,6 +21,7 @@
   'layout.gsub6',
   'layout.gsub8',
   'layout.gdef',
+  'layout.gdef.glyphset',
   'layout.khmer',
   'layout.context',
   'layout.gdef-varstore',