Bug 45526 - gjavah does not implicitly produce header files for inner classes
Summary: gjavah does not implicitly produce header files for inner classes
Status: RESOLVED FIXED
Alias: None
Product: classpath
Classification: Unclassified
Component: classpath (show other bugs)
Version: 0.98
: P3 normal
Target Milestone: 0.99
Assignee: Not yet assigned to anyone
URL:
Keywords:
Depends on:
Blocks: 39410
  Show dependency treegraph
 
Reported: 2010-09-03 19:20 UTC by Andrew John Hughes
Modified: 2011-09-09 06:12 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Known to work:
Known to fail:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Andrew John Hughes 2010-09-03 19:20:04 UTC
Using Oracle's javah on a class with inner classes e.g. org.apache.subversion.javahl.ClientNotifyInformation produces a header file for the main class and one per inner class: 

org_apache_subversion_javahl_ClientNotifyInformation.h
org_apache_subversion_javahl_ClientNotifyInformation_Action.h
org_apache_subversion_javahl_ClientNotifyInformation_LockStatus.h
org_apache_subversion_javahl_ClientNotifyInformation_Status.h
Comment 1 Andrew John Hughes 2011-09-09 06:11:16 UTC
PR classpath/45526: Produce header files for any inner classes found.

       2011-09-09  Andrew John Hughes  <ahughes@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.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/classpath/ChangeLog?cvsroot=classpath&r1=1.9831&r2=1.9832
http://cvs.savannah.gnu.org/viewcvs/classpath/tools/gnu/classpath/tools/javah/Main.java?cvsroot=classpath&r1=1.13&r2=1.14
Comment 2 Andrew John Hughes 2011-09-09 06:12:24 UTC
Closing. Fixed in HEAD.