/ Check-in [90cae831]
Login

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

Overview
Comment:The GCC magic to warn about experimental interfaces does not work on gcc version 4.1.0. Add #ifdefs to work around this. (CVS 5552)
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: 90cae83169de980c6548ca6b57f4c65419e8eb13
User & Date: drh 2008-08-11 18:29:38
Context
2008-08-11
18:44
Do not allow indexing of any table whose name begins with "sqlite_". Ticket #3284. Improve handling of databases with malformed schemas - just in case somebody has actually indexed a system table. (CVS 5553) check-in: 0e1d8d14 user: drh tags: trunk
18:29
The GCC magic to warn about experimental interfaces does not work on gcc version 4.1.0. Add #ifdefs to work around this. (CVS 5552) check-in: 90cae831 user: drh tags: trunk
17:27
Added SQLITE_EXPERIMENTAL and SQLITE_DEPRECATED tags to APIs to take advantage of compiler warnings (with the necessary function attributes.) Ticket #3142. (CVS 5551) check-in: 5f4b547a user: shane tags: trunk
Changes
Hide Diffs Side-by-Side Diffs Ignore Whitespace Patch

Changes to src/sqlite.h.in.

    26     26   ** on how SQLite interfaces are suppose to operate.
    27     27   **
    28     28   ** The name of this file under configuration management is "sqlite.h.in".
    29     29   ** The makefile makes some minor changes to this file (such as inserting
    30     30   ** the version number) and changes its name to "sqlite3.h" as
    31     31   ** part of the build process.
    32     32   **
    33         -** @(#) $Id: sqlite.h.in,v 1.389 2008/08/11 17:27:02 shane Exp $
           33  +** @(#) $Id: sqlite.h.in,v 1.390 2008/08/11 18:29:38 drh Exp $
    34     34   */
    35     35   #ifndef _SQLITE3_H_
    36     36   #define _SQLITE3_H_
    37     37   #include <stdarg.h>     /* Needed for the definition of va_list */
    38     38   
    39     39   /*
    40     40   ** Make sure we can call this stuff from C++.
................................................................................
    62     62   #else
    63     63     #define SQLITE_DEPRECATED
    64     64   #endif
    65     65   
    66     66   /*
    67     67   ** Add the ability to mark interfaces as experimental.
    68     68   */
    69         -#if (__GNUC__ > 3)
           69  +#if (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 2))
    70     70     /* GCC added the warning attribute in version 4.0 (I think) */
           71  +  /* I can confirm that it does not work on version 4.1.0... */
    71     72     #define SQLITE_EXPERIMENTAL __attribute__ ((warning ("is experimental")))
    72     73   #elif defined(_MSC_VER)
    73     74     #define SQLITE_EXPERIMENTAL __declspec(deprecated("was declared experimental"))
    74     75   #else
    75     76     #define SQLITE_EXPERIMENTAL
    76     77   #endif
    77     78