I have now removed XMPIN_INFO_NOSUBTAGS from my GetFileInfo implementation and when I split a file into its subsongs, they are displayed fine in the playlist. However, I think there is an issue when switching between different subsongs:
If I play the first subsong, SetPosition is called with the correct subsong number, followed by GetTags, so its name is retrieved and displayed correctly.
If I now select the second subsong from the playlist and play it, SetPosition is called with the correct subsong index but GetTags isn't. If I double-click the playlist entry again, however, GetTags is called again.
If I play a completely unrelated file inbetween, GetTags is always called and the subsongs are displayed correctly. Could there be an issue when playing two subsongs from the same file one after another?
Also, if the subsongs are not separated, GetTags appears to be only called when playback is started, but not when playback advanced to the next subsong, so the first subsong's name remains to be displayed in the title bar.