forked from osmocom/wireshark
c0711693ab
Add it to the default list of checks, and fix some errors it causes. (Sadly, it doesn't work in CLang.) |
||
---|---|---|
.. | ||
patches | ||
CMakeLists.txt | ||
README | ||
apply-patches.sh | ||
cppmagic.h | ||
lemon.c | ||
lemonflex-head.inc | ||
lemonflex-tail.inc | ||
lempar.c |
README
The Lemon Parser Generator's home page is: https://www.hwaci.com/sw/lemon/ Lemon seems now to be maintained at: https://sqlite.org/lemon.html Documentation is available at: https://sqlite.org/src/doc/trunk/doc/lemon.html Git mirror of the upstream Fossil repository: https://github.com/mackyle/sqlite The lempar.c and lemon.c are taken from sqlite and are modified as little as possible to make it easier to synchronize changes. Last updated at: commit 273ee151217b04c640c1af148e36c518678c89fa Author: mistachkin <mistachkin@noemail.net> Date: Mon Sep 21 20:18:44 2020 +0000 Fix harmless compiler warning seen with MSVC. To check for changes (adjust "previous commit" accordingly): git clone --depth=1000 https://github.com/sqlite/sqlite cd sqlite/tools git log -p 273ee15121.. lemon.c lempar.c To create a Wireshark version (steps 1-3) and validate the result (steps 4-5): 1. Copy the two files. 2. Run ./apply-patches.sh to apply local patches. 3. Update the commit in this README (to ensure the base is known). 4. Check for CSA warnings: clang-check -analyze lemon.c -- 5. Build and run lemon: ninja epan/dfilter/grammar.c The patches to lemon to silence compiler warnings and static analysis reports (for edge cases that cannot occur) are not proposed upstream because that process is difficult. From <https://www.sqlite.org/copyright.html>: SQLite is open-source, meaning that you can make as many copies of it as you want and do whatever you want with those copies, without limitation. But SQLite is not open-contribution. In order to keep SQLite in the public domain and ensure that the code does not become contaminated with proprietary or licensed content, the project does not accept patches from unknown persons. A note about the Lemon patches, we have no intention to fork Lemon and maintain it. These patches are written to address static analyzer warnings without actually modifying the functionality. If upstream is willing to accept patches, then that would be great and the intention is to make it as easy as possible. The lemon and lempar patches are dedicated to the public domain, as set forward in Creative Commons Zero v1.0 Universal (IANAL, but I hope this is sufficient).