From 0a82316e54fead8c3f1cf41d2213c868ab88f508 Mon Sep 17 00:00:00 2001 From: Akim Demaille Date: Mon, 14 Dec 2020 20:26:41 +0100 Subject: glr2.cc: example: use objects (not pointers) to represent the AST Currently we are using pointers. The whole point of glr2.cc (vs. glr.cc) is precisely to allow genuine C++ objects to be semantic values. Let's make that work. * data/skeletons/glr2.cc (glr_state::glr_state): Be sure to initialize yysval. (glr_state): Add copy-ctor, assignment and dtor. (glr_state::copyFrom): Be sure to initialize the destination if it was not. (glr_state::~glr_state): Destroy the semantic value. * examples/c++/glr/ast.hh: Rewrite so that we use genuine objects, rather than a traditional OOP hierarchy that requires to deal with pointers. With help from Bruno Belanyi . * examples/c++/glr/c++-types.yy: Remove memory management. Use true objects. (main): Don't reach yydebug directly. * examples/c++/glr/local.mk: We need C++11. --- THANKS | 1 + 1 file changed, 1 insertion(+) (limited to 'THANKS') diff --git a/THANKS b/THANKS index 195153a6..a5a99f12 100644 --- a/THANKS +++ b/THANKS @@ -34,6 +34,7 @@ Bob Rossi bob@brasko.net Brandon Lucia blucia@gmail.com Brooks Moses bmoses@google.com Bruce Lilly blilly@erols.com +Bruno Belanyi bruno.belanyi@epita.fr Bruno Haible bruno@clisp.org Charles-Henri de Boysson de-boy_c@epita.fr Christian Burger cburger@sunysb.edu -- cgit v1.2.1