1 /* 2 * Copyright (c) 2005 3 * Francois Dumont 4 * 5 * This material is provided "as is", with absolutely no warranty expressed 6 * or implied. Any use is at your own risk. 7 * 8 * Permission to use or copy this software for any purpose is hereby granted 9 * without fee, provided the above notices are retained on all copies. 10 * Permission to modify the code and to distribute modified code is granted, 11 * provided the above notices are retained, and a notice that the code was 12 * modified is included with the above copyright notice. 13 */ 14 15 /* This header contains npos definition used in basic_string and rope 16 * implementation. It do not have to be guarded as files including it 17 * are already guarded and it has sometimes to be included several times. 18 */ 19 20 #if defined (_STLP_STATIC_CONST_INIT_BUG) 21 enum { npos = -1 }; 22 #elif defined (__GNUC__) && (__GNUC__ == 2) && (__GNUC_MINOR__ == 96) 23 // inline initializer conflicts with 'extern template' 24 static const size_t npos; 25 #else 26 static const size_t npos = ~(size_t)0; 27 #endif 28