simon-git: spigot (main): Simon Tatham
Commits to Tartarus hosted VCS
tartarus-commits at lists.tartarus.org
Wed May 26 16:13:10 BST 2021
TL;DR:
7074ba3 Add missing virtual destructor in Scope base class.
37382bb Remove a couple of unused member variables.
25894cd Rename the evaluate() variant that takes an argvector.
7dd3cfd Migrate to a CMake build system.
Repository: https://git.tartarus.org/simon/spigot.git
On the web: https://git.tartarus.org/?p=simon/spigot.git
Branch updated: main
Committer: Simon Tatham <anakin at pobox.com>
Date: 2021-05-26 16:13:10
commit 7074ba3fb592b58e0e7cd96ce8742588692316d8
web diff https://git.tartarus.org/?p=simon/spigot.git;a=commitdiff;h=7074ba3fb592b58e0e7cd96ce8742588692316d8;hp=9910e5bdc203bae6b7bbe1ed4a93f13755c1caee
Author: Simon Tatham <anakin at pobox.com>
Date: Wed May 26 12:03:19 2021 +0100
Add missing virtual destructor in Scope base class.
It has virtual methods, so it should have a virtual destructor. clang
just pointed that out to me: for some reason, it only gave that
warning when building for Windows, but the bug is the same on all
platforms.
expr.cpp | 1 +
1 file changed, 1 insertion(+)
commit 37382bbb50727992cf004ce96ef26ff8805c4c03
web diff https://git.tartarus.org/?p=simon/spigot.git;a=commitdiff;h=37382bbb50727992cf004ce96ef26ff8805c4c03;hp=7074ba3fb592b58e0e7cd96ce8742588692316d8
Author: Simon Tatham <anakin at pobox.com>
Date: Wed May 26 12:05:47 2021 +0100
Remove a couple of unused member variables.
clang warns about those these days, apparently. How nice of it.
baseout.cpp | 1 -
inverter.cpp | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
commit 25894cdc7c964a87b2f5a527628b081bf6576ca6
web diff https://git.tartarus.org/?p=simon/spigot.git;a=commitdiff;h=25894cdc7c964a87b2f5a527628b081bf6576ca6;hp=37382bbb50727992cf004ce96ef26ff8805c4c03
Author: Simon Tatham <anakin at pobox.com>
Date: Wed May 26 12:06:07 2021 +0100
Rename the evaluate() variant that takes an argvector.
Virtual methods with the same name and different argument lists are
tied together confusingly, so clang gave me a warning when classes
like ExprNodeTypeBinary overrode that evaluate() method and also
introduced a new one with a different argument list.
I'm not 100% clear on what the C++ standard says about doing that, but
now that clang has pointed it out, I agree it's a bit confusing. So
I've renamed the argvector version to evaluatev(), and left evaluate()
to be introduced by subclasses of known arity.
expr.cpp | 10 +++++-----
funcs.h | 10 +++++-----
2 files changed, 10 insertions(+), 10 deletions(-)
commit 7dd3cfdcdba945237baad93d99a4d47a47e7226e
web diff https://git.tartarus.org/?p=simon/spigot.git;a=commitdiff;h=7dd3cfdcdba945237baad93d99a4d47a47e7226e;hp=25894cdc7c964a87b2f5a527628b081bf6576ca6
Author: Simon Tatham <anakin at pobox.com>
Date: Wed May 26 15:58:39 2021 +0100
Migrate to a CMake build system.
The previous pair of makefiles would let me build for Unix systems
that could run an autotools 'configure', and for Windows using
clang-cl, but there was some duplicated code between them, and they
didn't make it easy to build for Windows in a more normal way. A
CMake-based system should be easier all round.
The new system still allows manual configuration of whether to build
against GMP; it incorporates test.sh into the default 'make test'
target; it auto-detects Halibut and uses that to build the man page
and HTML manual.
The top-level Buildscr is updated appropriately, to build using the
new system. I've removed from Buildscr the previous wart that
cross-built a Windows GMP, because it struck me that that was better
put in its own separate build script instead of being awkwardly
enabled as a side effect.
Since my own usual habit as a developer in a CMake-based project is to
put the build directory as a subdir 'build' of the main source dir, I
suddenly found it inconvenient that that's also what the Python build
script setup.py uses. So I've added a config file that makes that
default to something with 'python' in the name.
.gitignore | 2 +-
Buildscr | 92 +++++---------
Buildscr.gmp | 18 +++
CMakeLists.txt | 146 ++++++++++++++++++++++
MANIFEST.in | 2 +-
Makefile.am | 34 -----
Makefile.clangcl | 74 -----------
autogen.sh | 2 -
bigint.h | 2 +-
cmake.h.in | 7 ++
configure.ac | 72 -----------
contrib/clang-gmp-build-bin/README.txt | 15 +++
contrib/clang-gmp-build-bin/configure-gmp | 14 +++
contrib/clang-gmp-build-bin/lib | 2 +
contrib/clang-gmp-build-bin/x86_64-pc-mingw64-gcc | 3 +
main.cpp | 13 +-
manual.pl | 8 ++
setup.cfg | 8 ++
setup.py | 34 ++---
sources.mk | 11 --
spigot.h | 6 +-
21 files changed, 272 insertions(+), 293 deletions(-)
More information about the tartarus-commits
mailing list