From: drh Date: Mon, 22 Sep 2008 17:54:46 +0000 (+0000) Subject: Get rid of all of the compiler magic associated with SQLITE_EXPERIMENTAL X-Git-Tag: version-3.6.10~445 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4d6618f9ed22b425b2872ad6b14f853af859e86b;p=thirdparty%2Fsqlite.git Get rid of all of the compiler magic associated with SQLITE_EXPERIMENTAL and SQLITE_DEPRECATED. It was causing more problems than it was solving. Ticket #3395 et al. (CVS 5732) FossilOrigin-Name: bc040073c7c059e91fddece27f99fa359cc1405d --- diff --git a/manifest b/manifest index e3c21db1d7..9008f268d9 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Fix\sa\smemory\sleak\sthat\scan\sfollow\sa\smalloc\sfailure\sin\ssqlite3_initialize.\s(CVS\s5731) -D 2008-09-22T17:22:20 +C Get\srid\sof\sall\sof\sthe\scompiler\smagic\sassociated\swith\sSQLITE_EXPERIMENTAL\nand\sSQLITE_DEPRECATED.\s\sIt\swas\scausing\smore\sproblems\sthan\sit\swas\ssolving.\nTicket\s#3395\set\sal.\s(CVS\s5732) +D 2008-09-22T17:54:46 F Makefile.arm-wince-mingw32ce-gcc fcd5e9cd67fe88836360bb4f9ef4cb7f8e2fb5a0 F Makefile.in d15a7ebfe5e057a72a49805ffb302dbb601c8329 F Makefile.linux-gcc d53183f4aa6a9192d249731c90dbdffbd2c68654 @@ -149,7 +149,7 @@ F src/random.c 11bbdf7def3746a762fbdb56c9d04648135ad6d8 F src/resolve.c a6abf83125bce0c80ba04acc27c3565155ad305c F src/select.c 4d25fe8da35abb5b5317a0248bedc3c9570416e9 F src/shell.c d83b578a8ccdd3e0e7fef4388a0887ce9f810967 -F src/sqlite.h.in 81dc1e8e50fb5c7cccf0a67a34cb796efc1d2a1e +F src/sqlite.h.in 2be75cc1f2a5515db910e8d0e2d5954b493fd1f3 F src/sqlite3ext.h 1e3887c9bd3ae66cb599e922824b04cd0d0f2c3e F src/sqliteInt.h dbe2797806c48f4a90adfea69dfbea95edd722ae F src/sqliteLimit.h f435e728c6b620ef7312814d660a81f9356eb5c8 @@ -637,7 +637,7 @@ F tool/speedtest16.c c8a9c793df96db7e4933f0852abb7a03d48f2e81 F tool/speedtest2.tcl ee2149167303ba8e95af97873c575c3e0fab58ff F tool/speedtest8.c 1dbced29de5f59ba2ebf877edcadf171540374d1 F tool/speedtest8inst1.c 293327bc76823f473684d589a8160bde1f52c14e -P 7bd2da93c6cce52edbbe53fe26a82ad159dd6b6b -R 1d180ffa7242175bc8c7caff350d401f -U danielk1977 -Z 502f4e6fe483d957c00be49b346a4200 +P 118dc0ba082dd9abba5602dafc86bd56e756db86 +R c68ae4639d84d403402dd4e6c38c002d +U drh +Z c830ecc4b86de78a2dcceed42e67cb65 diff --git a/manifest.uuid b/manifest.uuid index 2f108f6dc1..9196066a08 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -118dc0ba082dd9abba5602dafc86bd56e756db86 \ No newline at end of file +bc040073c7c059e91fddece27f99fa359cc1405d \ No newline at end of file diff --git a/src/sqlite.h.in b/src/sqlite.h.in index 6850f2bcba..b44a6dbb0e 100644 --- a/src/sqlite.h.in +++ b/src/sqlite.h.in @@ -30,7 +30,7 @@ ** the version number) and changes its name to "sqlite3.h" as ** part of the build process. ** -** @(#) $Id: sqlite.h.in,v 1.398 2008/09/10 13:09:24 drh Exp $ +** @(#) $Id: sqlite.h.in,v 1.399 2008/09/22 17:54:46 drh Exp $ */ #ifndef _SQLITE3_H_ #define _SQLITE3_H_ @@ -52,29 +52,20 @@ extern "C" { #endif /* -** Add the ability to mark interfaces as deprecated. -*/ -#if (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)) - /* GCC added the deprecated attribute in version 3.1 */ - #define SQLITE_DEPRECATED __attribute__ ((deprecated)) -#elif defined(_MSC_VER) && (_MSC_VER>1200) - #define SQLITE_DEPRECATED __declspec(deprecated) -#else - #define SQLITE_DEPRECATED -#endif - -/* -** Add the ability to mark interfaces as experimental. +** These no-op macros are used in front of interfaces to mark those +** interfaces as either deprecated or experimental. New applications +** should not use deprecated intrfaces - they are support for backwards +** compatibility only. Application writers should be aware that +** experimental interfaces are subject to change in point releases. +** +** These macros used to resolve to various kinds of compiler magic that +** would generate warning messages when they were used. But that +** compiler magic ended up generating such a flurry of bug reports +** that we have taken it all out and gone back to using simple +** noop macros. */ -#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 3)) - /* I can confirm that it does not work on version 4.1.0... */ - /* First appears in GCC docs for version 4.3.0 */ - #define SQLITE_EXPERIMENTAL __attribute__ ((warning ("is experimental"))) -#elif defined(_MSC_VER) && (_MSC_VER>1200) - #define SQLITE_EXPERIMENTAL __declspec(deprecated("was declared experimental")) -#else - #define SQLITE_EXPERIMENTAL -#endif +#define SQLITE_DEPRECATED +#define SQLITE_EXPERIMENTAL /* ** Ensure these symbols were not defined by some previous header file.