Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
> Looks like this warning can be safely ignored and internet even has > quite a few suggestions on its suppression. Here's what I found: > http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/195e7065- > b429-4324-9f38-35558867cfbd > http://www.tech- > archive.net/Archive/VC/microsoft.public.vc.ide_general/2006- > 12/msg00026.html > http://connect.microsoft.com/VisualStudio/feedback/details/558219/bscmak > e-ignore-switch-ei > > > Pavel Thanks for that Pavel. The info in the links didn't resolve the build warning, but gave me the pointer to where to hide it. For info for anyone else - I've hidden the warnings (both the compiler warnings and the build warning) by setting the sqlite3.c file's Warning Level to level 3 (/W3) instead of 4 [to hide the compile warnings], and turning OFF browse information (i.e. remove /FR if present. /Fr (note case) builds without the above warning, but then generates a warning about using the /Fr flag as it's deprecated!) [to hide the build warning]. Thanks all. 3.7.0 now compiles nicely with no errors/warnings and appears to work perfectly. Nick. ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
> The build warning is my main concern: >> warning BK4504 : file contains too many references; ignoring further > references from this source Looks like this warning can be safely ignored and internet even has quite a few suggestions on its suppression. Here's what I found: http://social.msdn.microsoft.com/Forums/en-US/vcgeneral/thread/195e7065-b429-4324-9f38-35558867cfbd http://www.tech-archive.net/Archive/VC/microsoft.public.vc.ide_general/2006-12/msg00026.html http://connect.microsoft.com/VisualStudio/feedback/details/558219/bscmake-ignore-switch-ei Pavel On Wed, Jul 7, 2010 at 11:57 AM, Nick Shaw wrote: > Ah, ok thanks. I'm not too concerned about the warnings myself; as I > said, I can hide them. I just wanted to highlight them incase they've > not been spotted in the compilers the developers use. > > The build warning is my main concern: >> warning BK4504 : file contains too many references; ignoring further > references from this source > > I've never come across this warning before (in ANY project), but it > doesn't sound too healthy to me. I'm happy to ignore it too, but I > can't hide it with a compiler pragma as it's from BSCMAKE, and that > breaks our internal coding standards. That's obviously not the sqlite > developers' problem, but I wondered why this warning has appeared in > 3.7.0 and was not in 3.6.x (implying it's in new bits code), which > compiled (with a few compiler pragmas to ignore basic compile warnings) > without issue? > > If it's safe to ignore, I'll see about finding a way to hide the > warning. > > Thanks, > Nick. > >> -Original Message- >> From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- >> boun...@sqlite.org] On Behalf Of Eric Smith >> Sent: 07 July 2010 16:34 >> To: General Discussion of SQLite Database >> Subject: Re: [sqlite] SqLite 3.7.0 amalgamation build warnings >> >> Nick Shaw wrote: >> >> > Realised I also fixed this warning before posting too: >> >> You may not be getting a lot of responses on this because the SQLite >> devs have a philosophy that, for this project, chasing down compiler >> warnings is generally a waste of time. >> >> See http://sqlite.org/testing.html#staticanalysis for details on that. >> >> If you want action regarding the warnings you see, I recommend arguing >> how the relevant code will cause a real-world behavioral problem. And >> the best argument is to write a bit of code exercising the problem. >> >> -- >> Eric A. Smith >> >> Where a calculator on the ENIAC is equipped with 18,000 vaccuum tubes >> and weighs 30 tons, computers in the future may have only >> 1,000 vaccuum tubes and perhaps weigh 1 1/2 tons. >> -- Popular Mechanics, March 1949 >> ___ >> sqlite-users mailing list >> sqlite-users@sqlite.org >> http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
Nick Shaw wrote: > If it's safe to ignore Note that I was careful not to say that the warnings are safe to ignore. :) I only said that the SQLite devs may ignore them without further evidence of problems. I'm not an expert on the SQLite code, so wouldn't make any specific claims about it. Eric -- Eric A. Smith Peace, n.: In international affairs, a period of cheating between two periods of fighting. -- Ambrose Bierce, "The Devil's Dictionary" ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
Ah, ok thanks. I'm not too concerned about the warnings myself; as I said, I can hide them. I just wanted to highlight them incase they've not been spotted in the compilers the developers use. The build warning is my main concern: > warning BK4504 : file contains too many references; ignoring further references from this source I've never come across this warning before (in ANY project), but it doesn't sound too healthy to me. I'm happy to ignore it too, but I can't hide it with a compiler pragma as it's from BSCMAKE, and that breaks our internal coding standards. That's obviously not the sqlite developers' problem, but I wondered why this warning has appeared in 3.7.0 and was not in 3.6.x (implying it's in new bits code), which compiled (with a few compiler pragmas to ignore basic compile warnings) without issue? If it's safe to ignore, I'll see about finding a way to hide the warning. Thanks, Nick. > -Original Message- > From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- > boun...@sqlite.org] On Behalf Of Eric Smith > Sent: 07 July 2010 16:34 > To: General Discussion of SQLite Database > Subject: Re: [sqlite] SqLite 3.7.0 amalgamation build warnings > > Nick Shaw wrote: > > > Realised I also fixed this warning before posting too: > > You may not be getting a lot of responses on this because the SQLite > devs have a philosophy that, for this project, chasing down compiler > warnings is generally a waste of time. > > See http://sqlite.org/testing.html#staticanalysis for details on that. > > If you want action regarding the warnings you see, I recommend arguing > how the relevant code will cause a real-world behavioral problem. And > the best argument is to write a bit of code exercising the problem. > > -- > Eric A. Smith > > Where a calculator on the ENIAC is equipped with 18,000 vaccuum tubes > and weighs 30 tons, computers in the future may have only > 1,000 vaccuum tubes and perhaps weigh 1 1/2 tons. > -- Popular Mechanics, March 1949 > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
Nick Shaw wrote: > Realised I also fixed this warning before posting too: You may not be getting a lot of responses on this because the SQLite devs have a philosophy that, for this project, chasing down compiler warnings is generally a waste of time. See http://sqlite.org/testing.html#staticanalysis for details on that. If you want action regarding the warnings you see, I recommend arguing how the relevant code will cause a real-world behavioral problem. And the best argument is to write a bit of code exercising the problem. -- Eric A. Smith Where a calculator on the ENIAC is equipped with 18,000 vaccuum tubes and weighs 30 tons, computers in the future may have only 1,000 vaccuum tubes and perhaps weigh 1 1/2 tons. -- Popular Mechanics, March 1949 ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
Realised I also fixed this warning before posting too: static const VdbeOp dummy; /* Ignore the MSVC warning about no initializer */ > warning C4132: 'dummy' : const object should be initialized Another not entirely worrysome issue, but thought I'd mention it. Here's another that was in 3.6.x that I just hid with a pragma: pPage->nFree -= (nCell*2 + nUsable - cellbody); > warning C4244: '-=' : conversion from 'int' to 'u16', possible loss of data Thanks, Nick. --- > -Original Message- > From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- > boun...@sqlite.org] On Behalf Of Nick Shaw > Sent: 07 July 2010 14:47 > To: sqlite-users@sqlite.org > Subject: Re: [sqlite] SqLite 3.7.0 amalgamation build warnings > > Forgot to say: I've got these lines added at the top of the file (thus > the line number references are 7 lines lower than the original source): > > //--- Added lines: > #pragma warning (disable:4127) > #pragma warning (disable:4244) > #pragma warning (disable:4706) > #define SQLITE_ENABLE_COLUMN_METADATA > // --- End added lines > > The pragma warnings are to disable other build warnings that I consider > safe to ignore. The lowest one, 4706 is the compile warning I mention > below, and is caused by this specific line of code: > > for(eMode=0; (zMode = sqlite3JournalModename(eMode)); eMode++){ > > Thanks, > Nick. > > > -Original Message- > > From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- > > boun...@sqlite.org] On Behalf Of Nick Shaw > > Sent: 07 July 2010 13:43 > > To: sqlite-users@sqlite.org > > Subject: [sqlite] SqLite 3.7.0 amalgamation build warnings > > > > Hi, > > > > > > > > I wanted to test the upcoming 3.7.0 build of sqlite to assist in the > > 'beta testing', however I'm getting the following build warnings which > > did not appear when compiling 3.6.x amalgamations. Please let me know > > if they are considered safe to ignore: > > > > > > > > (building in Visual Studio 2008 as part of a static link library; > sqlite > > build is the amalgamation taken from yesterday's snapshot) > > > > > > > > When compiling: > > > > 1>c:\dev\tools\sqlite3.c(83600) : warning C4706: assignment within > > conditional expression > > > > > > > > And when building: > > > > 1>c:\dev\tools\sqlite3.c(34990) : warning BK4504 : file contains too > > many references; ignoring further references from this source > > > > > > > > The latter one concerns me the most. I can hide the first one with a > > compiler pragma, but I can't hide the second as it's a BSCMAKE > warning. > > > > > > > > Thanks, > > > > Nick. > > > > > > > > > > > > ___ > > sqlite-users mailing list > > sqlite-users@sqlite.org > > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
Re: [sqlite] SqLite 3.7.0 amalgamation build warnings
Forgot to say: I've got these lines added at the top of the file (thus the line number references are 7 lines lower than the original source): //--- Added lines: #pragma warning (disable:4127) #pragma warning (disable:4244) #pragma warning (disable:4706) #define SQLITE_ENABLE_COLUMN_METADATA // --- End added lines The pragma warnings are to disable other build warnings that I consider safe to ignore. The lowest one, 4706 is the compile warning I mention below, and is caused by this specific line of code: for(eMode=0; (zMode = sqlite3JournalModename(eMode)); eMode++){ Thanks, Nick. > -Original Message- > From: sqlite-users-boun...@sqlite.org [mailto:sqlite-users- > boun...@sqlite.org] On Behalf Of Nick Shaw > Sent: 07 July 2010 13:43 > To: sqlite-users@sqlite.org > Subject: [sqlite] SqLite 3.7.0 amalgamation build warnings > > Hi, > > > > I wanted to test the upcoming 3.7.0 build of sqlite to assist in the > 'beta testing', however I'm getting the following build warnings which > did not appear when compiling 3.6.x amalgamations. Please let me know > if they are considered safe to ignore: > > > > (building in Visual Studio 2008 as part of a static link library; sqlite > build is the amalgamation taken from yesterday's snapshot) > > > > When compiling: > > 1>c:\dev\tools\sqlite3.c(83600) : warning C4706: assignment within > conditional expression > > > > And when building: > > 1>c:\dev\tools\sqlite3.c(34990) : warning BK4504 : file contains too > many references; ignoring further references from this source > > > > The latter one concerns me the most. I can hide the first one with a > compiler pragma, but I can't hide the second as it's a BSCMAKE warning. > > > > Thanks, > > Nick. > > > > > > ___ > sqlite-users mailing list > sqlite-users@sqlite.org > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users
[sqlite] SqLite 3.7.0 amalgamation build warnings
Hi, I wanted to test the upcoming 3.7.0 build of sqlite to assist in the 'beta testing', however I'm getting the following build warnings which did not appear when compiling 3.6.x amalgamations. Please let me know if they are considered safe to ignore: (building in Visual Studio 2008 as part of a static link library; sqlite build is the amalgamation taken from yesterday's snapshot) When compiling: 1>c:\dev\tools\sqlite3.c(83600) : warning C4706: assignment within conditional expression And when building: 1>c:\dev\tools\sqlite3.c(34990) : warning BK4504 : file contains too many references; ignoring further references from this source The latter one concerns me the most. I can hide the first one with a compiler pragma, but I can't hide the second as it's a BSCMAKE warning. Thanks, Nick. ___ sqlite-users mailing list sqlite-users@sqlite.org http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users