SQLite

Check-in [047bd1c245]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Prevent the implementation of the toreal() SQL function from being 'optimized' by MSVC.
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | toTypeFuncs
Files: files | file ages | folders
SHA1: 047bd1c24553b00ccf12d7745bb4c46820b91f5e
User & Date: mistachkin 2013-08-29 01:17:24.949
Context
2013-08-29
02:27
Disable several toreal() tests that require high floating point precision when it is unavailable. (check-in: b724219b00 user: mistachkin tags: toTypeFuncs)
01:17
Prevent the implementation of the toreal() SQL function from being 'optimized' by MSVC. (check-in: 047bd1c245 user: mistachkin tags: toTypeFuncs)
01:11
Merge updates from trunk. (check-in: 375dfe288f user: mistachkin tags: toTypeFuncs)
Changes
Unified Diff Ignore Whitespace Patch
Changes to src/func.c.
1011
1012
1013
1014
1015
1016
1017



1018
1019
1020
1021
1022
1023
1024
  }
}

/*
** toreal(X):  If X can be losslessly converted into a real number, then
** do so and return that real number.  Otherwise return NULL.
*/



static void torealFunc(
  sqlite3_context *context,
  int argc,
  sqlite3_value **argv
){
  assert( argc==1 );
  UNUSED_PARAMETER(argc);







>
>
>







1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
  }
}

/*
** toreal(X):  If X can be losslessly converted into a real number, then
** do so and return that real number.  Otherwise return NULL.
*/
#if defined(_MSC_VER)
#pragma optimize("", off)
#endif
static void torealFunc(
  sqlite3_context *context,
  int argc,
  sqlite3_value **argv
){
  assert( argc==1 );
  UNUSED_PARAMETER(argc);
1052
1053
1054
1055
1056
1057
1058



1059
1060
1061
1062
1063
1064
1065
    }
    default: {
      assert( sqlite3_value_type(argv[0])==SQLITE_NULL );
      break;
    }
  }
}




/*
** The unicode() function.  Return the integer unicode code-point value
** for the first character of the input string. 
*/
static void unicodeFunc(
  sqlite3_context *context,







>
>
>







1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
    }
    default: {
      assert( sqlite3_value_type(argv[0])==SQLITE_NULL );
      break;
    }
  }
}
#if defined(_MSC_VER)
#pragma optimize("", on)
#endif

/*
** The unicode() function.  Return the integer unicode code-point value
** for the first character of the input string. 
*/
static void unicodeFunc(
  sqlite3_context *context,