@@ -862,10 +862,13 @@ def initCodeStreams(self, Module):
862
862
self .j_code = StringIO ()
863
863
self .jn_code = StringIO ()
864
864
self .cpp_code = StringIO ();
865
- if self .name != Module :
866
- self .j_code .write (T_JAVA_START_INHERITED if self . base else T_JAVA_START_ORPHAN )
865
+ if self .base :
866
+ self .j_code .write (T_JAVA_START_INHERITED )
867
867
else :
868
- self .j_code .write (T_JAVA_START_MODULE )
868
+ if self .name != Module :
869
+ self .j_code .write (T_JAVA_START_ORPHAN )
870
+ else :
871
+ self .j_code .write (T_JAVA_START_MODULE )
869
872
# misc handling
870
873
if self .name == 'Core' :
871
874
self .imports .add ("java.lang.String" )
@@ -962,11 +965,11 @@ def add_class(self, decl):
962
965
logging .info ('ignored: %s' , classinfo )
963
966
return
964
967
name = classinfo .name
965
- if self .isWrapped (name ):
968
+ if self .isWrapped (name ) and not classinfo . base :
966
969
logging .warning ('duplicated: %s' , classinfo )
967
970
return
968
971
self .classes [name ] = classinfo
969
- if name in type_dict :
972
+ if name in type_dict and not classinfo . base :
970
973
logging .warning ('duplicated: %s' , classinfo )
971
974
return
972
975
type_dict [name ] = \
@@ -1520,7 +1523,7 @@ def gen_class(self, ci):
1520
1523
ci .jn_code .write ( ManualFuncs [ci .name ][func ]["jn_code" ] )
1521
1524
ci .cpp_code .write ( ManualFuncs [ci .name ][func ]["cpp_code" ] )
1522
1525
1523
- if ci .name != self .Module :
1526
+ if ci .name != self .Module or ci . base :
1524
1527
# finalize()
1525
1528
ci .j_code .write (
1526
1529
"""
0 commit comments