From: drh <> Date: Thu, 7 Apr 2022 14:13:32 +0000 (+0000) Subject: Fix the parsing of C-style comments in Lemon, as reported by X-Git-Tag: version-3.39.0~228 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=db08a6d13c7b868eb42b53d4fac8738ad3d7b477;p=thirdparty%2Fsqlite.git Fix the parsing of C-style comments in Lemon, as reported by [forum:/forumpost/b6edc69548|forum post b6edc69548]. This has no affect on SQLite itself. FossilOrigin-Name: 201569e09b000919ccb463bd581fb2ecd5320e7f584fdb1bc2aaba111061d5c3 --- diff --git a/manifest b/manifest index 4d7ead95e3..3a5afaeadc 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Optimization\sto\ssqlite3TriggersExist()\ssaves\sover\s700K\sCPU\scycles. -D 2022-04-07T14:03:07.800 +C Fix\sthe\sparsing\sof\sC-style\scomments\sin\sLemon,\sas\sreported\sby\n[forum:/forumpost/b6edc69548|forum\spost\sb6edc69548].\s\sThis\shas\sno\saffect\non\sSQLite\sitself. +D 2022-04-07T14:13:32.478 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724 @@ -1863,7 +1863,7 @@ F tool/genfkey.test b6afd7b825d797a1e1274f519ab5695373552ecad5cd373530c63533638a F tool/getlock.c f4c39b651370156cae979501a7b156bdba50e7ce F tool/index_usage.c f62a0c701b2c7ff2f3e21d206f093c123f222dbf07136a10ffd1ca15a5c706c5 F tool/kvtest-speed.sh 4761a9c4b3530907562314d7757995787f7aef8f -F tool/lemon.c 1c5a14f6044193e42864c36de48359026fa2cdcf205a43cc1a31116101e27258 +F tool/lemon.c ea5c8589c7749e9bd32ba10432aeeed3c16e215de72a12ada2bc707884837149 F tool/lempar.c 57478ea48420da05faa873c6d1616321caa5464644588c97fbe8e0ea04450748 F tool/libvers.c caafc3b689638a1d88d44bc5f526c2278760d9b9 F tool/loadfts.c c3c64e4d5e90e8ba41159232c2189dba4be7b862 @@ -1945,8 +1945,8 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0 -P 47ddc26974fbad8233c953d435e79d4f5dd5e09fbd684ea5f4ad32f4cae6cae6 -R 313704a91e0bd8ca9890cadf31801b34 +P 5043a3507e0781878e0e1bea5095a33273958820baead4af8fc2929e9d7c07ee +R 3aa1ea2fb3309b52d9b9b355614ccef2 U drh -Z d452943e9c0d2e6a5130deca0f1583c4 +Z a9f6250e4b921e7cc5eba2670fe5b4ea # Remove this line to create a well-formed Fossil manifest. diff --git a/manifest.uuid b/manifest.uuid index 651bd878e2..604ab9337a 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -5043a3507e0781878e0e1bea5095a33273958820baead4af8fc2929e9d7c07ee \ No newline at end of file +201569e09b000919ccb463bd581fb2ecd5320e7f584fdb1bc2aaba111061d5c3 \ No newline at end of file diff --git a/tool/lemon.c b/tool/lemon.c index 11e25c8a1c..fb81292d4d 100644 --- a/tool/lemon.c +++ b/tool/lemon.c @@ -3015,6 +3015,7 @@ void Parse(struct lemon *gp) } if( c=='/' && cp[1]=='*' ){ /* Skip C style comments */ cp+=2; + if( (*cp)=='/' ) cp++; while( (c= *cp)!=0 && (c!='/' || cp[-1]!='*') ){ if( c=='\n' ) lineno++; cp++;