zeroc-ice 3.6b1 → 3.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/{ext/ice/BZIP_LICENSE → BZIP2_LICENSE} +0 -0
- data/ICE_LICENSE +8 -14
- data/LICENSE +2 -1
- data/{ext/ice/MCPP_LICENSE → MCPP_LICENSE} +2 -9
- data/bin/slice2rb +1 -1
- data/ext/Communicator.cpp +1 -1
- data/ext/Communicator.h +1 -1
- data/ext/Config.h +1 -22
- data/ext/Connection.cpp +125 -13
- data/ext/Connection.h +1 -1
- data/ext/Endpoint.cpp +62 -3
- data/ext/Endpoint.h +1 -1
- data/ext/ImplicitContext.cpp +1 -1
- data/ext/ImplicitContext.h +1 -1
- data/ext/Init.cpp +8 -1
- data/ext/Logger.cpp +1 -1
- data/ext/Logger.h +1 -1
- data/ext/ObjectFactory.cpp +1 -1
- data/ext/ObjectFactory.h +1 -1
- data/ext/Operation.cpp +1 -1
- data/ext/Operation.h +1 -1
- data/ext/Properties.cpp +1 -1
- data/ext/Properties.h +1 -1
- data/ext/Proxy.cpp +1 -1
- data/ext/Proxy.h +1 -1
- data/ext/Slice.cpp +1 -1
- data/ext/Slice.h +1 -1
- data/ext/Types.cpp +65 -17
- data/ext/Types.h +4 -1
- data/ext/Util.cpp +49 -58
- data/ext/Util.h +1 -1
- data/ext/extconf.rb +17 -15
- data/ext/ice/cpp/include/Ice/ACMF.h +1 -1
- data/ext/ice/cpp/include/Ice/Application.h +1 -1
- data/ext/ice/cpp/include/Ice/AsyncResult.h +1 -1
- data/ext/ice/cpp/include/Ice/AsyncResultF.h +1 -1
- data/ext/ice/cpp/include/Ice/BasicStream.h +1 -1
- data/ext/ice/cpp/include/Ice/BatchRequestInterceptor.h +52 -0
- data/ext/ice/cpp/include/Ice/BatchRequestQueueF.h +25 -0
- data/ext/ice/cpp/include/Ice/Buffer.h +1 -1
- data/ext/ice/cpp/include/Ice/BuiltinSequences.h +12 -4
- data/ext/ice/cpp/include/Ice/Communicator.h +12 -4
- data/ext/ice/cpp/include/Ice/CommunicatorAsync.h +1 -1
- data/ext/ice/cpp/include/Ice/CommunicatorF.h +12 -4
- data/ext/ice/cpp/include/Ice/Config.h +13 -8
- data/ext/ice/cpp/include/Ice/Connection.h +41 -16
- data/ext/ice/cpp/include/Ice/ConnectionAsync.h +1 -1
- data/ext/ice/cpp/include/Ice/ConnectionF.h +12 -4
- data/ext/ice/cpp/include/Ice/ConnectionFactoryF.h +1 -1
- data/ext/ice/cpp/include/Ice/ConnectionIF.h +1 -1
- data/ext/ice/cpp/include/Ice/Current.h +12 -4
- data/ext/ice/cpp/include/Ice/DefaultObjectFactory.h +1 -1
- data/ext/ice/cpp/include/Ice/DeprecatedStringConverter.h +1 -1
- data/ext/ice/cpp/include/Ice/DispatchInterceptor.h +1 -1
- data/ext/ice/cpp/include/Ice/Dispatcher.h +1 -1
- data/ext/ice/cpp/include/Ice/DynamicLibrary.h +1 -1
- data/ext/ice/cpp/include/Ice/DynamicLibraryF.h +1 -1
- data/ext/ice/cpp/include/Ice/Endpoint.h +16 -6
- data/ext/ice/cpp/include/Ice/EndpointF.h +12 -4
- data/ext/ice/cpp/include/Ice/EndpointTypes.h +12 -4
- data/ext/ice/cpp/include/Ice/Exception.h +3 -3
- data/ext/ice/cpp/include/Ice/FacetMap.h +12 -4
- data/ext/ice/cpp/include/Ice/FactoryTable.h +1 -1
- data/ext/ice/cpp/include/Ice/FactoryTableInit.h +1 -1
- data/ext/ice/cpp/include/Ice/Format.h +1 -1
- data/ext/ice/cpp/include/Ice/Functional.h +1 -1
- data/ext/ice/cpp/include/Ice/GCObject.h +5 -1
- data/ext/ice/cpp/include/Ice/Handle.h +1 -1
- data/ext/ice/cpp/include/Ice/Ice.h +4 -3
- data/ext/ice/cpp/include/Ice/Identity.h +13 -5
- data/ext/ice/cpp/include/Ice/ImplicitContext.h +12 -4
- data/ext/ice/cpp/include/Ice/ImplicitContextF.h +12 -4
- data/ext/ice/cpp/include/Ice/Incoming.h +1 -1
- data/ext/ice/cpp/include/Ice/IncomingAsync.h +1 -1
- data/ext/ice/cpp/include/Ice/IncomingAsyncF.h +1 -1
- data/ext/ice/cpp/include/Ice/Initialize.h +4 -2
- data/ext/ice/cpp/include/Ice/InstanceF.h +1 -1
- data/ext/ice/cpp/include/Ice/Instrumentation.h +12 -4
- data/ext/ice/cpp/include/Ice/InstrumentationF.h +12 -4
- data/ext/ice/cpp/include/Ice/LocalException.h +12 -4
- data/ext/ice/cpp/include/Ice/LocalObject.h +1 -1
- data/ext/ice/cpp/include/Ice/LocalObjectF.h +1 -1
- data/ext/ice/cpp/include/Ice/Locator.h +137 -129
- data/ext/ice/cpp/include/Ice/LocatorF.h +12 -4
- data/ext/ice/cpp/include/Ice/Logger.h +12 -4
- data/ext/ice/cpp/include/Ice/LoggerF.h +12 -4
- data/ext/ice/cpp/include/Ice/LoggerUtil.h +1 -1
- data/ext/ice/cpp/include/Ice/Metrics.h +144 -136
- data/ext/ice/cpp/include/Ice/MetricsAdminI.h +1 -1
- data/ext/ice/cpp/include/Ice/MetricsFunctional.h +1 -1
- data/ext/ice/cpp/include/Ice/MetricsObserverI.h +35 -26
- data/ext/ice/cpp/include/Ice/NativePropertiesAdmin.h +1 -1
- data/ext/ice/cpp/include/Ice/Object.h +1 -1
- data/ext/ice/cpp/include/Ice/ObjectAdapter.h +12 -4
- data/ext/ice/cpp/include/Ice/ObjectAdapterF.h +12 -4
- data/ext/ice/cpp/include/Ice/ObjectAdapterFactoryF.h +1 -1
- data/ext/ice/cpp/include/Ice/ObjectF.h +1 -1
- data/ext/ice/cpp/include/Ice/ObjectFactory.h +12 -4
- data/ext/ice/cpp/include/Ice/ObjectFactoryF.h +12 -4
- data/ext/ice/cpp/include/Ice/ObjectFactoryManagerF.h +1 -1
- data/ext/ice/cpp/include/Ice/ObserverHelper.h +1 -1
- data/ext/ice/cpp/include/Ice/Outgoing.h +67 -39
- data/ext/ice/cpp/include/Ice/OutgoingAsync.h +31 -34
- data/ext/ice/cpp/include/Ice/OutgoingAsyncF.h +4 -4
- data/ext/ice/cpp/include/Ice/Plugin.h +12 -4
- data/ext/ice/cpp/include/Ice/PluginF.h +12 -4
- data/ext/ice/cpp/include/Ice/Process.h +36 -28
- data/ext/ice/cpp/include/Ice/ProcessF.h +12 -4
- data/ext/ice/cpp/include/Ice/Properties.h +12 -4
- data/ext/ice/cpp/include/Ice/PropertiesAdmin.h +86 -78
- data/ext/ice/cpp/include/Ice/PropertiesF.h +12 -4
- data/ext/ice/cpp/include/Ice/Protocol.h +1 -1
- data/ext/ice/cpp/include/Ice/Proxy.h +6 -2
- data/ext/ice/cpp/include/Ice/ProxyF.h +1 -1
- data/ext/ice/cpp/include/Ice/ProxyFactoryF.h +1 -1
- data/ext/ice/cpp/include/Ice/ProxyHandle.h +1 -1
- data/ext/ice/cpp/include/Ice/ReferenceF.h +1 -1
- data/ext/ice/cpp/include/Ice/RemoteLogger.h +137 -129
- data/ext/ice/cpp/include/Ice/RequestHandlerF.h +1 -1
- data/ext/ice/cpp/include/Ice/ResponseHandlerF.h +1 -1
- data/ext/ice/cpp/include/Ice/Router.h +37 -29
- data/ext/ice/cpp/include/Ice/RouterF.h +12 -4
- data/ext/ice/cpp/include/Ice/ServantLocator.h +12 -4
- data/ext/ice/cpp/include/Ice/ServantLocatorF.h +12 -4
- data/ext/ice/cpp/include/Ice/ServantManagerF.h +1 -1
- data/ext/ice/cpp/include/Ice/Service.h +1 -1
- data/ext/ice/cpp/include/Ice/SliceChecksumDict.h +12 -4
- data/ext/ice/cpp/include/Ice/SliceChecksums.h +1 -1
- data/ext/ice/cpp/include/Ice/SlicedData.h +1 -6
- data/ext/ice/cpp/include/Ice/SlicedDataF.h +1 -1
- data/ext/ice/cpp/include/Ice/Stream.h +3 -5
- data/ext/ice/cpp/include/Ice/StreamF.h +1 -1
- data/ext/ice/cpp/include/Ice/StreamHelpers.h +1 -1
- data/ext/ice/cpp/include/Ice/ThreadPoolF.h +1 -1
- data/ext/ice/cpp/include/Ice/UserExceptionFactory.h +1 -1
- data/ext/ice/cpp/include/Ice/Version.h +14 -6
- data/ext/ice/cpp/include/IceSSL/Config.h +19 -1
- data/ext/ice/cpp/include/IceSSL/ConnectionInfo.h +61 -7
- data/ext/ice/cpp/include/IceSSL/EndpointInfo.h +52 -5
- data/ext/ice/cpp/include/IceSSL/IceSSL.h +2 -2
- data/ext/ice/cpp/include/IceSSL/Plugin.h +32 -26
- data/ext/ice/cpp/include/IceUtil/AbstractMutex.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Atomic.h +186 -0
- data/ext/ice/cpp/include/IceUtil/Cache.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Cond.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Config.h +31 -20
- data/ext/ice/cpp/include/IceUtil/CountDownLatch.h +1 -1
- data/ext/ice/cpp/include/IceUtil/CtrlCHandler.h +1 -1
- data/ext/ice/cpp/include/IceUtil/DisableWarnings.h +9 -2
- data/ext/ice/cpp/include/IceUtil/Exception.h +4 -3
- data/ext/ice/cpp/include/IceUtil/Functional.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Handle.h +1 -1
- data/ext/ice/cpp/include/IceUtil/IceUtil.h +2 -2
- data/ext/ice/cpp/include/IceUtil/IconvStringConverter.h +1 -1
- data/ext/ice/cpp/include/IceUtil/InputUtil.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Iterator.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Lock.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Monitor.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Mutex.h +1 -1
- data/ext/ice/cpp/include/IceUtil/MutexProtocol.h +1 -1
- data/ext/ice/cpp/include/IceUtil/MutexPtrLock.h +1 -1
- data/ext/ice/cpp/include/IceUtil/MutexPtrTryLock.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Optional.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Options.h +1 -1
- data/ext/ice/cpp/include/IceUtil/OutputUtil.h +8 -11
- data/ext/ice/cpp/include/IceUtil/PopDisableWarnings.h +1 -1
- data/ext/ice/cpp/include/IceUtil/PushDisableWarnings.h +5 -1
- data/ext/ice/cpp/include/IceUtil/Random.h +1 -1
- data/ext/ice/cpp/include/IceUtil/RecMutex.h +1 -1
- data/ext/ice/cpp/include/IceUtil/SHA1.h +8 -26
- data/ext/ice/cpp/include/IceUtil/ScannerConfig.h +5 -5
- data/ext/ice/cpp/include/IceUtil/ScopedArray.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Shared.h +3 -37
- data/ext/ice/cpp/include/IceUtil/StringUtil.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Thread.h +1 -1
- data/ext/ice/cpp/include/IceUtil/ThreadException.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Time.h +1 -1
- data/ext/ice/cpp/include/IceUtil/Timer.h +1 -1
- data/ext/ice/cpp/include/IceUtil/UUID.h +1 -1
- data/ext/ice/cpp/include/IceUtil/UndefSysMacros.h +1 -1
- data/ext/ice/cpp/include/IceUtil/UniquePtr.h +1 -1
- data/ext/ice/cpp/include/Slice/CPlusPlusUtil.h +7 -6
- data/ext/ice/cpp/include/Slice/Checksum.h +1 -1
- data/ext/ice/cpp/include/Slice/CsUtil.h +1 -1
- data/ext/ice/cpp/include/Slice/DotNetNames.h +1 -1
- data/ext/ice/cpp/include/Slice/FileTracker.h +1 -1
- data/ext/ice/cpp/include/Slice/JavaUtil.h +3 -1
- data/ext/ice/cpp/include/Slice/ObjCUtil.h +127 -0
- data/ext/ice/cpp/include/Slice/PHPUtil.h +1 -1
- data/ext/ice/cpp/include/Slice/Parser.h +18 -12
- data/ext/ice/cpp/include/Slice/Preprocessor.h +6 -4
- data/ext/ice/cpp/include/Slice/PythonUtil.h +1 -1
- data/ext/ice/cpp/include/Slice/RubyUtil.h +1 -1
- data/ext/ice/cpp/include/Slice/Util.h +20 -2
- data/ext/ice/cpp/src/Ice/ACM.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ACM.h +1 -1
- data/ext/ice/cpp/src/Ice/Acceptor.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Acceptor.h +1 -1
- data/ext/ice/cpp/src/Ice/AcceptorF.h +1 -1
- data/ext/ice/cpp/src/Ice/AsyncResult.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Base64.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Base64.h +1 -1
- data/ext/ice/cpp/src/Ice/BasicStream.cpp +7 -5
- data/ext/ice/cpp/src/Ice/BatchRequestQueue.cpp +227 -0
- data/ext/ice/cpp/src/Ice/BatchRequestQueue.h +59 -0
- data/ext/ice/cpp/src/Ice/Buffer.cpp +3 -3
- data/ext/ice/cpp/src/Ice/BuiltinSequences.cpp +10 -4
- data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.cpp +82 -282
- data/ext/ice/cpp/src/Ice/CollocatedRequestHandler.h +8 -21
- data/ext/ice/cpp/src/Ice/Communicator.cpp +11 -5
- data/ext/ice/cpp/src/Ice/CommunicatorF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/CommunicatorI.cpp +6 -6
- data/ext/ice/cpp/src/Ice/CommunicatorI.h +1 -1
- data/ext/ice/cpp/src/Ice/ConnectRequestHandler.cpp +42 -180
- data/ext/ice/cpp/src/Ice/ConnectRequestHandler.h +10 -19
- data/ext/ice/cpp/src/Ice/ConnectRequestHandlerF.h +25 -0
- data/ext/ice/cpp/src/Ice/Connection.cpp +17 -11
- data/ext/ice/cpp/src/Ice/ConnectionF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/ConnectionFactory.cpp +137 -51
- data/ext/ice/cpp/src/Ice/ConnectionFactory.h +18 -8
- data/ext/ice/cpp/src/Ice/ConnectionI.cpp +105 -391
- data/ext/ice/cpp/src/Ice/ConnectionI.h +25 -23
- data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.cpp +5 -29
- data/ext/ice/cpp/src/Ice/ConnectionRequestHandler.h +3 -8
- data/ext/ice/cpp/src/Ice/Connector.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Connector.h +1 -1
- data/ext/ice/cpp/src/Ice/ConnectorF.h +1 -1
- data/ext/ice/cpp/src/Ice/Current.cpp +10 -4
- data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.cpp +1 -1
- data/ext/ice/cpp/src/Ice/DefaultsAndOverrides.h +1 -1
- data/ext/ice/cpp/src/Ice/DefaultsAndOverridesF.h +1 -1
- data/ext/ice/cpp/src/Ice/DeprecatedStringConverter.cpp +1 -1
- data/ext/ice/cpp/src/Ice/DispatchInterceptor.cpp +1 -1
- data/ext/ice/cpp/src/Ice/DynamicLibrary.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Endpoint.cpp +17 -11
- data/ext/ice/cpp/src/Ice/EndpointF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/EndpointFactory.cpp +19 -1
- data/ext/ice/cpp/src/Ice/EndpointFactory.h +13 -1
- data/ext/ice/cpp/src/Ice/EndpointFactoryF.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointFactoryManager.cpp +1 -1
- data/ext/ice/cpp/src/Ice/EndpointFactoryManager.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointFactoryManagerF.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/EndpointI.h +33 -1
- data/ext/ice/cpp/src/Ice/EndpointIF.h +1 -1
- data/ext/ice/cpp/src/Ice/EndpointTypes.cpp +10 -4
- data/ext/ice/cpp/src/Ice/EventHandler.cpp +1 -1
- data/ext/ice/cpp/src/Ice/EventHandler.h +4 -1
- data/ext/ice/cpp/src/Ice/EventHandlerF.h +1 -1
- data/ext/ice/cpp/src/Ice/Exception.cpp +20 -11
- data/ext/ice/cpp/src/Ice/FacetMap.cpp +10 -4
- data/ext/ice/cpp/src/Ice/FactoryTable.cpp +1 -1
- data/ext/ice/cpp/src/Ice/FactoryTableInit.cpp +2 -2
- data/ext/ice/cpp/src/Ice/GCObject.cpp +1 -1
- data/ext/ice/cpp/src/Ice/HashUtil.h +1 -1
- data/ext/ice/cpp/src/Ice/HttpParser.cpp +27 -15
- data/ext/ice/cpp/src/Ice/HttpParser.h +4 -6
- data/ext/ice/cpp/src/Ice/IPEndpointI.cpp +7 -1
- data/ext/ice/cpp/src/Ice/IPEndpointI.h +2 -1
- data/ext/ice/cpp/src/Ice/IPEndpointIF.h +1 -1
- data/ext/ice/cpp/src/Ice/Identity.cpp +11 -5
- data/ext/ice/cpp/src/Ice/ImplicitContext.cpp +11 -5
- data/ext/ice/cpp/src/Ice/ImplicitContextF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/ImplicitContextI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ImplicitContextI.h +1 -1
- data/ext/ice/cpp/src/Ice/Incoming.cpp +22 -20
- data/ext/ice/cpp/src/Ice/IncomingAsync.cpp +1 -1
- data/ext/ice/cpp/src/Ice/IncomingRequest.h +1 -1
- data/ext/ice/cpp/src/Ice/Initialize.cpp +31 -5
- data/ext/ice/cpp/src/Ice/Instance.cpp +102 -59
- data/ext/ice/cpp/src/Ice/Instance.h +28 -2
- data/ext/ice/cpp/src/Ice/Instrumentation.cpp +20 -14
- data/ext/ice/cpp/src/Ice/InstrumentationF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/InstrumentationI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/InstrumentationI.h +1 -1
- data/ext/ice/cpp/src/Ice/LocalException.cpp +10 -4
- data/ext/ice/cpp/src/Ice/LocalObject.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Locator.cpp +83 -77
- data/ext/ice/cpp/src/Ice/LocatorF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/LocatorInfo.cpp +77 -69
- data/ext/ice/cpp/src/Ice/LocatorInfo.h +1 -1
- data/ext/ice/cpp/src/Ice/LocatorInfoF.h +1 -1
- data/ext/ice/cpp/src/Ice/Logger.cpp +11 -5
- data/ext/ice/cpp/src/Ice/LoggerAdminI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/LoggerAdminI.h +1 -1
- data/ext/ice/cpp/src/Ice/LoggerF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/LoggerI.cpp +10 -8
- data/ext/ice/cpp/src/Ice/LoggerI.h +1 -1
- data/ext/ice/cpp/src/Ice/LoggerUtil.cpp +2 -2
- data/ext/ice/cpp/src/Ice/Metrics.cpp +122 -116
- data/ext/ice/cpp/src/Ice/MetricsAdminI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/MetricsObserverI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Network.cpp +63 -19
- data/ext/ice/cpp/src/Ice/Network.h +10 -3
- data/ext/ice/cpp/src/Ice/NetworkF.h +1 -1
- data/ext/ice/cpp/src/Ice/NetworkProxy.cpp +1 -1
- data/ext/ice/cpp/src/Ice/NetworkProxy.h +1 -1
- data/ext/ice/cpp/src/Ice/NetworkProxyF.h +1 -1
- data/ext/ice/cpp/src/Ice/Object.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ObjectAdapter.cpp +11 -5
- data/ext/ice/cpp/src/Ice/ObjectAdapterF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.cpp +9 -9
- data/ext/ice/cpp/src/Ice/ObjectAdapterFactory.h +2 -2
- data/ext/ice/cpp/src/Ice/ObjectAdapterI.cpp +3 -3
- data/ext/ice/cpp/src/Ice/ObjectAdapterI.h +5 -5
- data/ext/ice/cpp/src/Ice/ObjectFactory.cpp +11 -5
- data/ext/ice/cpp/src/Ice/ObjectFactoryF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/ObjectFactoryManager.cpp +9 -10
- data/ext/ice/cpp/src/Ice/ObjectFactoryManager.h +1 -1
- data/ext/ice/cpp/src/Ice/ObserverHelper.cpp +1 -1
- data/ext/ice/cpp/src/Ice/OpaqueEndpointI.cpp +6 -5
- data/ext/ice/cpp/src/Ice/OpaqueEndpointI.h +1 -1
- data/ext/ice/cpp/src/Ice/Outgoing.cpp +209 -254
- data/ext/ice/cpp/src/Ice/OutgoingAsync.cpp +120 -106
- data/ext/ice/cpp/src/Ice/Plugin.cpp +12 -6
- data/ext/ice/cpp/src/Ice/PluginF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/PluginManagerI.cpp +21 -2
- data/ext/ice/cpp/src/Ice/Process.cpp +25 -19
- data/ext/ice/cpp/src/Ice/ProcessF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/Properties.cpp +11 -5
- data/ext/ice/cpp/src/Ice/PropertiesAdmin.cpp +39 -33
- data/ext/ice/cpp/src/Ice/PropertiesAdminI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/PropertiesAdminI.h +1 -1
- data/ext/ice/cpp/src/Ice/PropertiesF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/PropertiesI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/PropertiesI.h +1 -1
- data/ext/ice/cpp/src/Ice/PropertyNames.cpp +12 -8
- data/ext/ice/cpp/src/Ice/PropertyNames.h +2 -2
- data/ext/ice/cpp/src/Ice/Protocol.cpp +7 -7
- data/ext/ice/cpp/src/Ice/ProtocolInstance.cpp +9 -6
- data/ext/ice/cpp/src/Ice/ProtocolInstance.h +25 -7
- data/ext/ice/cpp/src/Ice/ProtocolInstanceF.h +1 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacade.h +1 -1
- data/ext/ice/cpp/src/Ice/ProtocolPluginFacadeF.h +1 -1
- data/ext/ice/cpp/src/Ice/Proxy.cpp +32 -13
- data/ext/ice/cpp/src/Ice/ProxyFactory.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ProxyFactory.h +1 -1
- data/ext/ice/cpp/src/Ice/Reference.cpp +101 -86
- data/ext/ice/cpp/src/Ice/Reference.h +16 -9
- data/ext/ice/cpp/src/Ice/ReferenceFactory.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ReferenceFactory.h +1 -1
- data/ext/ice/cpp/src/Ice/ReferenceFactoryF.h +1 -1
- data/ext/ice/cpp/src/Ice/RegisterPlugins.cpp +28 -0
- data/ext/ice/cpp/src/Ice/RegisterPlugins.h +25 -0
- data/ext/ice/cpp/src/Ice/RemoteLogger.cpp +92 -86
- data/ext/ice/cpp/src/Ice/ReplyStatus.h +1 -1
- data/ext/ice/cpp/src/Ice/RequestHandler.cpp +1 -1
- data/ext/ice/cpp/src/Ice/RequestHandler.h +4 -8
- data/ext/ice/cpp/src/Ice/RequestHandlerFactory.cpp +24 -16
- data/ext/ice/cpp/src/Ice/RequestHandlerFactory.h +5 -4
- data/ext/ice/cpp/src/Ice/ResponseHandler.cpp +1 -1
- data/ext/ice/cpp/src/Ice/ResponseHandler.h +3 -3
- data/ext/ice/cpp/src/Ice/RetryQueue.cpp +16 -5
- data/ext/ice/cpp/src/Ice/RetryQueue.h +3 -2
- data/ext/ice/cpp/src/Ice/RetryQueueF.h +1 -1
- data/ext/ice/cpp/src/Ice/Router.cpp +27 -21
- data/ext/ice/cpp/src/Ice/RouterF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/RouterInfo.cpp +1 -1
- data/ext/ice/cpp/src/Ice/RouterInfo.h +1 -1
- data/ext/ice/cpp/src/Ice/RouterInfoF.h +1 -1
- data/ext/ice/cpp/src/Ice/Selector.cpp +480 -1
- data/ext/ice/cpp/src/Ice/Selector.h +130 -1
- data/ext/ice/cpp/src/Ice/ServantLocator.cpp +11 -5
- data/ext/ice/cpp/src/Ice/ServantLocatorF.cpp +10 -4
- data/ext/ice/cpp/src/Ice/ServantManager.cpp +29 -23
- data/ext/ice/cpp/src/Ice/ServantManager.h +1 -1
- data/ext/ice/cpp/src/Ice/SharedContext.h +1 -1
- data/ext/ice/cpp/src/Ice/SliceChecksumDict.cpp +10 -4
- data/ext/ice/cpp/src/Ice/SliceChecksums.cpp +1 -1
- data/ext/ice/cpp/src/Ice/SlicedData.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Stream.cpp +1 -1
- data/ext/ice/cpp/src/Ice/StreamI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/StreamI.h +1 -1
- data/ext/ice/cpp/src/Ice/StreamSocket.cpp +30 -22
- data/ext/ice/cpp/src/Ice/StreamSocket.h +7 -4
- data/ext/ice/cpp/src/Ice/StringConverterPlugin.cpp +1 -1
- data/ext/ice/cpp/src/Ice/SysLoggerI.cpp +1 -1
- data/ext/ice/cpp/src/Ice/SysLoggerI.h +1 -1
- data/ext/ice/cpp/src/Ice/TcpAcceptor.cpp +8 -8
- data/ext/ice/cpp/src/Ice/TcpAcceptor.h +1 -1
- data/ext/ice/cpp/src/Ice/TcpConnector.cpp +1 -1
- data/ext/ice/cpp/src/Ice/TcpConnector.h +1 -1
- data/ext/ice/cpp/src/Ice/TcpEndpointI.cpp +21 -38
- data/ext/ice/cpp/src/Ice/TcpEndpointI.h +5 -6
- data/ext/ice/cpp/src/Ice/TcpTransceiver.cpp +29 -4
- data/ext/ice/cpp/src/Ice/TcpTransceiver.h +7 -2
- data/ext/ice/cpp/src/Ice/ThreadPool.cpp +2 -2
- data/ext/ice/cpp/src/Ice/ThreadPool.h +1 -1
- data/ext/ice/cpp/src/Ice/TraceLevels.cpp +2 -2
- data/ext/ice/cpp/src/Ice/TraceLevels.h +1 -1
- data/ext/ice/cpp/src/Ice/TraceLevelsF.h +1 -1
- data/ext/ice/cpp/src/Ice/TraceUtil.cpp +16 -7
- data/ext/ice/cpp/src/Ice/TraceUtil.h +1 -1
- data/ext/ice/cpp/src/Ice/Transceiver.cpp +1 -1
- data/ext/ice/cpp/src/Ice/Transceiver.h +2 -1
- data/ext/ice/cpp/src/Ice/TransceiverF.h +1 -1
- data/ext/ice/cpp/src/Ice/UdpConnector.cpp +1 -1
- data/ext/ice/cpp/src/Ice/UdpConnector.h +1 -1
- data/ext/ice/cpp/src/Ice/UdpEndpointI.cpp +13 -39
- data/ext/ice/cpp/src/Ice/UdpEndpointI.h +2 -5
- data/ext/ice/cpp/src/Ice/UdpTransceiver.cpp +46 -10
- data/ext/ice/cpp/src/Ice/UdpTransceiver.h +3 -2
- data/ext/ice/cpp/src/Ice/Version.cpp +12 -6
- data/ext/ice/cpp/src/Ice/WSAcceptor.cpp +1 -1
- data/ext/ice/cpp/src/Ice/WSAcceptor.h +1 -1
- data/ext/ice/cpp/src/Ice/WSConnector.cpp +1 -1
- data/ext/ice/cpp/src/Ice/WSConnector.h +1 -1
- data/ext/ice/cpp/src/Ice/WSEndpoint.cpp +6 -38
- data/ext/ice/cpp/src/Ice/WSEndpoint.h +12 -1
- data/ext/ice/cpp/src/Ice/WSTransceiver.cpp +31 -35
- data/ext/ice/cpp/src/Ice/WSTransceiver.h +13 -1
- data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.cpp +66 -60
- data/ext/ice/cpp/src/IceDiscovery/IceDiscovery.h +106 -100
- data/ext/ice/cpp/src/IceDiscovery/LocatorI.cpp +1 -1
- data/ext/ice/cpp/src/IceDiscovery/LocatorI.h +1 -1
- data/ext/ice/cpp/src/IceDiscovery/LookupI.cpp +76 -36
- data/ext/ice/cpp/src/IceDiscovery/LookupI.h +1 -1
- data/ext/ice/cpp/src/IceDiscovery/PluginI.cpp +19 -6
- data/ext/ice/cpp/src/IceDiscovery/PluginI.h +1 -1
- data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.cpp +452 -0
- data/ext/ice/cpp/src/IceLocatorDiscovery/IceLocatorDiscovery.h +732 -0
- data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.cpp +520 -0
- data/ext/ice/cpp/src/IceLocatorDiscovery/PluginI.h +36 -0
- data/ext/ice/cpp/src/IceSSL/AcceptorI.cpp +8 -8
- data/ext/ice/cpp/src/IceSSL/AcceptorI.h +1 -1
- data/ext/ice/cpp/src/IceSSL/Certificate.cpp +49 -47
- data/ext/ice/cpp/src/IceSSL/ConnectionInfo.cpp +13 -5
- data/ext/ice/cpp/src/IceSSL/ConnectorI.cpp +1 -1
- data/ext/ice/cpp/src/IceSSL/ConnectorI.h +1 -1
- data/ext/ice/cpp/src/IceSSL/EndpointI.cpp +10 -38
- data/ext/ice/cpp/src/IceSSL/EndpointI.h +4 -3
- data/ext/ice/cpp/src/IceSSL/EndpointInfo.cpp +13 -5
- data/ext/ice/cpp/src/IceSSL/Instance.cpp +2 -2
- data/ext/ice/cpp/src/IceSSL/Instance.h +1 -1
- data/ext/ice/cpp/src/IceSSL/InstanceF.h +1 -1
- data/ext/ice/cpp/src/IceSSL/OpenSSLEngine.cpp +107 -111
- data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.cpp +130 -47
- data/ext/ice/cpp/src/IceSSL/OpenSSLTransceiverI.h +11 -3
- data/ext/ice/cpp/src/IceSSL/PluginI.cpp +8 -14
- data/ext/ice/cpp/src/IceSSL/PluginI.h +1 -1
- data/ext/ice/cpp/src/IceSSL/RFC2253.cpp +1 -1
- data/ext/ice/cpp/src/IceSSL/RFC2253.h +1 -1
- data/ext/ice/cpp/src/IceSSL/SChannelEngine.cpp +238 -156
- data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.cpp +93 -66
- data/ext/ice/cpp/src/IceSSL/SChannelTransceiverI.h +7 -3
- data/ext/ice/cpp/src/IceSSL/SSLEngine.cpp +2 -2
- data/ext/ice/cpp/src/IceSSL/SSLEngine.h +32 -35
- data/ext/ice/cpp/src/IceSSL/SSLEngineF.h +1 -1
- data/ext/ice/cpp/src/IceSSL/SecureTransportEngine.cpp +244 -360
- data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.cpp +59 -29
- data/ext/ice/cpp/src/IceSSL/SecureTransportTransceiverI.h +8 -4
- data/ext/ice/cpp/src/IceSSL/TrustManager.cpp +1 -1
- data/ext/ice/cpp/src/IceSSL/TrustManager.h +1 -1
- data/ext/ice/cpp/src/IceSSL/TrustManagerF.h +1 -1
- data/ext/ice/cpp/src/IceSSL/Util.cpp +427 -620
- data/ext/ice/cpp/src/IceSSL/Util.h +72 -15
- data/ext/ice/cpp/src/IceUtil/ArgVector.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/ArgVector.h +1 -1
- data/ext/ice/cpp/src/IceUtil/Cond.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/ConvertUTF.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/ConvertUTF.h +1 -1
- data/ext/ice/cpp/src/IceUtil/CountDownLatch.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/CtrlCHandler.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Exception.cpp +105 -96
- data/ext/ice/cpp/src/IceUtil/FileUtil.cpp +2 -1
- data/ext/ice/cpp/src/IceUtil/FileUtil.h +9 -1
- data/ext/ice/cpp/src/IceUtil/InputUtil.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/MutexProtocol.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Options.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/OutputUtil.cpp +12 -25
- data/ext/ice/cpp/src/IceUtil/Random.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/RecMutex.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/SHA1.cpp +72 -10
- data/ext/ice/cpp/src/IceUtil/Shared.cpp +3 -132
- data/ext/ice/cpp/src/IceUtil/StopWatch.h +1 -1
- data/ext/ice/cpp/src/IceUtil/StringConverter.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/StringUtil.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Thread.cpp +16 -1
- data/ext/ice/cpp/src/IceUtil/ThreadException.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Time.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Timer.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/UUID.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Unicode.cpp +1 -1
- data/ext/ice/cpp/src/IceUtil/Unicode.h +1 -1
- data/ext/ice/cpp/src/Slice/CPlusPlusUtil.cpp +62 -55
- data/ext/ice/cpp/src/Slice/Checksum.cpp +1 -1
- data/ext/ice/cpp/src/Slice/CsUtil.cpp +8 -29
- data/ext/ice/cpp/src/Slice/DotNetNames.cpp +1 -1
- data/ext/ice/cpp/src/Slice/FileTracker.cpp +1 -1
- data/ext/ice/cpp/src/Slice/Grammar.cpp +1 -1
- data/ext/ice/cpp/src/Slice/GrammarUtil.h +1 -1
- data/ext/ice/cpp/src/Slice/JavaUtil.cpp +145 -172
- data/ext/ice/cpp/src/Slice/MD5.cpp +1 -1
- data/ext/ice/cpp/src/Slice/MD5.h +1 -1
- data/ext/ice/cpp/src/Slice/ObjCUtil.cpp +1310 -0
- data/ext/ice/cpp/src/Slice/PHPUtil.cpp +1 -1
- data/ext/ice/cpp/src/Slice/Parser.cpp +65 -187
- data/ext/ice/cpp/src/Slice/Preprocessor.cpp +61 -9
- data/ext/ice/cpp/src/Slice/Python.cpp +36 -3
- data/ext/ice/cpp/src/Slice/PythonUtil.cpp +10 -10
- data/ext/ice/cpp/src/Slice/Ruby.cpp +34 -3
- data/ext/ice/cpp/src/Slice/RubyUtil.cpp +8 -7
- data/ext/ice/cpp/src/Slice/Scanner.cpp +1 -1
- data/ext/ice/cpp/src/Slice/Util.cpp +137 -30
- data/ext/ice/mcpp/LICENSE +29 -0
- data/ext/ice/mcpp/Makefile +60 -0
- data/ext/ice/mcpp/Makefile.mak +46 -0
- data/ext/ice/mcpp/README.md +30 -0
- data/ext/ice/mcpp/config.h +89 -0
- data/ext/ice/mcpp/configed.H +1 -146
- data/ext/ice/mcpp/directive.c +115 -410
- data/ext/ice/mcpp/eval.c +38 -377
- data/ext/ice/mcpp/expand.c +155 -852
- data/ext/ice/mcpp/internal.H +10 -44
- data/ext/ice/mcpp/main.c +6 -345
- data/ext/ice/mcpp/mbchar.c +17 -654
- data/ext/ice/mcpp/mcpp.gyp +62 -0
- data/ext/ice/mcpp/support.c +116 -943
- data/ext/ice/mcpp/system.H +0 -23
- data/ext/ice/mcpp/system.c +81 -2321
- data/ice.gemspec +3 -4
- data/lib/Glacier2.rb +1 -1
- data/lib/Glacier2/Metrics.rb +2 -2
- data/lib/Glacier2/PermissionsVerifier.rb +2 -2
- data/lib/Glacier2/PermissionsVerifierF.rb +2 -2
- data/lib/Glacier2/Router.rb +2 -2
- data/lib/Glacier2/RouterF.rb +2 -2
- data/lib/Glacier2/SSLInfo.rb +2 -2
- data/lib/Glacier2/Session.rb +2 -2
- data/lib/Ice.rb +1 -1
- data/lib/Ice/BuiltinSequences.rb +2 -2
- data/lib/Ice/Communicator.rb +2 -2
- data/lib/Ice/CommunicatorF.rb +2 -2
- data/lib/Ice/Connection.rb +26 -14
- data/lib/Ice/ConnectionF.rb +2 -2
- data/lib/Ice/Current.rb +2 -2
- data/lib/Ice/Endpoint.rb +4 -2
- data/lib/Ice/EndpointF.rb +2 -2
- data/lib/Ice/EndpointTypes.rb +2 -2
- data/lib/Ice/FacetMap.rb +2 -2
- data/lib/Ice/Identity.rb +2 -2
- data/lib/Ice/ImplicitContext.rb +2 -2
- data/lib/Ice/ImplicitContextF.rb +2 -2
- data/lib/Ice/Instrumentation.rb +2 -2
- data/lib/Ice/InstrumentationF.rb +2 -2
- data/lib/Ice/LocalException.rb +2 -2
- data/lib/Ice/Locator.rb +2 -2
- data/lib/Ice/LocatorF.rb +2 -2
- data/lib/Ice/Logger.rb +2 -2
- data/lib/Ice/LoggerF.rb +2 -2
- data/lib/Ice/Metrics.rb +2 -2
- data/lib/Ice/ObjectAdapterF.rb +2 -2
- data/lib/Ice/ObjectFactory.rb +2 -2
- data/lib/Ice/ObjectFactoryF.rb +2 -2
- data/lib/Ice/Plugin.rb +2 -2
- data/lib/Ice/PluginF.rb +2 -2
- data/lib/Ice/Process.rb +2 -2
- data/lib/Ice/ProcessF.rb +2 -2
- data/lib/Ice/Properties.rb +2 -2
- data/lib/Ice/PropertiesAdmin.rb +2 -2
- data/lib/Ice/PropertiesF.rb +2 -2
- data/lib/Ice/Router.rb +2 -2
- data/lib/Ice/RouterF.rb +2 -2
- data/lib/Ice/SliceChecksumDict.rb +2 -2
- data/lib/Ice/Version.rb +2 -2
- data/lib/IceBox.rb +1 -1
- data/lib/IceBox/IceBox.rb +2 -2
- data/lib/IceGrid.rb +1 -1
- data/lib/IceGrid/Admin.rb +2 -2
- data/lib/IceGrid/Descriptor.rb +2 -2
- data/lib/IceGrid/Exception.rb +2 -2
- data/lib/IceGrid/FileParser.rb +2 -2
- data/lib/IceGrid/Locator.rb +2 -2
- data/lib/IceGrid/Observer.rb +2 -2
- data/lib/IceGrid/Query.rb +2 -2
- data/lib/IceGrid/Registry.rb +2 -2
- data/lib/IceGrid/Session.rb +2 -2
- data/lib/IceGrid/UserAccountMapper.rb +2 -2
- data/lib/IcePatch2.rb +1 -1
- data/lib/IcePatch2/FileInfo.rb +52 -2
- data/lib/IcePatch2/FileServer.rb +33 -4
- data/lib/IceStorm.rb +1 -1
- data/lib/IceStorm/IceStorm.rb +2 -2
- data/lib/IceStorm/Metrics.rb +2 -2
- data/slice/Freeze/BackgroundSaveEvictor.ice +2 -2
- data/slice/Freeze/CatalogData.ice +2 -2
- data/slice/Freeze/Connection.ice +2 -2
- data/slice/Freeze/ConnectionF.ice +2 -2
- data/slice/Freeze/DB.ice +2 -2
- data/slice/Freeze/Evictor.ice +2 -2
- data/slice/Freeze/EvictorF.ice +2 -2
- data/slice/Freeze/EvictorStorage.ice +2 -2
- data/slice/Freeze/Exception.ice +2 -2
- data/slice/Freeze/Transaction.ice +2 -2
- data/slice/Freeze/TransactionalEvictor.ice +2 -2
- data/slice/Glacier2/Metrics.ice +7 -6
- data/slice/Glacier2/PermissionsVerifier.ice +4 -3
- data/slice/Glacier2/PermissionsVerifierF.ice +3 -2
- data/slice/Glacier2/Router.ice +4 -3
- data/slice/Glacier2/RouterF.ice +3 -2
- data/slice/Glacier2/SSLInfo.ice +3 -2
- data/slice/Glacier2/Session.ice +12 -11
- data/slice/Ice/BuiltinSequences.ice +4 -3
- data/slice/Ice/Communicator.ice +22 -25
- data/slice/Ice/CommunicatorF.ice +3 -2
- data/slice/Ice/Connection.ice +39 -11
- data/slice/Ice/ConnectionF.ice +3 -2
- data/slice/Ice/Current.ice +4 -3
- data/slice/Ice/Endpoint.ice +11 -3
- data/slice/Ice/EndpointF.ice +3 -2
- data/slice/Ice/EndpointTypes.ice +3 -2
- data/slice/Ice/FacetMap.ice +3 -2
- data/slice/Ice/Identity.ice +3 -2
- data/slice/Ice/ImplicitContext.ice +3 -2
- data/slice/Ice/ImplicitContextF.ice +3 -2
- data/slice/Ice/Instrumentation.ice +4 -2
- data/slice/Ice/InstrumentationF.ice +4 -2
- data/slice/Ice/LocalException.ice +29 -10
- data/slice/Ice/Locator.ice +5 -3
- data/slice/Ice/LocatorF.ice +3 -2
- data/slice/Ice/Logger.ice +3 -2
- data/slice/Ice/LoggerF.ice +3 -2
- data/slice/Ice/Metrics.ice +15 -14
- data/slice/Ice/ObjectAdapter.ice +5 -4
- data/slice/Ice/ObjectAdapterF.ice +3 -2
- data/slice/Ice/ObjectFactory.ice +3 -2
- data/slice/Ice/ObjectFactoryF.ice +3 -2
- data/slice/Ice/Plugin.ice +3 -2
- data/slice/Ice/PluginF.ice +3 -2
- data/slice/Ice/Process.ice +3 -2
- data/slice/Ice/ProcessF.ice +3 -2
- data/slice/Ice/Properties.ice +3 -2
- data/slice/Ice/PropertiesAdmin.ice +3 -2
- data/slice/Ice/PropertiesF.ice +3 -2
- data/slice/Ice/RemoteLogger.ice +3 -2
- data/slice/Ice/Router.ice +3 -2
- data/slice/Ice/RouterF.ice +3 -2
- data/slice/Ice/ServantLocator.ice +3 -2
- data/slice/Ice/ServantLocatorF.ice +3 -2
- data/slice/Ice/SliceChecksumDict.ice +3 -2
- data/slice/Ice/Version.ice +3 -2
- data/slice/IceBox/IceBox.ice +2 -2
- data/slice/IceDiscovery/IceDiscovery.ice +2 -2
- data/slice/IceGrid/Admin.ice +49 -48
- data/slice/IceGrid/Descriptor.ice +3 -2
- data/slice/IceGrid/Exception.ice +6 -5
- data/slice/IceGrid/FileParser.ice +4 -3
- data/slice/IceGrid/Locator.ice +4 -3
- data/slice/IceGrid/Observer.ice +28 -27
- data/slice/IceGrid/PluginFacade.ice +3 -2
- data/slice/IceGrid/Query.ice +3 -2
- data/slice/IceGrid/Registry.ice +4 -3
- data/slice/IceGrid/Session.ice +9 -8
- data/slice/IceGrid/UserAccountMapper.ice +4 -3
- data/slice/{IceGrid/Discovery.ice → IceLocatorDiscovery/IceLocatorDiscovery.ice} +12 -14
- data/slice/IcePatch2/FileInfo.ice +31 -2
- data/slice/IcePatch2/FileServer.ice +63 -5
- data/slice/IceSSL/ConnectionInfo.ice +17 -2
- data/slice/IceSSL/EndpointInfo.ice +21 -3
- data/slice/IceStorm/IceStorm.ice +3 -2
- data/slice/IceStorm/Metrics.ice +4 -3
- metadata +27 -23
- data/ext/ice/cpp/include/Ice/Makefile +0 -26
- data/ext/ice/cpp/include/IceSSL/Makefile +0 -26
- data/ext/ice/cpp/include/IceUtil/Makefile +0 -26
- data/ext/ice/cpp/include/Slice/Makefile +0 -26
- data/ext/ice/cpp/src/Ice/Application.cpp +0 -760
- data/ext/ice/cpp/src/Ice/EventLoggerMsg.h +0 -53
- data/ext/ice/cpp/src/Ice/Makefile +0 -190
- data/ext/ice/cpp/src/Ice/Service.cpp +0 -1897
- data/ext/ice/cpp/src/IceDiscovery/Makefile +0 -61
- data/ext/ice/cpp/src/IceSSL/Makefile +0 -82
- data/ext/ice/cpp/src/IceUtil/Makefile +0 -68
- data/ext/ice/cpp/src/Slice/Makefile +0 -65
- data/ext/ice/mcpp/config.h.Darwin +0 -227
- data/ext/ice/mcpp/config.h.Linux +0 -227
- data/ext/ice/mcpp/config.h.MINGW +0 -7
data/ext/ice/mcpp/eval.c
CHANGED
|
@@ -35,12 +35,8 @@
|
|
|
35
35
|
* Some routines are used also to evaluate the value of numerical tokens.
|
|
36
36
|
*/
|
|
37
37
|
|
|
38
|
-
#if PREPROCESSED
|
|
39
|
-
#include "mcpp.H"
|
|
40
|
-
#else
|
|
41
38
|
#include "system.H"
|
|
42
39
|
#include "internal.H"
|
|
43
|
-
#endif
|
|
44
40
|
|
|
45
41
|
typedef struct optab {
|
|
46
42
|
char op; /* Operator */
|
|
@@ -66,10 +62,6 @@ static expr_t eval_unsigned( VAL_SIGN ** valpp, uexpr_t v1u, uexpr_t v2u
|
|
|
66
62
|
static void overflow( const char * op_name, VAL_SIGN ** valpp
|
|
67
63
|
, int ll_overflow);
|
|
68
64
|
/* Diagnose overflow of expr. */
|
|
69
|
-
static int do_sizeof( void);
|
|
70
|
-
/* Evaluate sizeof (type) */
|
|
71
|
-
static int look_type( int typecode);
|
|
72
|
-
/* Look for type of the name */
|
|
73
65
|
static void dump_val( const char * msg, const VAL_SIGN * valp);
|
|
74
66
|
/* Print value of an operand */
|
|
75
67
|
static void dump_stack( const OPTAB * opstack, const OPTAB * opp
|
|
@@ -140,7 +132,7 @@ static int skip = 0; /* 3-way signal of skipping expr*/
|
|
|
140
132
|
static const char * const non_eval
|
|
141
133
|
= " (in non-evaluated sub-expression)"; /* _W8_ */
|
|
142
134
|
|
|
143
|
-
#if HAVE_LONG_LONG
|
|
135
|
+
#if HAVE_LONG_LONG
|
|
144
136
|
static int w_level = 1; /* warn_level at overflow of long */
|
|
145
137
|
#else
|
|
146
138
|
static int w_level = 2;
|
|
@@ -222,54 +214,14 @@ typedef struct types {
|
|
|
222
214
|
#define ANYINT (T_CHAR | T_SHORT | T_INT | T_LONG)
|
|
223
215
|
#endif
|
|
224
216
|
|
|
225
|
-
static const TYPES basic_types[] = {
|
|
226
|
-
{ T_CHAR, "char", ANYFLOAT | ANYINT },
|
|
227
|
-
{ T_SHORT, "short", ANYFLOAT | ANYINT },
|
|
228
|
-
{ T_INT, "int", ANYFLOAT | T_CHAR | T_INT },
|
|
229
|
-
{ T_LONG, "long", ANYFLOAT | ANYINT },
|
|
230
|
-
#if HAVE_LONG_LONG
|
|
231
|
-
#if HOST_COMPILER == BORLANDC
|
|
232
|
-
{ T_LONGLONG, "__int64", ANYFLOAT | ANYINT },
|
|
233
|
-
#else
|
|
234
|
-
{ T_LONGLONG, "long long", ANYFLOAT | ANYINT },
|
|
235
|
-
#endif
|
|
236
|
-
#endif
|
|
237
|
-
{ T_FLOAT, "float", ANYFLOAT | ANYINT | ANYSIGN },
|
|
238
|
-
{ T_DOUBLE, "double", ANYFLOAT | ANYINT | ANYSIGN },
|
|
239
|
-
{ T_LONGDOUBLE, "long double", ANYFLOAT | ANYINT | ANYSIGN },
|
|
240
|
-
{ T_SIGNED, "signed", ANYFLOAT | ANYINT | ANYSIGN },
|
|
241
|
-
{ T_UNSIGNED, "unsigned", ANYFLOAT | ANYINT | ANYSIGN },
|
|
242
|
-
{ 0, NULL, 0 } /* Signal end */
|
|
243
|
-
};
|
|
244
|
-
|
|
245
|
-
/*
|
|
246
|
-
* In this table, T_FPTR (pointer to function) should be placed last.
|
|
247
|
-
*/
|
|
248
|
-
static const SIZES size_table[] = {
|
|
249
|
-
{ T_CHAR, S_CHAR, S_PCHAR }, /* char */
|
|
250
|
-
{ T_SHORT, S_SINT, S_PSINT }, /* short int */
|
|
251
|
-
{ T_INT, S_INT, S_PINT }, /* int */
|
|
252
|
-
{ T_LONG, S_LINT, S_PLINT }, /* long */
|
|
253
|
-
#if HAVE_LONG_LONG
|
|
254
|
-
{ T_LONGLONG, S_LLINT, S_PLLINT }, /* long long */
|
|
255
|
-
#endif
|
|
256
|
-
{ T_FLOAT, S_FLOAT, S_PFLOAT }, /* float */
|
|
257
|
-
{ T_DOUBLE, S_DOUBLE, S_PDOUBLE }, /* double */
|
|
258
|
-
{ T_LONGDOUBLE, S_LDOUBLE, S_PLDOUBLE }, /* long double */
|
|
259
|
-
{ T_FPTR, 0, S_PFPTR }, /* int (*()) */
|
|
260
|
-
{ 0, 0, 0 } /* End of table */
|
|
261
|
-
};
|
|
262
|
-
|
|
263
217
|
#define is_binary(op) (FIRST_BINOP <= op && op <= LAST_BINOP)
|
|
264
218
|
#define is_unary(op) (FIRST_UNOP <= op && op <= LAST_UNOP)
|
|
265
219
|
|
|
266
220
|
|
|
267
|
-
#if MCPP_LIB
|
|
268
221
|
void init_eval( void)
|
|
269
222
|
{
|
|
270
223
|
skip = 0;
|
|
271
224
|
}
|
|
272
|
-
#endif
|
|
273
225
|
|
|
274
226
|
expr_t eval_if( void)
|
|
275
227
|
/*
|
|
@@ -358,13 +310,13 @@ expr_t eval_if( void)
|
|
|
358
310
|
if (mcpp_debug & EXPRESSION)
|
|
359
311
|
mcpp_fprintf( DBG
|
|
360
312
|
, "op %s, prec %d, stacked op %s, prec %d, skip %d\n"
|
|
361
|
-
, opname[ op], prec, opname[ opp->op], opp->prec, opp->skip);
|
|
313
|
+
, opname[ op], prec, opname[ (int)opp->op], opp->prec, opp->skip);
|
|
362
314
|
|
|
363
315
|
/* Stack coming sub-expression of higher precedence. */
|
|
364
316
|
if (opp->prec < prec) {
|
|
365
317
|
if (op == OP_LPA) {
|
|
366
318
|
prec = OP_RPA_PREC;
|
|
367
|
-
if (
|
|
319
|
+
if ((warn_level & 4)
|
|
368
320
|
&& ++parens == std_limits.exp_nest + 1)
|
|
369
321
|
cwarn(
|
|
370
322
|
"More than %.0s%ld nesting of parens" /* _W4_ */
|
|
@@ -448,7 +400,7 @@ expr_t eval_if( void)
|
|
|
448
400
|
if (opp->op != OP_QUE) { /* Matches ? on stack? */
|
|
449
401
|
cerror(
|
|
450
402
|
"Misplaced \":\", previous operator is \"%s\"" /* _E_ */
|
|
451
|
-
, opname[opp->op], 0L, NULL);
|
|
403
|
+
, opname[(int)opp->op], 0L, NULL);
|
|
452
404
|
return 0L;
|
|
453
405
|
}
|
|
454
406
|
/* Evaluate op1. Fall through */
|
|
@@ -509,14 +461,14 @@ static int eval_lex( void)
|
|
|
509
461
|
return OP_EOE; /* End of expression */
|
|
510
462
|
}
|
|
511
463
|
token_type = get_unexpandable( c, warn);
|
|
512
|
-
if (
|
|
464
|
+
if (macro_line == MACRO_ERROR)
|
|
513
465
|
return OP_FAIL; /* Unterminated macro call */
|
|
514
466
|
if (token_type == NO_TOKEN)
|
|
515
467
|
return OP_EOE; /* Only macro(s) expanding to 0-token */
|
|
516
468
|
|
|
517
469
|
switch (token_type) {
|
|
518
470
|
case NAM:
|
|
519
|
-
if (
|
|
471
|
+
if (str_eq( identifier, "defined")) { /* defined name */
|
|
520
472
|
c1 = c = skip_ws();
|
|
521
473
|
if (c == '(') /* Allow defined (name) */
|
|
522
474
|
c = skip_ws();
|
|
@@ -534,22 +486,6 @@ static int eval_lex( void)
|
|
|
534
486
|
cerror( "Bad defined syntax: %s" /* _E_ */
|
|
535
487
|
, infile->fp ? "" : infile->buffer, 0L, NULL);
|
|
536
488
|
break;
|
|
537
|
-
} else if (cplus_val) {
|
|
538
|
-
if (str_eq( identifier, "true")) {
|
|
539
|
-
ev.val = 1L;
|
|
540
|
-
return VAL;
|
|
541
|
-
} else if (str_eq( identifier, "false")) {
|
|
542
|
-
ev.val = 0L;
|
|
543
|
-
return VAL;
|
|
544
|
-
} else if (mcpp_mode != POST_STD
|
|
545
|
-
&& (openum = id_operator( identifier)) != 0) {
|
|
546
|
-
/* Identifier-like operator in C++98 */
|
|
547
|
-
strcpy( work_buf, identifier);
|
|
548
|
-
return chk_ops();
|
|
549
|
-
}
|
|
550
|
-
} else if (! standard && str_eq( identifier, "sizeof")) {
|
|
551
|
-
/* sizeof hackery */
|
|
552
|
-
return do_sizeof(); /* Gets own routine */
|
|
553
489
|
}
|
|
554
490
|
/*
|
|
555
491
|
* The ANSI C Standard says that an undefined symbol
|
|
@@ -563,11 +499,6 @@ static int eval_lex( void)
|
|
|
563
499
|
return VAL;
|
|
564
500
|
case CHR: /* Character constant */
|
|
565
501
|
case WCHR: /* Wide char constant */
|
|
566
|
-
if (mcpp_mode == POST_STD) {
|
|
567
|
-
cerror( "Can't use a character constant %s" /* _E_ */
|
|
568
|
-
, work_buf, 0L, NULL);
|
|
569
|
-
break;
|
|
570
|
-
}
|
|
571
502
|
valp = eval_char( work_buf); /* 'valp' points 'ev' */
|
|
572
503
|
if (valp->sign == VAL_ERROR)
|
|
573
504
|
break;
|
|
@@ -620,192 +551,6 @@ static int chk_ops( void)
|
|
|
620
551
|
}
|
|
621
552
|
}
|
|
622
553
|
|
|
623
|
-
static int do_sizeof( void)
|
|
624
|
-
/*
|
|
625
|
-
* Process the sizeof (basic type) operation in an #if string.
|
|
626
|
-
* Sets ev.val to the size and returns
|
|
627
|
-
* VAL success
|
|
628
|
-
* OP_FAIL bad parse or something.
|
|
629
|
-
* This routine is never called in STD and POST_STD mode.
|
|
630
|
-
*/
|
|
631
|
-
{
|
|
632
|
-
const char * const no_type = "sizeof: No type specified"; /* _E_ */
|
|
633
|
-
int warn = ! skip || (warn_level & 8);
|
|
634
|
-
int type_end = FALSE;
|
|
635
|
-
int typecode = 0;
|
|
636
|
-
int token_type = NO_TOKEN;
|
|
637
|
-
const SIZES * sizp = NULL;
|
|
638
|
-
|
|
639
|
-
if (get_unexpandable( skip_ws(), warn) != OPE || openum != OP_LPA)
|
|
640
|
-
goto no_good; /* Not '(' */
|
|
641
|
-
|
|
642
|
-
/*
|
|
643
|
-
* Scan off the tokens.
|
|
644
|
-
*/
|
|
645
|
-
|
|
646
|
-
while (! type_end) {
|
|
647
|
-
token_type = get_unexpandable( skip_ws(), warn);
|
|
648
|
-
/* Get next token expanding macros */
|
|
649
|
-
switch (token_type) {
|
|
650
|
-
case OPE:
|
|
651
|
-
if (openum == OP_LPA) { /* thing (*)() func ptr */
|
|
652
|
-
if (get_unexpandable( skip_ws(), warn) == OPE
|
|
653
|
-
&& openum == OP_MUL
|
|
654
|
-
&& get_unexpandable( skip_ws(), warn) == OPE
|
|
655
|
-
&& openum == OP_RPA) { /* (*) */
|
|
656
|
-
if (get_unexpandable( skip_ws(), warn) != OPE
|
|
657
|
-
|| openum != OP_LPA
|
|
658
|
-
|| get_unexpandable( skip_ws(), warn) != OPE
|
|
659
|
-
|| openum != OP_RPA) /* Not () */
|
|
660
|
-
goto no_good;
|
|
661
|
-
typecode |= T_FPTR; /* Function pointer */
|
|
662
|
-
} else { /* Junk is an error */
|
|
663
|
-
goto no_good;
|
|
664
|
-
}
|
|
665
|
-
} else { /* '*' or ')' */
|
|
666
|
-
type_end = TRUE;
|
|
667
|
-
}
|
|
668
|
-
break;
|
|
669
|
-
case NAM: /* Look for type comb. */
|
|
670
|
-
if ((typecode = look_type( typecode)) == 0)
|
|
671
|
-
return OP_FAIL; /* Illegal type or comb.*/
|
|
672
|
-
break;
|
|
673
|
-
default: goto no_good; /* Illegal token */
|
|
674
|
-
}
|
|
675
|
-
} /* End of while */
|
|
676
|
-
|
|
677
|
-
/*
|
|
678
|
-
* We are at the end of the type scan. Chew off '*' if necessary.
|
|
679
|
-
*/
|
|
680
|
-
if (token_type == OPE) {
|
|
681
|
-
if (openum == OP_MUL) { /* '*' */
|
|
682
|
-
typecode |= T_PTR;
|
|
683
|
-
if (get_unexpandable( skip_ws(), warn) != OPE)
|
|
684
|
-
goto no_good;
|
|
685
|
-
}
|
|
686
|
-
if (openum == OP_RPA) { /* ')' */
|
|
687
|
-
/*
|
|
688
|
-
* Last syntax check
|
|
689
|
-
* We assume that all function pointers are the same size:
|
|
690
|
-
* sizeof (int (*)()) == sizeof (float (*)())
|
|
691
|
-
* We assume that signed and unsigned don't change the size:
|
|
692
|
-
* sizeof (signed int) == sizeof (unsigned int)
|
|
693
|
-
*/
|
|
694
|
-
if ((typecode & T_FPTR) != 0) { /* Function pointer */
|
|
695
|
-
typecode = T_FPTR | T_PTR;
|
|
696
|
-
} else { /* Var or var * datum */
|
|
697
|
-
typecode &= ~(T_SIGNED | T_UNSIGNED);
|
|
698
|
-
#if HAVE_LONG_LONG
|
|
699
|
-
if ((typecode & (T_SHORT | T_LONG | T_LONGLONG)) != 0)
|
|
700
|
-
#else
|
|
701
|
-
if ((typecode & (T_SHORT | T_LONG)) != 0)
|
|
702
|
-
#endif
|
|
703
|
-
typecode &= ~T_INT;
|
|
704
|
-
}
|
|
705
|
-
if ((typecode & ~T_PTR) == 0) {
|
|
706
|
-
cerror( no_type, NULL, 0L, NULL);
|
|
707
|
-
return OP_FAIL;
|
|
708
|
-
} else {
|
|
709
|
-
/*
|
|
710
|
-
* Exactly one bit (and possibly T_PTR) may be set.
|
|
711
|
-
*/
|
|
712
|
-
for (sizp = size_table; sizp->bits != 0; sizp++) {
|
|
713
|
-
if ((typecode & ~T_PTR) == sizp->bits) {
|
|
714
|
-
ev.val = ((typecode & T_PTR) != 0)
|
|
715
|
-
? sizp->psize : sizp->size;
|
|
716
|
-
break;
|
|
717
|
-
}
|
|
718
|
-
}
|
|
719
|
-
}
|
|
720
|
-
} else {
|
|
721
|
-
goto no_good;
|
|
722
|
-
}
|
|
723
|
-
} else {
|
|
724
|
-
goto no_good;
|
|
725
|
-
}
|
|
726
|
-
|
|
727
|
-
if (mcpp_debug & EXPRESSION) {
|
|
728
|
-
if (sizp)
|
|
729
|
-
mcpp_fprintf( DBG,
|
|
730
|
-
"sizp->bits:0x%x sizp->size:0x%x sizp->psize:0x%x ev.val:0x%lx\n"
|
|
731
|
-
, sizp->bits, sizp->size, sizp->psize
|
|
732
|
-
, (unsigned long) ev.val);
|
|
733
|
-
}
|
|
734
|
-
return VAL;
|
|
735
|
-
|
|
736
|
-
no_good:
|
|
737
|
-
unget_ch();
|
|
738
|
-
cerror( "sizeof: Syntax error", NULL, 0L, NULL); /* _E_ */
|
|
739
|
-
return OP_FAIL;
|
|
740
|
-
}
|
|
741
|
-
|
|
742
|
-
static int look_type(
|
|
743
|
-
int typecode
|
|
744
|
-
)
|
|
745
|
-
{
|
|
746
|
-
const char * const unknown_type
|
|
747
|
-
= "sizeof: Unknown type \"%s\"%.0ld%s"; /* _E_ _W8_ */
|
|
748
|
-
const char * const illeg_comb
|
|
749
|
-
= "sizeof: Illegal type combination with \"%s\"%.0ld%s"; /* _E_ _W8_ */
|
|
750
|
-
int token_type;
|
|
751
|
-
const TYPES * tp;
|
|
752
|
-
|
|
753
|
-
if (str_eq( identifier, "long")) {
|
|
754
|
-
if ((token_type
|
|
755
|
-
= get_unexpandable( skip_ws(), !skip || (warn_level & 8)))
|
|
756
|
-
== NO_TOKEN)
|
|
757
|
-
return typecode;
|
|
758
|
-
if (token_type == NAM) {
|
|
759
|
-
#if HAVE_LONG_LONG
|
|
760
|
-
if (str_eq( identifier, "long")) {
|
|
761
|
-
strcpy( work_buf, "long long");
|
|
762
|
-
goto basic;
|
|
763
|
-
}
|
|
764
|
-
#endif
|
|
765
|
-
if (str_eq( identifier, "double")) {
|
|
766
|
-
strcpy( work_buf, "long double");
|
|
767
|
-
goto basic;
|
|
768
|
-
}
|
|
769
|
-
}
|
|
770
|
-
unget_string( work_buf, NULL); /* Not long long */
|
|
771
|
-
strcpy( work_buf, "long"); /* nor long double */
|
|
772
|
-
}
|
|
773
|
-
|
|
774
|
-
/*
|
|
775
|
-
* Look for this unexpandable token in basic_types.
|
|
776
|
-
*/
|
|
777
|
-
basic:
|
|
778
|
-
for (tp = basic_types; tp->token_name != NULL; tp++) {
|
|
779
|
-
if (str_eq( work_buf, tp->token_name))
|
|
780
|
-
break;
|
|
781
|
-
}
|
|
782
|
-
|
|
783
|
-
if (tp->token_name == NULL) {
|
|
784
|
-
if (! skip) {
|
|
785
|
-
cerror( unknown_type, work_buf, 0L, NULL);
|
|
786
|
-
return 0;
|
|
787
|
-
} else if (warn_level & 8) {
|
|
788
|
-
cwarn( unknown_type, work_buf, 0L, non_eval);
|
|
789
|
-
}
|
|
790
|
-
}
|
|
791
|
-
if ((typecode & tp->excluded) != 0) {
|
|
792
|
-
if (! skip) {
|
|
793
|
-
cerror( illeg_comb, work_buf, 0L, NULL);
|
|
794
|
-
return 0;
|
|
795
|
-
} else if (warn_level & 8) {
|
|
796
|
-
cwarn( illeg_comb, work_buf, 0L, non_eval);
|
|
797
|
-
}
|
|
798
|
-
}
|
|
799
|
-
|
|
800
|
-
if (mcpp_debug & EXPRESSION) {
|
|
801
|
-
if (tp->token_name)
|
|
802
|
-
mcpp_fprintf( DBG,
|
|
803
|
-
"sizeof -- typecode:0x%x tp->token_name:\"%s\" tp->type:0x%x\n"
|
|
804
|
-
, typecode, tp->token_name, tp->type);
|
|
805
|
-
}
|
|
806
|
-
return typecode |= tp->type; /* Or in the type bit */
|
|
807
|
-
}
|
|
808
|
-
|
|
809
554
|
VAL_SIGN * eval_num(
|
|
810
555
|
const char * nump /* Preprocessing number */
|
|
811
556
|
)
|
|
@@ -833,10 +578,6 @@ VAL_SIGN * eval_num(
|
|
|
833
578
|
"of (unsigned) long";
|
|
834
579
|
const char * const ll_suffix =
|
|
835
580
|
"LL suffix is used in other than C99 mode \"%s\"%.0ld%s"; /* _W1_ _W2_ _W8_ */
|
|
836
|
-
#if COMPILER == MSC || COMPILER == BORLANDC
|
|
837
|
-
const char * const i64_suffix =
|
|
838
|
-
"I64 suffix is used in other than C99 mode \"%s\"%.0ld%s"; /* _W2_ _W8_ */
|
|
839
|
-
#endif
|
|
840
581
|
int llflag = FALSE;
|
|
841
582
|
int erange_long = FALSE;
|
|
842
583
|
#endif
|
|
@@ -876,7 +617,7 @@ VAL_SIGN * eval_num(
|
|
|
876
617
|
erange = TRUE;
|
|
877
618
|
}
|
|
878
619
|
#if HAVE_LONG_LONG
|
|
879
|
-
if (
|
|
620
|
+
if (v1 > ULONGMAX)
|
|
880
621
|
/* Overflow of long or unsigned long */
|
|
881
622
|
erange_long = TRUE;
|
|
882
623
|
#endif
|
|
@@ -896,7 +637,7 @@ VAL_SIGN * eval_num(
|
|
|
896
637
|
goto num_err;
|
|
897
638
|
} else if (lflag) {
|
|
898
639
|
llflag = TRUE;
|
|
899
|
-
if (
|
|
640
|
+
if (((! skip && (warn_level & w_level))
|
|
900
641
|
|| (skip && (warn_level & 8))))
|
|
901
642
|
cwarn( ll_suffix, nump, 0L, skip ? non_eval : NULL);
|
|
902
643
|
} else {
|
|
@@ -911,44 +652,25 @@ VAL_SIGN * eval_num(
|
|
|
911
652
|
}
|
|
912
653
|
c = *cp++;
|
|
913
654
|
}
|
|
914
|
-
#if HAVE_LONG_LONG && (COMPILER == MSC || COMPILER == BORLANDC)
|
|
915
|
-
if (tolower( c) == 'i') {
|
|
916
|
-
c1 = atoi( cp);
|
|
917
|
-
if (c1 == 64) {
|
|
918
|
-
if (! stdc3 && ((! skip && (warn_level & w_level))
|
|
919
|
-
|| (skip && (warn_level & 8))))
|
|
920
|
-
cwarn( i64_suffix, nump, 0L, skip ? non_eval : NULL);
|
|
921
|
-
cp += 2;
|
|
922
|
-
} else if (c1 == 32 || c1 == 16) {
|
|
923
|
-
cp += 2;
|
|
924
|
-
} else if (c1 == 8) {
|
|
925
|
-
cp++;
|
|
926
|
-
}
|
|
927
|
-
c = *cp++;
|
|
928
|
-
}
|
|
929
|
-
#endif
|
|
930
|
-
|
|
931
655
|
if (c != EOS)
|
|
932
656
|
goto num_err;
|
|
933
657
|
|
|
934
|
-
if (
|
|
935
|
-
|
|
936
|
-
|
|
937
|
-
|
|
938
|
-
ev.sign = (value >= 0L);
|
|
658
|
+
if (uflag) /* If 'U' suffixed, uexpr_t is treated as unsigned */
|
|
659
|
+
ev.sign = UNSIGNED;
|
|
660
|
+
else
|
|
661
|
+
ev.sign = (value >= 0L);
|
|
939
662
|
#if HAVE_LONG_LONG
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
erange_long = TRUE;
|
|
663
|
+
if (value > LONGMAX)
|
|
664
|
+
erange_long = TRUE;
|
|
943
665
|
#endif
|
|
944
|
-
|
|
666
|
+
|
|
945
667
|
|
|
946
668
|
ev.val = value;
|
|
947
669
|
if (erange && (warn_level & 8))
|
|
948
670
|
cwarn( out_of_range, nump, 0L, non_eval);
|
|
949
671
|
#if HAVE_LONG_LONG
|
|
950
672
|
else if (erange_long && ((skip && (warn_level & 8))
|
|
951
|
-
|| (!
|
|
673
|
+
|| (! skip && (warn_level & w_level))))
|
|
952
674
|
cwarn( out_of_range_long, nump, 0L, skip ? non_eval : NULL);
|
|
953
675
|
#endif
|
|
954
676
|
return & ev;
|
|
@@ -982,7 +704,7 @@ static VAL_SIGN * eval_char(
|
|
|
982
704
|
int wide = (*token == 'L');
|
|
983
705
|
int ucn8;
|
|
984
706
|
int i;
|
|
985
|
-
int bits, mbits
|
|
707
|
+
int bits, mbits;
|
|
986
708
|
char * cp = token + 1; /* Character content */
|
|
987
709
|
#if HAVE_LONG_LONG
|
|
988
710
|
const char * const w_out_of_range_long =
|
|
@@ -995,12 +717,8 @@ static VAL_SIGN * eval_char(
|
|
|
995
717
|
#endif
|
|
996
718
|
|
|
997
719
|
bits = CHARBIT;
|
|
998
|
-
|
|
999
|
-
if (
|
|
1000
|
-
mbits = CHARBIT * 4;
|
|
1001
|
-
else
|
|
1002
|
-
mbits = CHARBIT * 2;
|
|
1003
|
-
if (mcpp_mode == STD && wide) { /* Wide character constant */
|
|
720
|
+
mbits = CHARBIT * 4;
|
|
721
|
+
if (wide) { /* Wide character constant */
|
|
1004
722
|
cp++; /* Skip 'L' */
|
|
1005
723
|
bits = mbits;
|
|
1006
724
|
}
|
|
@@ -1012,7 +730,6 @@ static VAL_SIGN * eval_char(
|
|
|
1012
730
|
ev.sign = VAL_ERROR;
|
|
1013
731
|
return & ev;
|
|
1014
732
|
}
|
|
1015
|
-
bits_save = bits;
|
|
1016
733
|
value = cl;
|
|
1017
734
|
|
|
1018
735
|
for (i = 0; *cp != '\'' && *cp != EOS; i++) {
|
|
@@ -1028,12 +745,6 @@ static VAL_SIGN * eval_char(
|
|
|
1028
745
|
ev.sign = VAL_ERROR;
|
|
1029
746
|
return & ev;
|
|
1030
747
|
}
|
|
1031
|
-
#if OK_UCN
|
|
1032
|
-
if (ucn8 == TRUE)
|
|
1033
|
-
bits = u8bits;
|
|
1034
|
-
else
|
|
1035
|
-
bits = bits_save;
|
|
1036
|
-
#endif
|
|
1037
748
|
}
|
|
1038
749
|
tmp = value;
|
|
1039
750
|
value = (value << bits) | cl; /* Multi-char or multi-byte char */
|
|
@@ -1043,11 +754,6 @@ static VAL_SIGN * eval_char(
|
|
|
1043
754
|
else
|
|
1044
755
|
erange = TRUE;
|
|
1045
756
|
}
|
|
1046
|
-
#if HAVE_LONG_LONG
|
|
1047
|
-
if ((mcpp_mode == STD && (! stdc3 && value > ULONGMAX))
|
|
1048
|
-
|| (! standard && value > LONGMAX))
|
|
1049
|
-
erange_long = TRUE;
|
|
1050
|
-
#endif
|
|
1051
757
|
}
|
|
1052
758
|
|
|
1053
759
|
ev.sign = ((expr_t) value >= 0L);
|
|
@@ -1060,7 +766,7 @@ static VAL_SIGN * eval_char(
|
|
|
1060
766
|
cwarn( c_out_of_range, token, 0L, non_eval);
|
|
1061
767
|
#if HAVE_LONG_LONG
|
|
1062
768
|
} else if (erange_long && ((skip && (warn_level & 8))
|
|
1063
|
-
|| (!
|
|
769
|
+
|| (! skip && (warn_level & w_level)))) {
|
|
1064
770
|
if (wide)
|
|
1065
771
|
cwarn( w_out_of_range_long, token, 0L, skip ? non_eval : NULL);
|
|
1066
772
|
else
|
|
@@ -1072,7 +778,7 @@ static VAL_SIGN * eval_char(
|
|
|
1072
778
|
return & ev;
|
|
1073
779
|
|
|
1074
780
|
if ((! skip && (warn_level & 4)) || (skip && (warn_level & 8))) {
|
|
1075
|
-
if (
|
|
781
|
+
if (wide)
|
|
1076
782
|
cwarn(
|
|
1077
783
|
"Multi-character wide character constant %s%.0ld%s isn't portable" /* _W4_ _W8_ */
|
|
1078
784
|
, token, 0L, skip ? non_eval : NULL);
|
|
@@ -1105,10 +811,6 @@ static expr_t eval_one(
|
|
|
1105
811
|
* Returns the value of the character or -1L on error.
|
|
1106
812
|
*/
|
|
1107
813
|
{
|
|
1108
|
-
#if OK_UCN
|
|
1109
|
-
const char * const ucn_malval
|
|
1110
|
-
= "UCN cannot specify the value %.0s\"%08lx\""; /* _E_ _W8_ */
|
|
1111
|
-
#endif
|
|
1112
814
|
const char * const out_of_range
|
|
1113
815
|
= "%s%ld bits can't represent escape sequence '%s'"; /* _E_ _W8_ */
|
|
1114
816
|
uexpr_t value;
|
|
@@ -1144,16 +846,7 @@ static expr_t eval_one(
|
|
|
1144
846
|
return '\t';
|
|
1145
847
|
case 'v':
|
|
1146
848
|
return '\v';
|
|
1147
|
-
#if OK_UCN
|
|
1148
|
-
case 'u': case 'U':
|
|
1149
|
-
if (! stdc2)
|
|
1150
|
-
goto undefined;
|
|
1151
|
-
/* Else Universal character name */
|
|
1152
|
-
/* Fall through */
|
|
1153
|
-
#endif
|
|
1154
849
|
case 'x': /* '\xFF' */
|
|
1155
|
-
if (! standard)
|
|
1156
|
-
goto undefined;
|
|
1157
850
|
digits = "0123456789abcdef";
|
|
1158
851
|
bits = 4;
|
|
1159
852
|
uc = *(*seq_pp)++ & UCHARMAX;
|
|
@@ -1171,10 +864,7 @@ static expr_t eval_one(
|
|
|
1171
864
|
|
|
1172
865
|
wchar_max = (UCHARMAX << CHARBIT) | UCHARMAX;
|
|
1173
866
|
if (mbits == CHARBIT * 4) {
|
|
1174
|
-
|
|
1175
|
-
wchar_max = (wchar_max << CHARBIT * 2) | wchar_max;
|
|
1176
|
-
else
|
|
1177
|
-
wchar_max = LONGMAX;
|
|
867
|
+
wchar_max = (wchar_max << CHARBIT * 2) | wchar_max;
|
|
1178
868
|
}
|
|
1179
869
|
|
|
1180
870
|
value = 0L;
|
|
@@ -1185,16 +875,8 @@ static expr_t eval_one(
|
|
|
1185
875
|
break;
|
|
1186
876
|
if (count >= 3 && bits == 3)
|
|
1187
877
|
break; /* Octal escape sequence at most 3 digits */
|
|
1188
|
-
#if OK_UCN
|
|
1189
|
-
if ((count >= 4 && uc1 == 'u') || (count >= 8 && uc1 == 'U'))
|
|
1190
|
-
break;
|
|
1191
|
-
#endif
|
|
1192
878
|
value = (value << bits) | (cp - digits);
|
|
1193
|
-
#if OK_UCN
|
|
1194
|
-
if (wchar_max < value && uc1 != 'u' && uc1 != 'U')
|
|
1195
|
-
#else
|
|
1196
879
|
if (wchar_max < value)
|
|
1197
|
-
#endif
|
|
1198
880
|
{
|
|
1199
881
|
if (! skip)
|
|
1200
882
|
goto range_err;
|
|
@@ -1212,23 +894,6 @@ static expr_t eval_one(
|
|
|
1212
894
|
|
|
1213
895
|
if (count == 0 && bits == 4) /* '\xnonsense' */
|
|
1214
896
|
goto undefined;
|
|
1215
|
-
#if OK_UCN
|
|
1216
|
-
if (uc1 == 'u' || uc1 == 'U') {
|
|
1217
|
-
if ((count < 4 && uc1 == 'u') || (count < 8 && uc1 == 'U'))
|
|
1218
|
-
goto undefined;
|
|
1219
|
-
if ((value >= 0L && value <= 0x9FL
|
|
1220
|
-
&& value != 0x24L && value != 0x40L && value != 0x60L)
|
|
1221
|
-
|| (!stdc3 && value >= 0xD800L && value <= 0xDFFFL)) {
|
|
1222
|
-
if (!skip)
|
|
1223
|
-
cerror( ucn_malval, NULL, (long) value, NULL);
|
|
1224
|
-
else if (warn_level & 8)
|
|
1225
|
-
cwarn( ucn_malval, NULL, (long) value, NULL);
|
|
1226
|
-
}
|
|
1227
|
-
if (count >= 8 && uc1 == 'U')
|
|
1228
|
-
*ucn8 = TRUE;
|
|
1229
|
-
return (expr_t) value;
|
|
1230
|
-
}
|
|
1231
|
-
#endif /* OK_UCN */
|
|
1232
897
|
if (! wide && (UCHARMAX < value)) {
|
|
1233
898
|
value &= UCHARMAX;
|
|
1234
899
|
goto range_err;
|
|
@@ -1308,8 +973,7 @@ static VAL_SIGN * eval_eval(
|
|
|
1308
973
|
mcpp_fputc( '\n', DBG);
|
|
1309
974
|
}
|
|
1310
975
|
|
|
1311
|
-
if (
|
|
1312
|
-
&& (sign1 == UNSIGNED || sign2 == UNSIGNED) && is_binary( op)
|
|
976
|
+
if ((sign1 == UNSIGNED || sign2 == UNSIGNED) && is_binary( op)
|
|
1313
977
|
&& op != OP_ANA && op != OP_ORO && op != OP_SR && op != OP_SL) {
|
|
1314
978
|
if (((sign1 == SIGNED && v1 < 0L) || (sign2 == SIGNED && v2 < 0L)
|
|
1315
979
|
) && ((! skip && (warn_level & 1))
|
|
@@ -1329,7 +993,7 @@ static VAL_SIGN * eval_eval(
|
|
|
1329
993
|
cwarn( "Illegal shift count %.0s\"%ld\"%s" /* _W1_ _W8_ */
|
|
1330
994
|
, NULL, (long) v2, skip ? non_eval : NULL);
|
|
1331
995
|
#if HAVE_LONG_LONG
|
|
1332
|
-
else if (
|
|
996
|
+
else if (v2 >= sizeof (long) * CHARBIT
|
|
1333
997
|
&& ((! skip && (warn_level & w_level))
|
|
1334
998
|
|| (skip && (warn_level & 8))))
|
|
1335
999
|
cwarn(
|
|
@@ -1351,7 +1015,7 @@ static VAL_SIGN * eval_eval(
|
|
|
1351
1015
|
}
|
|
1352
1016
|
}
|
|
1353
1017
|
|
|
1354
|
-
if (
|
|
1018
|
+
if (sign1 == SIGNED)
|
|
1355
1019
|
v1 = eval_signed( & valp, v1, v2, op);
|
|
1356
1020
|
else
|
|
1357
1021
|
v1 = eval_unsigned( & valp, (uexpr_t) v1, (uexpr_t) v2, op);
|
|
@@ -1400,7 +1064,7 @@ static expr_t eval_signed(
|
|
|
1400
1064
|
chk = v1 && v1 == -v1;
|
|
1401
1065
|
if (chk
|
|
1402
1066
|
#if HAVE_LONG_LONG
|
|
1403
|
-
|| (
|
|
1067
|
+
|| (v1 && (long) v1 == (long) -v1)
|
|
1404
1068
|
#endif
|
|
1405
1069
|
)
|
|
1406
1070
|
overflow( op_name, valpp, chk);
|
|
@@ -1413,7 +1077,7 @@ static expr_t eval_signed(
|
|
|
1413
1077
|
chk = v1 && v2 && (val / v1 != v2 || val / v2 != v1);
|
|
1414
1078
|
if (chk
|
|
1415
1079
|
#if HAVE_LONG_LONG
|
|
1416
|
-
|| (
|
|
1080
|
+
|| (v1 && v2
|
|
1417
1081
|
&& ((long)val / (long)v1 != (long)v2
|
|
1418
1082
|
|| (long)val / (long)v2 != (long)v1))
|
|
1419
1083
|
#endif
|
|
@@ -1427,12 +1091,11 @@ static expr_t eval_signed(
|
|
|
1427
1091
|
chk = -v1 == v1 && v2 == -1;
|
|
1428
1092
|
if (chk /* LONG_MIN / -1 on two's complement */
|
|
1429
1093
|
#if HAVE_LONG_LONG
|
|
1430
|
-
|| (
|
|
1431
|
-
&& (long)-v1 == (long)v1 && (long)v2 == (long)-1)
|
|
1094
|
+
|| ((long)-v1 == (long)v1 && (long)v2 == (long)-1)
|
|
1432
1095
|
#endif
|
|
1433
1096
|
)
|
|
1434
1097
|
overflow( op_name, valpp, chk);
|
|
1435
|
-
else if (
|
|
1098
|
+
else if ((v1 < 0L || v2 < 0L)
|
|
1436
1099
|
&& ((! skip && (warn_level & 1))
|
|
1437
1100
|
|| (skip && (warn_level & 8))))
|
|
1438
1101
|
cwarn( not_portable, op_name, 0L, skip ? non_eval : NULL);
|
|
@@ -1446,8 +1109,7 @@ static expr_t eval_signed(
|
|
|
1446
1109
|
chk = (v2 > 0L && v1 > val) || (v2 < 0L && v1 < val);
|
|
1447
1110
|
if (chk
|
|
1448
1111
|
#if HAVE_LONG_LONG
|
|
1449
|
-
|| (
|
|
1450
|
-
&& (((long)v2 > 0L && (long)v1 > (long)val)
|
|
1112
|
+
|| ((((long)v2 > 0L && (long)v1 > (long)val)
|
|
1451
1113
|
|| ((long)v2 < 0L && (long)v1 < (long)val)))
|
|
1452
1114
|
#endif
|
|
1453
1115
|
)
|
|
@@ -1459,8 +1121,7 @@ static expr_t eval_signed(
|
|
|
1459
1121
|
chk = (v2 > 0L && val > v1) || (v2 < 0L && val < v1);
|
|
1460
1122
|
if (chk
|
|
1461
1123
|
#if HAVE_LONG_LONG
|
|
1462
|
-
|| (
|
|
1463
|
-
&& (((long)v2 > 0L && (long)val > (long)v1)
|
|
1124
|
+
|| ((((long)v2 > 0L && (long)val > (long)v1)
|
|
1464
1125
|
|| ((long)v2 < 0L && (long)val < (long)v1)))
|
|
1465
1126
|
#endif
|
|
1466
1127
|
)
|
|
@@ -1520,7 +1181,7 @@ static expr_t eval_unsigned(
|
|
|
1520
1181
|
int chk; /* Flag of overflow in unsigned long long */
|
|
1521
1182
|
int minus; /* Big integer converted from signed long */
|
|
1522
1183
|
|
|
1523
|
-
minus =
|
|
1184
|
+
minus = (v1u > ULONGMAX || v2u > ULONGMAX);
|
|
1524
1185
|
|
|
1525
1186
|
switch (op) {
|
|
1526
1187
|
case OP_EOE:
|
|
@@ -1537,7 +1198,7 @@ static expr_t eval_unsigned(
|
|
|
1537
1198
|
chk = v1u && v2u && (v1 / v2u != v1u || v1 / v1u != v2u);
|
|
1538
1199
|
if (chk
|
|
1539
1200
|
#if HAVE_LONG_LONG
|
|
1540
|
-
|| (!
|
|
1201
|
+
|| (! minus && v1 > ULONGMAX)
|
|
1541
1202
|
#endif
|
|
1542
1203
|
)
|
|
1543
1204
|
overflow( op_name, valpp, chk);
|
|
@@ -1554,7 +1215,7 @@ static expr_t eval_unsigned(
|
|
|
1554
1215
|
chk = v1 < v1u;
|
|
1555
1216
|
if (chk
|
|
1556
1217
|
#if HAVE_LONG_LONG
|
|
1557
|
-
|| (!
|
|
1218
|
+
|| (! minus && v1 > ULONGMAX)
|
|
1558
1219
|
#endif
|
|
1559
1220
|
)
|
|
1560
1221
|
overflow( op_name, valpp, chk);
|
|
@@ -1564,7 +1225,7 @@ static expr_t eval_unsigned(
|
|
|
1564
1225
|
chk = v1 > v1u;
|
|
1565
1226
|
if (chk
|
|
1566
1227
|
#if HAVE_LONG_LONG
|
|
1567
|
-
|| (!
|
|
1228
|
+
|| (! minus && v1 > ULONGMAX)
|
|
1568
1229
|
#endif
|
|
1569
1230
|
)
|
|
1570
1231
|
overflow( op_name, valpp, chk);
|
|
@@ -1606,7 +1267,7 @@ static void overflow(
|
|
|
1606
1267
|
= "Result of \"%s\" is out of range%.0ld%s"; /* _E_ _W1_ _W8_ */
|
|
1607
1268
|
|
|
1608
1269
|
#if HAVE_LONG_LONG
|
|
1609
|
-
if (
|
|
1270
|
+
if (! ll_overflow) {
|
|
1610
1271
|
/* Overflow of long not in C99 mode */
|
|
1611
1272
|
if ((! skip && (warn_level & w_level)) || (skip && (warn_level & 8)))
|
|
1612
1273
|
cwarn( out_of_range, op_name, 0L, " of (unsigned) long");
|
|
@@ -1616,7 +1277,7 @@ static void overflow(
|
|
|
1616
1277
|
if (warn_level & 8)
|
|
1617
1278
|
cwarn( out_of_range, op_name, 0L, non_eval);
|
|
1618
1279
|
/* Else don't warn */
|
|
1619
|
-
} else if (
|
|
1280
|
+
} else if ((*valpp)->sign == UNSIGNED) {/* Never overflow */
|
|
1620
1281
|
if (warn_level & 1)
|
|
1621
1282
|
cwarn( out_of_range, op_name, 0L, NULL);
|
|
1622
1283
|
} else {
|
|
@@ -1660,7 +1321,7 @@ static void dump_stack(
|
|
|
1660
1321
|
|
|
1661
1322
|
while (opstack < opp) {
|
|
1662
1323
|
mcpp_fprintf( DBG, " [%2d] %2d %04o %d %s\n", (int)(opp - opstack)
|
|
1663
|
-
, opp->op, opp->prec, opp->skip, opname[ opp->op]);
|
|
1324
|
+
, opp->op, opp->prec, opp->skip, opname[ (int)opp->op]);
|
|
1664
1325
|
opp--;
|
|
1665
1326
|
}
|
|
1666
1327
|
|