This is for 3 closely related issues, the first of which may not be a bug.
1. For some reason, pkgdata takes as its input a text file which contains a list of .res files, why? This doesn't really make sense, why not just take a list of .res files on the command line, or at least support that.
2. This is not documented on the man page. On the man page, it just says '[ file ... ]', without specifying what it actually wants. It wasn't until I found the example near the bottom of this page  that I realised I was doing it wrong. This brings me to my third point,
3. pkgdata doesn't fail when passing a list of .res files. It's not until you get a U_MISSING_RESOURCE_ERROR in your program that you find out anything is wrong.