http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55716
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-12-17 10:23:35 UTC --- Those changes are likely: 2011-09-09 Andrew John Hughes <ahug...@redhat.com> PR classpath/45526: Produce header files for any inner classes found. * tools/gnu/classpath/tools/javah/Main.java: (parsed): Set of class names that have been parsed. (writeHeader(Map,Printer)): Take a general Map rather than a specific HashMap. (parseClasses(Iterator<Object>)): Factor out the parsing of class files into a separate method so it can be called recursively for inner classes. (getClass(String)): Remove redundant cast. and indeed, I've seen the exception thrown mentioning different classes, but always it had some class$something.class string in it.