[xsd-users] GML 3.2.1 w/ --generate-inline

Boris Kolpackov boris at codesynthesis.com
Mon May 3 11:13:07 EDT 2010


Hi Brad,

Brad Howes <howes at ll.mit.edu> writes:

> FYI, the GML 3.2.1 tarball compiles just fine with the settings you 
> provided. However, adding --generate-inline will make it fail due to 
> an incomplete type 'const struct gco::Boolean_PropertyType'

The problem is this: there is a type in the gco namespace 
named Boolean_PropertyType. And there is a type in gml named 
BooleanPropertyType. When this is compiled in the file-per-
type mode, the two sets of generated files are named as 
Boolean_PropertyType.?xx and BooleanPropertyType.?xx. However,
the header inclusion guards for both sets end up being the same
BOOLEAN_PROPERTY_TYPE_HXX. This results in proper files not being
included. The -split-code package compiles fine since there
the files are placed into different directroies and the guards
include the directory prefixed. For the other package this
can be resolved by adding the following option to gml.options
to rename one of the files to something more unique:

--type-file-regex %http://www.isotc211.org/2005/gco Boolean_PropertyType%GcoBooleanPropertyType%

I will upload the updated package to the wiki shortly.

Boris



More information about the xsd-users mailing list