diff --git a/reflex/inc/LinkDef.h b/reflex/inc/LinkDef.h index e5e9f17fa29b9edaaf1e9e69b31916dde4974e43..79178f1a5023da3f22ce4f170e3b3dfe5f97991d 100755 --- a/reflex/inc/LinkDef.h +++ b/reflex/inc/LinkDef.h @@ -1,4 +1,4 @@ -/* @(#)root/reflex:$Name: $:$Id: LinkDef.h,v 1.23 2007/02/14 18:25:22 rdm Exp $ */ +/* @(#)root/reflex:$Name: $:$Id: LinkDef.h,v 1.1 2007/04/25 16:52:43 axel Exp $ */ /************************************************************************* * Copyright (C) 1995-2007, Rene Brun and Fons Rademakers. * @@ -44,7 +44,10 @@ #pragma link C++ class ROOT::Reflex::UnnamedStruct; #pragma link C++ class ROOT::Reflex::UnnamedUnion; +#ifndef G__SUNPRO_CC +// cannot distinguish ::exception and std::exception #pragma link C++ class ROOT::Reflex::RuntimeError; +#endif #pragma link C++ function ROOT::Reflex::NPos(); diff --git a/reflex/inc/Reflex/Kernel.h b/reflex/inc/Reflex/Kernel.h index 7a959463c98be9af36d3ad39f83fd6e867460b21..124c83bc78429f39e3065289b333e25648524fd8 100644 --- a/reflex/inc/Reflex/Kernel.h +++ b/reflex/inc/Reflex/Kernel.h @@ -1,4 +1,4 @@ -// @(#)root/reflex:$Name: $:$Id: Kernel.h,v 1.27 2007/04/19 16:18:06 axel Exp $ +// @(#)root/reflex:$Name: $:$Id: Kernel.h,v 1.28 2007/04/26 08:58:07 axel Exp $ // Author: Stefan Roiser 2004 // Copyright CERN, CH-1211 Geneva 23, 2004-2006, All rights reserved. @@ -17,45 +17,45 @@ // Shared library support #if __GNUC__ >= 4 && !defined(__CINT__) - #define GCC_HASCLASSVISIBILITY +# define GCC_HASCLASSVISIBILITY #endif #ifdef WIN32 - #define RFLX_IMPORT __declspec(dllimport) - #define RFLX_EXPORT __declspec(dllexport) - #define RFLX_DLLLOCAL - #define RFLX_DLLPUBLIC +# define RFLX_IMPORT __declspec(dllimport) +# define RFLX_EXPORT __declspec(dllexport) +# define RFLX_DLLLOCAL +# define RFLX_DLLPUBLIC #else - #ifdef GCC_HASCLASSVISIBILITY - #define RFLX_EXPORT __attribute__((visibility("default"))) - #define RFLX_DLLLOCAL __attribute__((visibility("hidden"))) - #define RFLX_DLLPUBLIC __attribute__((visibility("default"))) - #else - #define RFLX_EXPORT - #define RFLX_DLLLOCAL - #define RFLX_DLLPUBLIC - #endif - #define RFLX_IMPORT +# ifdef GCC_HASCLASSVISIBILITY +# define RFLX_EXPORT __attribute__((visibility("default"))) +# define RFLX_DLLLOCAL __attribute__((visibility("hidden"))) +# define RFLX_DLLPUBLIC __attribute__((visibility("default"))) +# else +# define RFLX_EXPORT +# define RFLX_DLLLOCAL +# define RFLX_DLLPUBLIC +# endif +# define RFLX_IMPORT #endif // Define RFLX_API for DLL builds #ifdef REFLEX_DLL - #ifdef REFLEX_BUILD - #define RFLX_API RFLX_EXPORT - #else - #define RFLX_API RFLX_IMPORT - #endif // REFLEX_BUILD +# ifdef REFLEX_BUILD +# define RFLX_API RFLX_EXPORT +# else +# define RFLX_API RFLX_IMPORT +# endif // REFLEX_BUILD #else - #define RFLX_API +# define RFLX_API #endif // REFLEX_DLL // Throwable classes must always be visible on GCC in all binaries #ifdef WIN32 - #define RFLX_EXCEPTIONAPI(api) api +# define RFLX_EXCEPTIONAPI(api) api #elif defined(GCC_HASCLASSVISIBILITY) - #define RFLX_EXCEPTIONAPI(api) RFLX_EXPORT +# define RFLX_EXCEPTIONAPI(api) RFLX_EXPORT #else - #define RFLX_EXCEPTIONAPI(api) +# define RFLX_EXCEPTIONAPI(api) #endif // end macros for symbol selection