[ http://issues.apache.org/jira/browse/AXISCPP-155?page=all ]
     
Fred Preston closed AXISCPP-155:
--------------------------------


> Remove warning messages
> -----------------------
>
>          Key: AXISCPP-155
>          URL: http://issues.apache.org/jira/browse/AXISCPP-155
>      Project: Axis-C++
>         Type: Improvement

>   Components: Basic Architecture
>  Environment: n/a
>     Reporter: Fred Preston
>     Assignee: Adrian Dick
>     Priority: Minor

>
> Investigate warning messages and fix as appropriate.  When compiling in the 
> Window environment, warnings 4275 and 4251 are caused by not compiling with 
> the _DLL pre-processor definition. If this definition is included then other 
> problems arise. Due to the interdependancy of the classes these and other DLL 
> warnings may be dificult to cure...
> Project AxisXMLParserXerces files
> Build Output:
> Compiling...
> AxisParseException.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException'
> c:\program files\microsoft visual studio\vc98\include\exception(50) : see 
> declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.h(51) : warning C4251: 
> 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisParseException'
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.cpp(89) : warning C4172: 
> returning address of local variable or temporary
> ParserLoader.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException'
> c:\program files\microsoft visual studio\vc98\include\exception(50) : see 
> declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.h(51) : warning C4251: 
> 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisParseException'
> SoapBinInputStream.cpp
> SoapInputSource.cpp
> XercesHandler.cpp
> XMLParserXerces.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException'
> c:\program files\microsoft visual studio\vc98\include\exception(50) : see 
> declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.h(51) : warning C4251: 
> 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisParseException'
> Linking...
>    Creating library Debug/AxisXMLParser.lib and object Debug/AxisXMLParser.exp
> Creating browse info file...
> AxisXMLParser.dll - 0 error(s), 7 warning(s)
> Warnings
> Number        Description
> C4275 non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException'
> C4251 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisParseException'
> C4172 returning address of local variable or temporary
> Solution to C4275
> File: c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h
> The message warning C4275 - Non dll-interface class 'exception' used as base 
> for dll-interface class is caused by an inconsistency between the following:-
> File:Microsoft Visual Studio\VC98\Include\exception
> #ifdef        _DLL
> #define _CRTIMP __declspec(dllimport)
> #else /* ndef _DLL */
> #define _CRTIMP
> #endif        /* _DLL */
> class _CRTIMP exception
> {
> }
> And
> File:ws-axs\c\include\axis\server\GDefine.h
> #if defined(WIN32) 
> #define STORAGE_CLASS_INFO __declspec(dllexport)
> #else
> #define STORAGE_CLASS_INFO 
> #endif
> class STORAGE_CLASS_INFO AxisException :public exception
> {
> }
> Because the exception base class is not defined as belonging to a DLL (by the 
> omission of the _DLL flag in the pre-processor definitions), the compiler 
> outputs the warning message.
> If the _DLL flag is added to the pre-processor definition, then the following 
> warning appears during linking...
> LINK : warning LNK4049: locally defined symbol ""public: virtual __thiscall 
> exception::~exception(void)" (??1exception@@[EMAIL PROTECTED])" imported
> LINK : warning LNK4049: locally defined symbol ""public: __thiscall 
> exception::exception(void)" (??0exception@@[EMAIL PROTECTED])" imported
> LINK : warning LNK4049: locally defined symbol ""public: __thiscall 
> exception::exception(class exception const &)" (??0exception@@[EMAIL 
> PROTECTED]@@Z)" imported
> LINK : warning LNK4049: locally defined symbol ""public: class exception & 
> __thiscall exception::operator=(class exception const &)" 
> (??4exception@@[EMAIL PROTECTED]@@Z)" imported
> A LNK4049 warning is defined as 'Exported symbol "symbol" also imported.  The 
> symbol was both exported from and imported to the program.'.  This indicates 
> some sort or cyclic creation.  This is probably due to the clashing of 
> compiler directives (declspec).  As there is now a mismatch between the 
> AxisException class and the exeption base class because AxisExeption is 
> defined as dllexport whilst exception is defined as dllimport.  (NB: 
> 'dllimport' implies that method is used here, but defined elsewhere. 
> 'dllexport' implies that the method is defined here class and used by others.)
> Solution to C4251
> File: c:\cwss\build\ws-axis\c\src\xml\axisparseexception.h
> Because the _DLL pre-processor definition has not been set, the definition of 
> _CRTIMP will not have been set to __declspec(dllimport) (see code snippet in 
> previous warning explanation).
> Solution to C4172
> File: c:\cwss\build\ws-axis\c\src\xml\axisparseexception.cpp
> A method should not return a pointer to a local variable because it will have 
> been declared on a part of the stack that will only be valid inside that 
> method call.  To move the location of the variable to a more permanent 
> location, use the static reserved word. i.e. existing code:- 
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.cpp
> const string& AxisParseException::getMessage (const exception* objException)
> {
>     return objException->what();
> }
> becomes:-
> const string& AxisParseException::getMessage (const exception* objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
>  
> Project AxisTransport files
> Build Output:
> Compiling...
> AxisTransport.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException' 
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransport.cpp(82) : warning 
> C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
> AxisTransportException.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.cpp(89) : 
> warning C4172: returning address of local variable or temporary
> Channel.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> HttpTransport.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> c:\cwss\build\ws-axis\c\src\transport\axis\httptransport.cpp(71) : warning 
> C4800: 'int' : forcing value to bool 'true' or 'false' (performance warning)
> Receiver.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> c:\cwss\build\ws-axis\c\src\transport\axis\receiver.cpp(97) : warning C4101: 
> 'e' : unreferenced local variable
> Sender.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> c:\cwss\build\ws-axis\c\src\transport\axis\sender.cpp(50) : warning C4101: 
> 'e' : unreferenced local variable
> Transport.cpp
> TransportFactory.cpp
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h(153) : warning 
> C4275: non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException' c:\program files\microsoft visual 
> studio\vc98\include\exception(50) : see declaration of 'exception'
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.h(51) : 
> warning C4251: 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisTransportException'
> Url.cpp
> Linking...
>    Creating library Debug/AxisTransport.lib and object Debug/AxisTransport.exp
> AxisTransport.dll - 0 error(s), 19 warning(s)
> Warnings
> Number        Description
> C4275 non dll-interface class 'exception' used as base for dll-interface 
> class 'axiscpp::AxisException'
> C4251 'm_sMessage' : class 'std::basic_string<char,struct 
> std::char_traits<char>,class std::allocator<char> >' needs to have 
> dll-interface to be used by clients of class 'AxisParseException'
> C4800 'int' : forcing value to bool 'true' or 'false' (performance warning)
> C4172 returning address of local variable or temporary
> C4101 'e' : unreferenced local variable
> Solutions to C4275 and C4251
> Warnings C4275 and C4251 are described in the previous component build.
> Solution to C4800
> File: c:\cwss\build\ws-axis\c\src\transport\axis\axistransport.cpp
> File: c:\cwss\build\ws-axis\c\src\transport\axis\httptransport.cpp
> There is a type mismatch because an integer type is being forced to become a 
> boolean type.  The simplest solution is to use a cast operator, but because 
> an integer is becoming a boolean, there could be complications if the integer 
> is not in the range {0,1}.  The simplest solution is to use the following 
> code:-
> [boolean] = ([integer] == 0 ? false : true);
> Thus, file: c:\cwss\build\ws-axis\c\src\transport\axis\axistransport.cpp 
> changes from:-
> int AxisTransport::openConnection()
> {
>     int secure = 0;
>     /* Step 1 - Open Transport layer connection taking into account protocol
>      * and endpoint URI in m_Soap
>      */
>     Url objUrl(m_pcEndpointUri);
>     try
>     {
>         m_pHttpTransport = TransportFactory::GetTransport(objUrl, secure);
> :
> }
> To
> int AxisTransport::openConnection()
> {
>     int secure = 0;
>     /* Step 1 - Open Transport layer connection taking into account protocol
>      * and endpoint URI in m_Soap
>      */
>     Url objUrl(m_pcEndpointUri);
>     try
>     {
>         m_pHttpTransport = TransportFactory::GetTransport(objUrl, (secure == 
> 0 ? false : true));
> :
> }
> And, file: c:\cwss\build\ws-axis\c\src\transport\axis\httptransport.cpp 
> changes from:-
> HttpTransport::HttpTransport (Url url, int secure):m_Typ (POST), 
> m_strProxyHost(""), m_uiProxyPort(0), m_bUseProxy(false), m_lTimeoutSeconds(0)
> {
>     m_Url = url;
>     m_IsHttpHeader = 0;
>     m_HttpBindDone = false;
>     m_Secure = secure;
> :
> }
> To
> HttpTransport::HttpTransport (Url url, int secure):m_Typ (POST), 
> m_strProxyHost(""), m_uiProxyPort(0), m_bUseProxy(false), m_lTimeoutSeconds(0)
> {
>     m_Url = url;
>     m_IsHttpHeader = 0;
>     m_HttpBindDone = false;
>     m_Secure = (secure==0 ? false : true);
> :
> }
> Solution to C4172
> File: c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.cpp
> A method should not return a pointer to a local variable because it will have 
> been declared on a part of the stack that will only be valid inside that 
> method call.  To move the location of the variable to a more permanent 
> location, use the static reserved word. i.e. existing code:-
> const string& AxisTransportException::getMessage (const exception* 
> objException)
> {
>     return objException->what();
> }
> becomes
> const string& AxisTransportException::getMessage (const exception* 
> objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
> Solution to C4101
> File c:\cwss\build\ws-axis\c\src\transport\axis\receiver.cpp
> File: c:\cwss\build\ws-axis\c\src\transport\axis\sender.cpp
> When a local variable is defined, but not used, it will be unreferenced.  To 
> remove this warning, either on definition, set the variable to NULL, or in 
> the code, set it equal to itself.
> Thus, file: c:\cwss\build\ws-axis\c\src\transport\axis\receiver.cpp changes 
> from:-
> const char* Receiver::Recv()
> {
> :
>     catch(AxisTransportException& e)
>     {
>         throw;
>     }
> :
> }
> To
> const char* Receiver::Recv()
> {
> :
>     catch(AxisTransportException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
> And, file: c:\cwss\build\ws-axis\c\src\transport\axis\sender.cpp changes 
> from:-
> bool Sender::Send(const char* what)
> {
> :
>     catch(AxisException& e)
>     {
>         throw;
>     }
> :
> }
> To
> bool Sender::Send(const char* what)
> {
> :
>     catch(AxisException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
>  
> Project AxisClient files
> Build Output:
> Compiling...
> AdminUtils.cpp
> AppScopeHandlerPool.cpp
> Generating Code...
> Compiling...
> apr_base64.c
> Generating Code...
> Compiling...
> ArrayBean.cpp
> Attribute.cpp
> Axis.cpp
> c:\cwss\build\ws-axis\c\include\axis\client\call.h(801) : warning C4251: 
> 'm_handlerProperties' : class 'std::list<void *,class std::allocator<void *> 
> >' needs to have dll-interface to be used by clients of class 'axiscpp::Call'
> AxisConfig.cpp
> AxisConfigException.cpp
> c:\cwss\build\ws-axis\c\src\common\axisconfigexception.cpp(95) : warning 
> C4172: returning address of local variable or temporary
> AxisEngine.cpp
> AxisEngineException.cpp
> c:\cwss\build\ws-axis\c\src\engine\axisengineexception.cpp(93) : warning 
> C4172: returning address of local variable or temporary
> AxisGenException.cpp
> AxisParseException.cpp
> AxisSoapException.cpp
> c:\cwss\build\ws-axis\c\src\soap\axissoapexception.cpp(93) : warning C4172: 
> returning address of local variable or temporary
> AxisTime.cpp
> AxisTrace.cpp
> AxisTransportException.cpp
> AxisUtils.cpp
> AxisWsddException.cpp
> c:\cwss\build\ws-axis\c\src\wsdd\axiswsddexception.cpp(93) : warning C4172: 
> returning address of local variable or temporary
> BasicNode.cpp
> BasicTypeSerializer.cpp
> Call.cpp
> c:\cwss\build\ws-axis\c\include\axis\client\call.h(801) : warning C4251: 
> 'm_handlerProperties' : class 'std::list<void *,class std::allocator<void *> 
> >' needs to have dll-interface to be used by clients of class 'axiscpp::Call'
> c:\cwss\build\ws-axis\c\src\engine\client\call.cpp(194) : warning C4101: 'e' 
> : unreferenced local variable
> c:\cwss\build\ws-axis\c\src\engine\client\call.cpp(276) : warning C4101: 'e' 
> : unreferenced local variable
> CharacterElement.cpp
> ClientAxisEngine.cpp
> c:\cwss\build\ws-axis\c\src\engine\client\clientaxisengine.cpp(110) : warning 
> C4101: 'e' : unreferenced local variable
> Generating Code...
> Compiling...
> ComplexElement.cpp
> DeserializerPool.cpp
> Element.cpp
> Event.cpp
> GDefine.cpp
> HandlerChain.cpp
> HandlerLoader.cpp
> HandlerPool.cpp
> HeaderBlock.cpp
> HexCoder.cpp
> MessageData.cpp
> Param.cpp
> QName.cpp
> RequestScopeHandlerPool.cpp
> SerializerPool.cpp
> SessionScopeHandlerPool.cpp
> SharedObject.cpp
> SimpleAttribute.cpp
> SoapBody.cpp
> SoapDeSerializer.cpp
> Generating Code...
> Compiling...
> SoapEnvelope.cpp
> SoapFault.cpp
> SoapHeader.cpp
> SoapKeywordMapping.cpp
> SoapMethod.cpp
> SoapSerializer.cpp
> c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp(243) : warning C4101: 'e' 
> : unreferenced local variable
> c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp(247) : warning C4101: 'e' 
> : unreferenced local variable
> c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp(357) : warning C4101: 'e' 
> : unreferenced local variable
> c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp(361) : warning C4101: 'e' 
> : unreferenced local variable
> SOAPTransportFactory.cpp
> StartElement.cpp
> Stub.cpp
> c:\cwss\build\ws-axis\c\include\axis\client\call.h(801) : warning C4251: 
> 'm_handlerProperties' : class 'std::list<void *,class std::allocator<void *> 
> >' needs to have dll-interface to be used by clients of class 'axiscpp::Call'
> c:\cwss\build\ws-axis\c\include\axis\client\stub.h(652) : warning C4251: 
> 'm_vKeys' : class 'std::vector<char *,class std::allocator<char *> >' needs 
> to have dll-interface to be used by clients of class 'axiscpp::Stub'
> c:\cwss\build\ws-axis\c\include\axis\client\stub.h(662) : warning C4251: 
> 'm_vValues' : class 'std::vector<char *,class std::allocator<char *> >' needs 
> to have dll-interface to be used by clients of class 'axiscpp::Stub'
> c:\cwss\build\ws-axis\c\include\axis\client\stub.h(672) : warning C4251: 
> 'm_vSOAPHeaderBlocks' : class 'std::vector<class axiscpp::IHeaderBlock 
> *,class std::allocator<class axiscpp::IHeaderBlock *> >' needs to have 
> dll-interface to be used by client
> s of class 'axiscpp::Stub'
> c:\cwss\build\ws-axis\c\include\axis\client\stub.h(682) : warning C4251: 
> 'm_vSOAPMethodAttributes' : class 'std::vector<class axiscpp::Attribute 
> *,class std::allocator<class axiscpp::Attribute *> >' needs to have 
> dll-interface to be used by clients 
> of class 'axiscpp::Stub'
> TypeMapping.cpp
> URIMapping.cpp
> WSDDDeployment.cpp
> c:\cwss\build\ws-axis\c\src\wsdd\wsdddeployment.cpp(212) : warning C4101: 'e' 
> : unreferenced local variable
> WSDDDocument.cpp
> WSDDHandler.cpp
> WSDDKeywords.cpp
> WSDDService.cpp
> WSDDTransport.cpp
> XMLParserFactory.cpp
> Generating Code...
> Linking...
>    Creating library ../bin/AxisClient.lib and object ../bin/AxisClient.exp
> Creating browse info file...
> AxisClient.dll - 0 error(s), 19 warning(s)
> Warnings
> Number        Description
> C4251 'm_handlerProperties' : class 'std::list<void *,class 
> std::allocator<void *> >' needs to have dll-interface to be used by clients 
> of class 'axiscpp::Call'
> C4172 returning address of local variable or temporary
> C4101 'e' : unreferenced local variable
> Solutions to C4275 and C4251
> Warnings C4275 and C4251 are described in the previous component build.
> Solution to C4172
> File: c:\cwss\build\ws-axis\c\src\common\axisconfigexception.cpp
> File: c:\cwss\build\ws-axis\c\src\engine\axisengineexception.cpp
> File: c:\cwss\build\ws-axis\c\src\soap\axissoapexception.cpp
> File: c:\cwss\build\ws-axis\c\src\wsdd\axiswsddexception.cpp
> A method should not return a pointer to a local variable because it will have 
> been declared on a part of the stack that will only be valid inside that 
> method call.  To move the location of the variable to a more permanent 
> location, use the static reserved word.  File: 
> c:\cwss\build\ws-axis\c\src\common\axisconfigexception.cpp changes from:-
> const string& AxisConfigurationException::getMessage (const exception* 
> objException)
> {
>     return objException->what();
> }
> To
> const string& AxisConfigurationException::getMessage (const exception* 
> objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
> File: c:\cwss\build\ws-axis\c\src\engine\axisengineexception.cpp changes 
> from:-
> const string& AxisEngineException::getMessage (const exception* objException)
> {
>     return objException->what();
> }
> To
> const string& AxisEngineException::getMessage (const exception* objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
> File: c:\cwss\build\ws-axis\c\src\soap\axissoapexception.cpp changes from:-
> const string& AxisSoapException::getMessage (const exception* objException)
> {
>     return objException->what();
> }
> To
> const string& AxisSoapException::getMessage (const exception* objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
> File: c:\cwss\build\ws-axis\c\src\wsdd\axiswsddexception.cpp changes from:-
> const string& AxisWsddException::getMessage (const exception* objException)
> {
>     return objException->what();
> }
> To
> const string& AxisWsddException::getMessage (const exception* objException)
> {
>     static string objExDetail = objException->what();
>     return objExDetail;
> }
> Solution to C4101
> File c:\cwss\build\ws-axis\c\src\engine\client\call.cpp
> File c:\cwss\build\ws-axis\c\src\engine\client\clientaxisengine.cpp
> File c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp
> File c:\cwss\build\ws-axis\c\src\wsdd\wsdddeployment.cpp
> When a local variable is defined, but not used, it will be unreferenced.  To 
> remove this warning, either on definition, set the variable to NULL, or in 
> the code, set it equal to itself.
> Thus, file: c:\cwss\build\ws-axis\c\src\engine\client\call.cpp changes from:-
> int Call::initialize (PROVIDERTYPE nStyle, int secure)
> {
> :
>     catch (AxisException& e)
>     {
>         /* printf(e.GetErr().c_str()); */
>         m_nStatus = AXIS_FAIL;
>         throw;
>     }
> :
> }
> int Call::openConnection(int secure)
> {
> :
>     catch (AxisException& e)
>     {
>         throw;
>     }
> :
> }
> To
> int Call::initialize (PROVIDERTYPE nStyle, int secure)
> {
> :
>     catch (AxisException& e)
>     {
>         e = e;
>         /* printf(e.GetErr().c_str()); */
>         m_nStatus = AXIS_FAIL;
>         throw;
>     }
> :
> }
> int Call::openConnection(int secure)
> {
> :
>     catch (AxisException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
> And, file: c:\cwss\build\ws-axis\c\src\engine\client\clientaxisengine.cpp 
> changes from:-
> int ClientAxisEngine::process (SOAPTransport* pSoap)
> {
> :
>     catch(AxisException& e)
>     {
>         throw;
>     }
> :
> }
> To
> int ClientAxisEngine::process (SOAPTransport* pSoap)
> {
> :
>     catch(AxisException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
> And, file: c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp changes from:-
> int SoapSerializer::setOutputStream(SOAPTransport* pStream) 
> {
> :
>     catch(AxisSoapException& e)
>     {
>         throw;
>     }
>     catch(AxisException& e)
>     {
>         throw;
>     }
> :
> }
> IWrapperSoapSerializer& SoapSerializer::operator <<(const AxisChar* 
> cSerialized)
> {
> :
>     catch(AxisSoapException& e)
>     {
>         throw;
>     }
>     catch(AxisException& e)
>     {
>         throw;
>     }
> :
> }
> To
> int SoapSerializer::setOutputStream(SOAPTransport* pStream)
> {
> :
>     catch(AxisSoapException& e)
>     {
>         e = e;
>         throw;
>     }
>     catch(AxisException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
> IWrapperSoapSerializer& SoapSerializer::operator <<(const AxisChar* 
> cSerialized)
> {
> :
>     catch(AxisSoapException& e)
>     {
>         e = e;
>         throw;
>     }
>     catch(AxisException& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
> And, file: c:\cwss\build\ws-axis\c\src\wsdd\wsdddeployment.cpp changes from:-
> const WSDDService* WSDDDeployment::getService(const AxisChar* sServiceName)
> {
> :
>     catch(exception& e)
>     {
>         throw;
>     }
> :
> }
> To
> const WSDDService* WSDDDeployment::getService(const AxisChar* sServiceName)
> {
> :
>     catch(exception& e)
>     {
>         e = e;
>         throw;
>     }
> :
> }
>  
> List of all Files changed
> c:\cwss\build\ws-axis\c\include\axis\server\axisexception.h
> c:\cwss\build\ws-axis\c\src\common\axisconfigexception.cpp
> c:\cwss\build\ws-axis\c\src\engine\axisengineexception.cpp
> c:\cwss\build\ws-axis\c\src\engine\client\call.cpp
> c:\cwss\build\ws-axis\c\src\engine\client\clientaxisengine.cpp
> c:\cwss\build\ws-axis\c\src\soap\axissoapexception.cpp
> c:\cwss\build\ws-axis\c\src\soap\soapserializer.cpp
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransport.cpp
> c:\cwss\build\ws-axis\c\src\transport\axis\axistransportexception.cpp
> c:\cwss\build\ws-axis\c\src\transport\axis\httptransport.cpp
> c:\cwss\build\ws-axis\c\src\transport\axis\receiver.cpp
> c:\cwss\build\ws-axis\c\src\transport\axis\sender.cpp
> c:\cwss\build\ws-axis\c\src\wsdd\axiswsddexception.cpp
> c:\cwss\build\ws-axis\c\src\wsdd\wsdddeployment.cpp
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.cpp
> c:\cwss\build\ws-axis\c\src\xml\axisparseexception.h

-- 
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
-
For more information on JIRA, see:
   http://www.atlassian.com/software/jira

Reply via email to