axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "S.Uthaiyashankar (JIRA)" <j...@apache.org>
Subject [jira] Commented: (AXIS2C-1256) Type-Name conflict when using Axis2C in combination with VisualStudio/VC98 XMemory and Utility
Date Tue, 23 Dec 2008 10:42:44 GMT

    [ https://issues.apache.org/jira/browse/AXIS2C-1256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12658817#action_12658817
] 

S.Uthaiyashankar commented on AXIS2C-1256:
------------------------------------------

This problem is not available in visual studio 2005 or later. I think the problem is, including
all the symbols available in 'std' using "using namespace std" statement (AFAIK, allocator,
map, iterator are defined in std namespace). Can you please check whether that is the case?
Are you compiling Axis2/C as C++ code? In that case, it might be a problem.

Errors were reported to the variable names, not to the struct type names in Axis2/C. Hence,
it is not a bug/problem in Axis2/C

> Type-Name conflict when using Axis2C in combination with VisualStudio/VC98 XMemory and
Utility
> ----------------------------------------------------------------------------------------------
>
>                 Key: AXIS2C-1256
>                 URL: https://issues.apache.org/jira/browse/AXIS2C-1256
>             Project: Axis2-C
>          Issue Type: Bug
>          Components: build system (Windows)
>    Affects Versions: 1.5.0
>         Environment: Windows XP Service Pack 2
> Microsoft Visual C++ 6.0
> Axis2c 1.5.0
>            Reporter: N. Schmidt
>            Assignee: S.Uthaiyashankar
>            Priority: Minor
>             Fix For: 1.6.0
>
>   Original Estimate: 0.25h
>  Remaining Estimate: 0.25h
>
> Hi, 
> I had a problem compiling a project in Visual C++ 6.0 as there is a name conflict within
several files.
> The included files ...VC98/includes/xmemory.h and ...VC98/includes/utility.h define template
classes of name "allocator", "iterator" and "map".
> As the exact naming is also used in some Axis header files as parameter attribute names,
several compiler errors occur (parameter name is interpreted as class of type allocator/iterator/map).
> I'm not sure, if this could be considered as a bug in Axis (cause the real problem is
the blundering naming of the classes in Visual Studio). I do also not know how this is handled
by newer versions of Visual Studio, as I have no possibilities to test this on my machine.
> I fixed the problem on my local machine by adding a suffix to all affected parameters
in the Axis header files. After that everything was compiling just fine. See attached log
file excerpt gives an overview of affected header files.
> ----- Log File Excerpt -----
> d:\axis2c-bin-1.5.0-win32\include\axutil_allocator.h(130) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_allocator.h(140) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_allocator.h(154) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_allocator.h(168) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_log.h(196) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(77) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(99) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(111) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(124) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(149) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread.h(197) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_thread_pool.h(102) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_env.h(90) : error C2955: 'allocator' : use of
class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_env.h(114) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_env.h(127) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_env.h(142) : error C2955: 'allocator' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axis2_ctx.h(139) : error C2955: 'map' : use of class
template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\map(140) : see declaration
of 'map'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_iterator.h(62) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_iterator.h(76) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_iterator.h(89) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_iterator.h(100) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_iterator.h(112) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_qname_iterator.h(58) : error C2955:
'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_qname_iterator.h(73) : error C2955:
'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_qname_iterator.h(87) : error C2955:
'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_qname_iterator.h(97) : error C2955:
'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_child_element_iterator.h(52) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_child_element_iterator.h(67) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_child_element_iterator.h(80) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_child_element_iterator.h(91) : error C2955: 'iterator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\platforms\windows\axutil_thread_windows.h(58) : error
C2955: 'allocator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\platforms\windows\axutil_thread_windows.h(82) : error
C2955: 'allocator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\platforms\windows\axutil_thread_windows.h(90) : error
C2955: 'allocator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\platforms\windows\axutil_thread_windows.h(116) : error
C2955: 'allocator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_log_default.h(47) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_log_default.h(56) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axutil_error_default.h(44) : error C2955: 'allocator'
: use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\xmemory(72) : see declaration
of 'allocator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_with_specific_attribute_iterator.h(52)
: error C2955: 'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_with_specific_attribute_iterator.h(66)
: error C2955: 'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_with_specific_attribute_iterator.h(79)
: error C2955: 'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_children_with_specific_attribute_iterator.h(90)
: error C2955: 'iterator' : use of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\utility(71) : see declaration
of 'iterator'
> d:\axis2c-bin-1.5.0-win32\include\axiom_soap_builder.h(189) : error C2955: 'map' : use
of class template requires template argument list
>         c:\program files\microsoft visual studio\vc98\include\map(140) : see declaration
of 'map'

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message