[xsd-users] gcc visibility, serializer-map and typeinfo

Benjamin Schindler bschindler at inf.ethz.ch
Sun Jun 27 15:18:17 EDT 2010


Hi Boris

Ah, there were some things I didn't know here, however my problems are
not gone yet this way. The problem is the following:

I tried to compile a very special header with only these forward
declarations, compiled like this:

	cxx-tree
	--hxx-suffix .h
	--export-symbol UTILS_DLL
	--hxx-prologue "#include <utils/common/utilsExport.h>"
	--export-xml-schema
	--generate-xml-schema
	--generate-serialization # Required for list_stream

However, that did not work because of multiple issues:

- As noted above, --generate-serialization is needed so that list_stream
gets defined - serialization routines use ::xsd_schema::list_stream and
not list_stream directly

- The warning about the redeclaration, remained:
xml-schema.h:286: warning: type attributes ignored after type is already
defined

Line 286 is this:

 template class UTILS_DLL exception< char >;

When I look at the includes, it is no wonder that this happens as this
is included (among other rather heavy includes)
#include <xsd/cxx/tree/exceptions.hxx>

Exceptions is always included (even when not generating serialization),
so there is no way this warning can disappear

What can I do here?

Cheers
Benjamin


On 25.06.2010 22:28, Boris Kolpackov wrote:
> Hi Benjamin,
> 
> Benjamin Schindler <bschindler at inf.ethz.ch> writes:
>  
>> The problem seems to be that I include another Schema, which is compiled
>> with this option: --extern-xml-schema "Schema.h". Probably, the files
>> get included before schema.h and this is why I get these warnings.
> 
> I am not sure I understand your setup completely. To make it work
> you will need to make sure the following rules are satisfied:
> 
> 1. Create a header for the XML Schema namespace using the --generate-
>    xml-schema option. The invocation of the compiler should also
>    include the --export-xml-schema and --export-symbol options.
> 
> 2. All other schemas, across every DLL and executable, should be 
>    compiled with the --extern-xml-schema option to include the 
>    header file generated on step (1).
> 
> Let me know if you are still getting the warnings after following
> these rules.
> 
> Boris



More information about the xsd-users mailing list