Index: src/AST/module.mk
===================================================================
--- src/AST/module.mk	(revision 66d92e3cc3e75781be55e344dbdf9ca4e58f9872)
+++ src/AST/module.mk	(revision 634cb80fc3e3b71a7402430c90c46d11d098ce9c)
@@ -11,6 +11,6 @@
 ## Created On       : Thu May 09 16:05:36 2019
 ## Last Modified By : Peter A. Buhr
-## Last Modified On : Sat Dec 14 07:29:10 2019
-## Update Count     : 3
+## Last Modified On : Mon Nov 20 10:58:59 2023
+## Update Count     : 5
 ###############################################################################
 
@@ -69,3 +69,4 @@
 
 SRC += $(SRC_AST)
+
 SRCDEMANGLE += $(SRC_AST)
Index: src/SymTab/demangler.cc
===================================================================
--- src/SymTab/demangler.cc	(revision 634cb80fc3e3b71a7402430c90c46d11d098ce9c)
+++ src/SymTab/demangler.cc	(revision 634cb80fc3e3b71a7402430c90c46d11d098ce9c)
@@ -0,0 +1,25 @@
+#include "Demangle.h"
+#include <iostream>
+#include <fstream>
+
+void demangleAndPrint(const std::string & mangleName) {
+	char * demangleName = cforall_demangle(mangleName.c_str(), 0);
+	std::cout << mangleName << " => " << demangleName << std::endl;
+	free(demangleName);
+}
+
+int main(int argc, char * argv[]) {
+	char const * fileName = (1 < argc) ? argv[1] : "in-demangle.txt";
+	std::ifstream in(fileName);
+
+	std::string line;
+	while (std::getline(in, line)) {
+		if (line.empty()) {
+			std::cout << "=================================" << std::endl;
+		} else if (line[0] == '#') {
+			continue;
+		} else {
+			demangleAndPrint(line);
+		}
+	}
+}
