Indexing in ltxdoc dtx using doc package

I've combed the documentation for a solution to this, and Googled like crazy, but haven't been able to come up with anything. I'm working on a fairly complex dtx file and have gotten the index working just fine; however, when I tried to create subentries, I instead get normal entries with an opening interrogatory mark replacing \levelchar. MWE:

\documentclass{ltxdoc}

\usepackage{doc}
\usepackage{makeidx}
\makeindex

\begin{document}

Testing some subentries!
\index{small caps}\index{small caps\levelchar petite small caps}
\index{small caps\levelchar and titling caps, difference between}

\PrintIndex

\end{document}


I'm compiling this with what as far I can tell are the correct commands:

pdflatex indtest.tex;
makeindex -s gind.ist indtest.idx;
pdflatex indtest.tex;


I've also tried replacing \levelchar with the ! that I know and love from makeindex, but all this does is remove the opening interrogatory mark. My first thought was that gind.ist doesn't support subentries, but the doc documentation discusses them, so it seems that it does.

What glaringly obvious issue am I missing here?

• This is supposed to be typeset with verbatim try \tt before PrintIndex – Yiannis Lazarides Jul 29 '14 at 1:57
• Doesn't seem to resolve the issue; I'm still not getting a true subentry. – dgoodmaniii Jul 29 '14 at 2:00
• I've found that explicitly including subitems works, but the subentries aren't joined under a single identical entry, but rather grouped separately. So still no solution. – dgoodmaniii Jul 29 '14 at 15:30

Easy solution. While I would expect \levelchar to work, all I needed to do was replace it with > explicitly. E.g.:
\index{gnats>and gnus}