[aspectc-user] Re: AspectC++ + gSOAP

Olaf Spinczyk os at aspectc.org
Wed Dec 3 17:32:39 CET 2008


Hi Leandro,

the problems, which you have experienced during the last few days are 
related to a new experimental language feature. There is a fix for the 
last one (list<char>::iterator), but this one here is a bit more 
problematic. ASAP I will disable this feature (by default) and add a 
command line option that I can use to enable the feature for my experiments.

Best regards,

Olaf

Leandro Costa wrote:
> this is a typical class generated by gSOAP.
> It seems AspectC++ doesn't work if we have "struct soap *soap;" as a 
> member of the class.
> If a remove this member of the class, AspectC++ works fine.
>
> #include "stdsoap2.h"
>
> #ifndef SOAP_TYPE_nsENTWDT__Alarm
> #define SOAP_TYPE_nsENTWDT__Alarm (7)
> /* nsENTWDT:Alarm */
> class SOAP_CMAC nsENTWDT__Alarm
> {
> public:
>   char *name; /* optional element of type xsd:string */
>   char *severity; /* optional element of type xsd:string */
>   char *description;  /* optional element of type xsd:string */
>   char *type; /* optional element of type xsd:string */
>   char *code; /* optional element of type xsd:string */
>   char *reason; /* optional element of type xsd:string */
>   char *repair; /* optional element of type xsd:string */
>   char *location; /* optional element of type xsd:string */
>   char *faultTime;  /* optional element of type xsd:string */
>   struct soap *soap;  /* transient */
> public:
>   virtual int soap_type() const { return 7; } /* = unique id 
> SOAP_TYPE_nsENTWDT__Alarm */
>   virtual void soap_default(struct soap*);
>   virtual void soap_serialize(struct soap*) const;
>   virtual int soap_put(struct soap*, const char*, const char*) const;
>   virtual int soap_out(struct soap*, const char*, int, const char*) const;
>   virtual void *soap_get(struct soap*, const char*, const char*);
>   virtual void *soap_in(struct soap*, const char*, const char*);
>            nsENTWDT__Alarm() : name(NULL), severity(NULL), 
> description(NULL), type(NULL), code(NULL), reason(NULL), repair(NULL), 
> location(NULL), faultTime(NULL), soap(NULL) { }
>   virtual ~nsENTWDT__Alarm() { }
> };
> #endif
>
> On Wed, Dec 3, 2008 at 2:15 PM, Leandro Costa <leandro.costa at gmail.com 
> <mailto:leandro.costa at gmail.com>> wrote:
>
>     I'm trying to use AspectC++ in a project that uses gSOAP.
>     After generate source code with gSOAP (using wsdl files), I
>     include one of the .h files generated in my own .h file:
>
>     #include "soap/wdt/src/soapnorthBoundFullServiceSoapBindingProxy.h"
>
>     When I run ac++. I got the following error:
>
>     <typeinfo>:2: error: invalid member declaration near token `<'
>     <typeinfo>:2: located in the following non-file unit:
>     public:
>       typedef AC::TL<char *,AC::TL<char *,AC::TL<char *,AC::TL<char
>     *,AC::TL<char *,AC::TL<char *,AC::TL<char *,AC::TL<char
>     *,AC::TL<char *,AC::TL<soap *,AC::TLE > > > > > > > > > > __AttrTypes;
>       const char *__attr_name (unsigned i) const {
>         static const char *names[] = { "name", "severity",
>     "description", "type", "code", "reason", "repair", "location",
>     "faultTime", "soap" }; return names[i];
>       }
>       void *__attr (unsigned __i) const {
>         switch (__i) { case 0: return (void*)&name; case 1: return
>     (void*)&severity; case 2: return (void*)&description; case 3:
>     return (void*)&type; case 4: return (void*)&code; case 5: return
>     (void*)&reason; case 6: return (void*)&repair; case 7: return
>     (void*)&location; case 8: return (void*)&faultTime; case 9: return
>     (void*)&soap; default: return 0; }
>       }
>
>     If I remove the .h file from the includes, it works.
>
>     Why AspectC++ can't work with source code generated by gSOAP?
>
>     -- 
>     _____________________________________________
>
>                           Leandro Souza Costa
>
>     "A vitória se encastela em jardins encantadores,
>      mas para se chegar a ela não há caminho de flores"
>     _____________________________________________
>
>
>
>
> -- 
> _____________________________________________
>
>                       Leandro Souza Costa
>
> "A vitória se encastela em jardins encantadores,
>  mas para se chegar a ela não há caminho de flores"
> _____________________________________________
> ------------------------------------------------------------------------
>
> _______________________________________________
> aspectc-user mailing list
> aspectc-user at aspectc.org
> http://www.aspectc.org/mailman/listinfo/aspectc-user
>   




More information about the aspectc-user mailing list