10 #ifndef TEUCHOS_CONFIGDEFS_HPP
11 #define TEUCHOS_CONFIGDEFS_HPP
18 #include "TeuchosCore_config.h"
19 #include "Teuchos_config.h"
21 #ifdef HAVE_TEUCHOS_DEBUG
22 # define TEUCHOS_DEBUG
23 # define HAVE_TEUCHOS_ARRAY_BOUNDSCHECK
28 #if defined(_MSC_VER) || defined(__APPLE__)
29 # define TEUCHOS_NO_ZERO_ITERATOR_CONVERSION
32 #if defined(__IBMC__) || defined(__IBMCPP__)
33 # ifndef TEMPLATE_FRIENDS_NOT_SUPPORTED
34 # define TEMPLATE_FRIENDS_NOT_SUPPORTED
36 # ifndef TEUCHOS_PRIVIATE_DELETE_NOT_SUPPORTED
37 # define TEUCHOS_PRIVIATE_DELETE_NOT_SUPPORTED
74 #if defined(__IBMCPP__)
75 # pragma do_not_instantiate std::fpos<mbstate_t>
78 const double Teuchos_MinDouble = 1.0E-100;
79 const double Teuchos_MaxDouble = 1.0E+100;
80 const double Teuchos_Overflow = 1.79E308;
81 const double Teuchos_Underflow = 2.23E-308;
91 #ifdef TEUCHOS_CHK_ERR
92 #undef TEUCHOS_CHK_ERR
94 #ifdef TEUCHOS_CHK_PTR
95 #undef TEUCHOS_CHK_PTR
97 #ifdef TEUCHOS_CHK_REF
98 #undef TEUCHOS_CHK_REF
107 typedef TEUCHOS_ORDINAL_TYPE Teuchos_Ordinal;
110 namespace Teuchos {
typedef Teuchos_Ordinal Ordinal; }
114 TEUCHOS_DEPRECATED
typedef Teuchos_Ordinal Teuchos_Index;
118 #define TEUCHOS_CHK_ERR(a) { if (a != 0) return(a);}
119 #define TEUCHOS_CHK_PTR(a) { return(a);}
120 #define TEUCHOS_CHK_REF(a) { return(a);}
123 const int Teuchos_DefaultTracebackMode = 1;
127 #define TEUCHOS_MAX(x,y) (( (x) > (y) ) ? (x) : (y) )
128 #define TEUCHOS_MIN(x,y) (( (x) < (y) ) ? (x) : (y) )
129 #define TEUCHOS_SGN(x) (( (x) < 0.0 ) ? -1.0 : 1.0 )
131 #ifndef HAVE_FORTRAN_SUPPORT
132 # ifndef FORTRAN_DISABLED
133 # define FORTRAN_DISABLED
137 #include "Teuchos_DLLExportMacro.h"