axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From axis-c-...@ws.apache.org
Subject [jira] Created: (AXISCPP-202) enums cause name clashes
Date Thu, 14 Oct 2004 09:25:51 GMT
Message:

  A new issue has been created in JIRA.

---------------------------------------------------------------------
View the issue:
  http://issues.apache.org/jira/browse/AXISCPP-202

Here is an overview of the issue:
---------------------------------------------------------------------
        Key: AXISCPP-202
    Summary: enums cause name clashes
       Type: Bug

     Status: Unassigned
   Priority: Major

    Project: Axis-C++
 Components: 
             Basic Architecture
   Versions:
             1.3 Final

   Assignee: 
   Reporter: Mark Whitlock

    Created: Thu, 14 Oct 2004 2:25 AM
    Updated: Thu, 14 Oct 2004 2:25 AM

Description:

> --- Valentin Kuznetsov <vkuznet@yahoo.com> wrote:
> 
> > 2) Add namespace around all enums. I found that Axis
> > conflicts with other software we use who also have
> > enum with CRITICAL, INFO, WARN keywords. If we'll wrap
> > those enum in axis into axis specific namespace all
> > existing and potential future problems will go away.
> > 
> 
> +1
> 
> Samisa...
> 

Simply putting namespaces around these enums would break C applications, since C does not
support namespaces. I agree this is the right solution for C++. For C, it would be good to
prefix all enums with AXIS_. I don't think AXIS_SEVERITY_LEVEL needs to be externalised anyway,
since it is only used by trace and AxisTrace.h is not external. There is also a problem with
some externalised #defines like XML_Ch and SOAPACTIONHEADER which could also clash.

So I propose move AXIS_SEVERITY_LEVEL to AxisTrace.h, for C++ put namespaces around all enums,
for C prefix all enums with AXIS_, and for *both* C and C++ prefix all #defines with AXIS_.

Unfortunately this will require applications changing, WSDL2WS changes and stubs being regenerated
when users move to 1.3. Is this critical for 1.3 or should we just move AXIS_SEVERITY_LEVEL
to AxisTrace.h in 1.3 and fix it all properly for 1.4? 
 



---------------------------------------------------------------------
JIRA INFORMATION:
This message is automatically generated by JIRA.

If you think it was sent incorrectly contact one of the administrators:
   http://issues.apache.org/jira/secure/Administrators.jspa

If you want more information on JIRA, or have a bug to report see:
   http://www.atlassian.com/software/jira


Mime
View raw message