axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mark Whitlock <mark_whitl...@uk.ibm.com>
Subject Fw: XSD types
Date Wed, 18 May 2005 09:00:20 GMT




In src/soap/xsd the classes (eg Int.cpp) use hardcoded values because these
limits are defined by the SOAP spec. Values from limits.h are platform
specific.
Mark
Mark Whitlock
IBM

----- Forwarded by Mark Whitlock/UK/IBM on 18/05/2005 09:53 -----
                                                                           
             Nadir Amra                                                    
             <amra@us.ibm.com>                                             
                                                                        To 
             17/05/2005 20:44          "Apache AXIS C Developers List"     
                                       <axis-c-dev@ws.apache.org>          
                                                                        cc 
             Please respond to                                             
              "Apache AXIS C                                       Subject 
             Developers List"          Re: XSD types                       
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           
                                                                           




OS/400 is 64-bit machine.  ints and longs are 32 bit. long long is 64bit.

In addition, I was wondering why we do not use the <limits.h> file to
determine max/min value for the various types?  I saw that we hard-code
the values when checking for ranges.

Nadir K. Amra


Mark Whitlock <mark_whitlock@uk.ibm.com> wrote on 05/17/2005 11:23:27 AM:

>
>
>
>
> Hi,
> I am investigating getting Axis C++ working on AIX 64 bit mode. The
sizes
> of longs (and ints?) are different on different platforms and in 32bit
and
> 64bit mode. I propose that the sizes of the xsd types in AxisUserAPI.hpp
> should be the same on all platforms in all modes since the maximum value
of
> these xsd types is defined by the SOAP specification.
>
> In 32bit mode (on windows, aix and linux) ints and longs are 32 bits. On
> AIX in 64bit mode, ints are 32 bits but longs are 64 bits. Long longs
are
> 64 bits on all platforms in all modes (that I have so far discovered).
So I
> intend to avoid using longs for xsd types.
>
> Nadir - is this the same on OS/400?
>
> In the future, we could use LONG_MAX and INT_MAX in #if's to
conditionally
> use the correct primitive for the correct xsd type, for platforms and
modes
> where ints aren't 32 bits.
>
> Mark
> Mark Whitlock
> IBM
>



Mime
View raw message