Date: Tuesday, February 28, 2023 @ 21:01:09 Author: jelle Revision: 1405661
archrelease: copy trunk to community-x86_64 Added: freehdl/repos/community-x86_64/PKGBUILD (from rev 1405660, freehdl/trunk/PKGBUILD) freehdl/repos/community-x86_64/acl-NULL-check.patch (from rev 1405660, freehdl/trunk/acl-NULL-check.patch) freehdl/repos/community-x86_64/build-fix.patch (from rev 1405660, freehdl/trunk/build-fix.patch) freehdl/repos/community-x86_64/cpp-modern.patch (from rev 1405660, freehdl/trunk/cpp-modern.patch) freehdl/repos/community-x86_64/declarative_region.patch (from rev 1405660, freehdl/trunk/declarative_region.patch) freehdl/repos/community-x86_64/gentoo-qa.patch (from rev 1405660, freehdl/trunk/gentoo-qa.patch) freehdl/repos/community-x86_64/gvhdl_tag_command.patch (from rev 1405660, freehdl/trunk/gvhdl_tag_command.patch) Deleted: freehdl/repos/community-x86_64/PKGBUILD freehdl/repos/community-x86_64/acl-NULL-check.patch freehdl/repos/community-x86_64/build-fix.patch freehdl/repos/community-x86_64/cpp-modern.patch freehdl/repos/community-x86_64/declarative_region.patch freehdl/repos/community-x86_64/gentoo-qa.patch freehdl/repos/community-x86_64/gvhdl_tag_command.patch --------------------------+ PKGBUILD | 116 +-- acl-NULL-check.patch | 114 +-- build-fix.patch | 262 ++++---- cpp-modern.patch | 1360 ++++++++++++++++++++++----------------------- declarative_region.patch | 24 gentoo-qa.patch | 558 +++++++++--------- gvhdl_tag_command.patch | 26 7 files changed, 1230 insertions(+), 1230 deletions(-) Deleted: PKGBUILD =================================================================== --- PKGBUILD 2023-02-28 21:00:54 UTC (rev 1405660) +++ PKGBUILD 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,58 +0,0 @@ -# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> -# Contributor: Neil Darlow <n...@darlow.co.uk> -# Contributor: Jens Maucher <def...@archlinux.us> - -pkgname=freehdl -pkgver=0.0.8 -pkgrel=12 -pkgdesc='An open-source (C++ generating) VHDL simulator' -arch=('x86_64') -url='http://freehdl.seul.org' -license=('GPL') -depends=('perl') -optdepends=('gtkwave: to view output when run standalone') -options=('libtool') -source=("https://downloads.sourceforge.net/qucs/$pkgname-$pkgver.tar.gz" - "build-fix.patch" - "cpp-modern.patch" - "acl-NULL-check.patch" - "declarative_region.patch" - "gentoo-qa.patch" - "gvhdl_tag_command.patch") -sha256sums=('7f0978f8252329450de43e98c04c15fdd8a3f2bdc5ca91f75f8f5dd280c6ed84' - '08d49fc621d48099afcbe42c99ba25474409dbe5c16748a1cd01f50c0e1bae25' - '86f35a7cb915bab69763808c59b295c15e198bb21f6383214027dd9ea7490867' - 'e59323840387514be8300f088051e60e39e73b50383958c81c19c4e4575b0094' - '5b4b23f98b666818a0d8bd484e899960c1951631c8a21928a072e19b3c1fc6e6' - 'bf1ed53f2b83e91e580c5300d157322cf70aeb955685fa91b1358f474efef5ff' - 'a7e441b42f3eae61eaff681713094fbe332d3ab8685e215e21c975eb8af60036') - -prepare() { - cd "${srcdir}"/$pkgname-$pkgver - rm ieee/math_real.cc \ - ieee/numeric_bit.cc \ - ieee/numeric_std.cc \ - ieee/std_logic_1164.cc \ - ieee/std_logic_arith.cc \ - ieee/std_logic_signed.cc \ - ieee/std_logic_unsigned.cc \ - ieee/vital_timing.cc - - #patch -p1 -i "$srcdir"/build-fix.patch - patch -p1 -i "$srcdir"/cpp-modern.patch - patch -p1 -i "$srcdir"/acl-NULL-check.patch - patch -p1 -i "$srcdir"/declarative_region.patch - patch -p1 -i "$srcdir"/gentoo-qa.patch - patch -p1 -i "$srcdir"/gvhdl_tag_command.patch -} - -build() { - cd "${srcdir}"/$pkgname-$pkgver - CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=1" ./configure --prefix=/usr - make -} - -package() { - cd "${srcdir}"/$pkgname-$pkgver - make DESTDIR="${pkgdir}" install -} Copied: freehdl/repos/community-x86_64/PKGBUILD (from rev 1405660, freehdl/trunk/PKGBUILD) =================================================================== --- PKGBUILD (rev 0) +++ PKGBUILD 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,58 @@ +# Maintainer: Sergej Pupykin <pupykin.s+a...@gmail.com> +# Contributor: Neil Darlow <n...@darlow.co.uk> +# Contributor: Jens Maucher <def...@archlinux.us> + +pkgname=freehdl +pkgver=0.0.8 +pkgrel=13 +pkgdesc='An open-source (C++ generating) VHDL simulator' +arch=('x86_64') +url='http://freehdl.seul.org' +license=('GPL') +depends=('perl') +optdepends=('gtkwave: to view output when run standalone') +options=('libtool') +source=("https://downloads.sourceforge.net/qucs/$pkgname-$pkgver.tar.gz" + "build-fix.patch" + "cpp-modern.patch" + "acl-NULL-check.patch" + "declarative_region.patch" + "gentoo-qa.patch" + "gvhdl_tag_command.patch") +sha256sums=('7f0978f8252329450de43e98c04c15fdd8a3f2bdc5ca91f75f8f5dd280c6ed84' + '08d49fc621d48099afcbe42c99ba25474409dbe5c16748a1cd01f50c0e1bae25' + '86f35a7cb915bab69763808c59b295c15e198bb21f6383214027dd9ea7490867' + 'e59323840387514be8300f088051e60e39e73b50383958c81c19c4e4575b0094' + '5b4b23f98b666818a0d8bd484e899960c1951631c8a21928a072e19b3c1fc6e6' + 'bf1ed53f2b83e91e580c5300d157322cf70aeb955685fa91b1358f474efef5ff' + 'a7e441b42f3eae61eaff681713094fbe332d3ab8685e215e21c975eb8af60036') + +prepare() { + cd "${srcdir}"/$pkgname-$pkgver + rm ieee/math_real.cc \ + ieee/numeric_bit.cc \ + ieee/numeric_std.cc \ + ieee/std_logic_1164.cc \ + ieee/std_logic_arith.cc \ + ieee/std_logic_signed.cc \ + ieee/std_logic_unsigned.cc \ + ieee/vital_timing.cc + + #patch -p1 -i "$srcdir"/build-fix.patch + patch -p1 -i "$srcdir"/cpp-modern.patch + patch -p1 -i "$srcdir"/acl-NULL-check.patch + patch -p1 -i "$srcdir"/declarative_region.patch + patch -p1 -i "$srcdir"/gentoo-qa.patch + patch -p1 -i "$srcdir"/gvhdl_tag_command.patch +} + +build() { + cd "${srcdir}"/$pkgname-$pkgver + CXXFLAGS="-D_GLIBCXX_USE_CXX11_ABI=1" ./configure --prefix=/usr + make +} + +package() { + cd "${srcdir}"/$pkgname-$pkgver + make DESTDIR="${pkgdir}" install +} Deleted: acl-NULL-check.patch =================================================================== --- acl-NULL-check.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ acl-NULL-check.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,57 +0,0 @@ ---- freehdl-0.0.8.orig/kernel/sigacl_list.cc 2002-01-02 16:20:57.000000000 +0200 -+++ freehdl-0.0.8/kernel/sigacl_list.cc 2020-03-30 00:16:36.155392220 +0300 -@@ -4,6 +4,7 @@ - sigacl_list::sigacl_list(int size) { - count = 0; - list = new _items[size]; -+ list_size = size; - } - - -@@ -18,8 +19,15 @@ - - void - sigacl_list::add(sig_info_base *s, acl *a) { -+ if (count >= list_size) -+ { -+ std::cout << "WARNING: sigacl_list::add()" << "\n" << "list index greater than list length\n" ; -+ return; -+ } -+ - list[count].signal = s; -- list[count].aclp = a->clone(); -+ if (a != NULL) list[count].aclp = a->clone(); -+ else list[count].aclp = NULL; - count++; - } - ---- freehdl-0.0.8.orig/freehdl/kernel-sigacl-list.hh 2000-02-03 16:50:59.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-sigacl-list.hh 2020-03-30 00:16:34.923370868 +0300 -@@ -20,6 +20,9 @@ - sigacl_list(int size); - ~sigacl_list(); - void add(sig_info_base *s, acl *a = NULL); -+ -+private: -+ int list_size; - }; - - ---- freehdl-0.0.8.orig/kernel/dump.cc 2006-07-19 22:35:05.000000000 +0300 -+++ freehdl-0.0.8/kernel/dump.cc 2020-03-30 00:16:36.243393745 +0300 -@@ -24,6 +24,7 @@ - dump_buffer.clean(); - dump_buffer << dumped_name; - -+ if (a != NULL) - if (!a->end()) - for (int i = 0; i < a->get_size(); i++) - dump_buffer << "(" << a->get(i) << ")"; -@@ -32,6 +33,7 @@ - reader_pointer = s->reader_pointer; - type = s->type; - -+ if (a != NULL) - if (! a->end()) { - reader_pointer = s->type->element(s->reader_pointer, a); - type = s->type->get_info(s->reader_pointer, a); Copied: freehdl/repos/community-x86_64/acl-NULL-check.patch (from rev 1405660, freehdl/trunk/acl-NULL-check.patch) =================================================================== --- acl-NULL-check.patch (rev 0) +++ acl-NULL-check.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,57 @@ +--- freehdl-0.0.8.orig/kernel/sigacl_list.cc 2002-01-02 16:20:57.000000000 +0200 ++++ freehdl-0.0.8/kernel/sigacl_list.cc 2020-03-30 00:16:36.155392220 +0300 +@@ -4,6 +4,7 @@ + sigacl_list::sigacl_list(int size) { + count = 0; + list = new _items[size]; ++ list_size = size; + } + + +@@ -18,8 +19,15 @@ + + void + sigacl_list::add(sig_info_base *s, acl *a) { ++ if (count >= list_size) ++ { ++ std::cout << "WARNING: sigacl_list::add()" << "\n" << "list index greater than list length\n" ; ++ return; ++ } ++ + list[count].signal = s; +- list[count].aclp = a->clone(); ++ if (a != NULL) list[count].aclp = a->clone(); ++ else list[count].aclp = NULL; + count++; + } + +--- freehdl-0.0.8.orig/freehdl/kernel-sigacl-list.hh 2000-02-03 16:50:59.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-sigacl-list.hh 2020-03-30 00:16:34.923370868 +0300 +@@ -20,6 +20,9 @@ + sigacl_list(int size); + ~sigacl_list(); + void add(sig_info_base *s, acl *a = NULL); ++ ++private: ++ int list_size; + }; + + +--- freehdl-0.0.8.orig/kernel/dump.cc 2006-07-19 22:35:05.000000000 +0300 ++++ freehdl-0.0.8/kernel/dump.cc 2020-03-30 00:16:36.243393745 +0300 +@@ -24,6 +24,7 @@ + dump_buffer.clean(); + dump_buffer << dumped_name; + ++ if (a != NULL) + if (!a->end()) + for (int i = 0; i < a->get_size(); i++) + dump_buffer << "(" << a->get(i) << ")"; +@@ -32,6 +33,7 @@ + reader_pointer = s->reader_pointer; + type = s->type; + ++ if (a != NULL) + if (! a->end()) { + reader_pointer = s->type->element(s->reader_pointer, a); + type = s->type->get_info(s->reader_pointer, a); Deleted: build-fix.patch =================================================================== --- build-fix.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ build-fix.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,131 +0,0 @@ -diff -wbBur freehdl-0.0.8/freehdl/kernel-db.hh freehdl-0.0.8.my/freehdl/kernel-db.hh ---- freehdl-0.0.8/freehdl/kernel-db.hh 2009-03-15 20:51:51.000000000 +0300 -+++ freehdl-0.0.8.my/freehdl/kernel-db.hh 2018-11-16 13:52:59.586301664 +0300 -@@ -254,10 +254,10 @@ - - // A hash function template used tp generate a hash number from - // d --class db_basic_key_hash : public hash<unsigned long> { -+class db_basic_key_hash : public std::hash<unsigned long> { - public: - size_t operator()(const db_basic_key& x) const { -- return (*(hash<unsigned long> *)this)(((unsigned long)x.value)>>2); -+ return (*(std::hash<unsigned long> *)this)(((unsigned long)x.value)>>2); - } - }; - -diff -wbBur freehdl-0.0.8/freehdl/kernel-util.hh freehdl-0.0.8.my/freehdl/kernel-util.hh ---- freehdl-0.0.8/freehdl/kernel-util.hh 2008-02-15 21:30:07.000000000 +0300 -+++ freehdl-0.0.8.my/freehdl/kernel-util.hh 2018-11-16 13:52:26.466302045 +0300 -@@ -24,10 +24,10 @@ - // A hash function template used tp generate a hash number from - // pointer values. - template<class T> --class pointer_hash : public hash<unsigned long> { -+class pointer_hash : public std::hash<unsigned long> { - public: - size_t operator()(const T& x) const { -- return (*(hash<unsigned long> *)this)(((unsigned long)x)>>2); -+ return (*(std::hash<unsigned long> *)this)(((unsigned long)x)>>2); - } - }; - -diff -wbBur freehdl-0.0.8/v2cc/gvhdl.in freehdl-0.0.8.my/v2cc/gvhdl.in ---- freehdl-0.0.8/v2cc/gvhdl.in 2011-03-12 16:16:47.000000000 +0300 -+++ freehdl-0.0.8.my/v2cc/gvhdl.in 2018-11-16 13:48:18.562971561 +0300 -@@ -9,7 +9,7 @@ - my $vhdl_source_name = ""; - my $source = ""; - my $includes = ""; --my $cpplibs = "-lm FREEHDL/lib/libfreehdl-kernel.la FREEHDL/lib/libfreehdl-std.la"; -+my $cpplibs = "-lm -lfreehdl-kernel -lfreehdl-std"; - my $vhdl_library = ""; # Library the design entity is compiled into - my $cpp_options = ""; - my $vhdl_options = ""; -diff -wbBur freehdl-0.0.8/v2cc/gvhdl-local freehdl-0.0.8.my/v2cc/gvhdl-local ---- freehdl-0.0.8/v2cc/gvhdl-local 2005-12-02 01:16:20.000000000 +0300 -+++ freehdl-0.0.8.my/v2cc/gvhdl-local 2018-11-16 13:48:18.562971561 +0300 -@@ -8,7 +8,7 @@ - my $vhdl_source_name = ""; - my $source = ""; - my $includes = ""; --my $cpplibs = "-lm FREEHDL/kernel/libfreehdl-kernel.la FREEHDL/std/libfreehdl-std.la"; -+my $cpplibs = "-lm -lfreehdl-kernel -lfreehdl-std"; - my $vhdl_library = ""; # Library the design entity is compiled into - my $cpp_options = "-static "; - my $vhdl_options = ""; -diff -wbBur freehdl-0.0.8/v2cc/v2cc-decl.cc freehdl-0.0.8.my/v2cc/v2cc-decl.cc ---- freehdl-0.0.8/v2cc/v2cc-decl.cc 2010-05-08 16:15:38.000000000 +0400 -+++ freehdl-0.0.8.my/v2cc/v2cc-decl.cc 2018-11-16 13:57:39.026298452 +0300 -@@ -1901,12 +1901,12 @@ - str += "class " + qid(decl, rstack, INFO) + ":public float_info_base{\n" + - "public:\n" + - " " + qid(decl, rstack, INFO) + "():float_info_base(" + -- to_string(range.left) + ","+ to_string(range.right) + "," + -- to_string(min(range.left,range.right)) + "," + to_string(max(range.left, range.right)) + ") {};\n" + -- " static floatingpoint low() { return " + to_string(min(range.left, range.right)) + "; }\n" + -- " static floatingpoint high() { return " + to_string(max(range.left, range.right)) + "; }\n" + -- " static floatingpoint left() { return " + to_string(range.left) + "; }\n" + -- " static floatingpoint right() { return " + to_string(range.right) + "; }\n" + -+ std::to_string(range.left) + ","+ std::to_string(range.right) + "," + -+ std::to_string(min(range.left,range.right)) + "," + std::to_string(max(range.left, range.right)) + ") {};\n" + -+ " static floatingpoint low() { return " + std::to_string(min(range.left, range.right)) + "; }\n" + -+ " static floatingpoint high() { return " + std::to_string(max(range.left, range.right)) + "; }\n" + -+ " static floatingpoint left() { return " + std::to_string(range.left) + "; }\n" + -+ " static floatingpoint right() { return " + std::to_string(range.right) + "; }\n" + - "};\n"; - } else { - // Integer info class definition with non static bounds (i.e., -diff -wbBur freehdl-0.0.8/v2cc/v2cc-expr.cc freehdl-0.0.8.my/v2cc/v2cc-expr.cc ---- freehdl-0.0.8/v2cc/v2cc-expr.cc 2008-02-15 21:13:46.000000000 +0300 -+++ freehdl-0.0.8.my/v2cc/v2cc-expr.cc 2018-11-16 13:57:59.986298211 +0300 -@@ -602,7 +602,7 @@ - else if (ale->value->is(IR_FLOATING_POINT_LITERAL)) - str += (folded_value(ale).original_string () != "") ? - folded_value(ale).original_string () : -- to_string (folded_value(ale).double_value ()); -+ std::to_string (folded_value(ale).double_value ()); - else - abort (); - } else -diff -wbBur freehdl-0.0.8/v2cc/v2cc-util.cc freehdl-0.0.8.my/v2cc/v2cc-util.cc ---- freehdl-0.0.8/v2cc/v2cc-util.cc 2009-04-19 02:51:38.000000000 +0400 -+++ freehdl-0.0.8.my/v2cc/v2cc-util.cc 2018-11-16 13:56:43.602965757 +0300 -@@ -137,7 +137,7 @@ - } - else if (base_type->is (IR_FLOATING_TYPE)) - { -- str = to_string (v.double_value ()); -+ str = std::to_string (v.double_value ()); - } - - return str; -@@ -536,7 +536,7 @@ - if (base_type->is(IR_ENUMERATION_TYPE)) - str += "enumeration(" + to_string(data.long_value()) + ")"; - else if (base_type->is(IR_FLOATING_TYPE)) -- str += to_string(data.double_value()); -+ str += std::to_string(data.double_value()); - else if (base_type->is(IR_PHYSICAL_TYPE)) - str += to_string(data.long_value()) + "LL"; - else if (base_type->is(IR_ARRAY_TYPE)) -@@ -568,7 +568,7 @@ - else if (base_type->is(IR_FLOATING_TYPE)) { - // Replace 'e' ein the floating point number by 'l' in order to - // match the definition of doubles in lisp. -- string result = to_string(data.double_value()); -+ string result = std::to_string(data.double_value()); - for (unsigned int i = 0; i < result.length(); i++) - if (result[i] == 'e' || - result[i] == 'E') -@@ -1772,8 +1772,8 @@ - StaticRangeDescriptor<double, IR_Direction> range = - range_des_vec[0].rangedes_to_double(rstack); - -- string left_str = to_string(range.left); -- string right_str = to_string(range.right); -+ string left_str = std::to_string(range.left); -+ string right_str = std::to_string(range.right); - if (!range.valid[1]) { - // If the range is not static then do not perform any furhter - // checks. All checks will be done at runtime. Copied: freehdl/repos/community-x86_64/build-fix.patch (from rev 1405660, freehdl/trunk/build-fix.patch) =================================================================== --- build-fix.patch (rev 0) +++ build-fix.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,131 @@ +diff -wbBur freehdl-0.0.8/freehdl/kernel-db.hh freehdl-0.0.8.my/freehdl/kernel-db.hh +--- freehdl-0.0.8/freehdl/kernel-db.hh 2009-03-15 20:51:51.000000000 +0300 ++++ freehdl-0.0.8.my/freehdl/kernel-db.hh 2018-11-16 13:52:59.586301664 +0300 +@@ -254,10 +254,10 @@ + + // A hash function template used tp generate a hash number from + // d +-class db_basic_key_hash : public hash<unsigned long> { ++class db_basic_key_hash : public std::hash<unsigned long> { + public: + size_t operator()(const db_basic_key& x) const { +- return (*(hash<unsigned long> *)this)(((unsigned long)x.value)>>2); ++ return (*(std::hash<unsigned long> *)this)(((unsigned long)x.value)>>2); + } + }; + +diff -wbBur freehdl-0.0.8/freehdl/kernel-util.hh freehdl-0.0.8.my/freehdl/kernel-util.hh +--- freehdl-0.0.8/freehdl/kernel-util.hh 2008-02-15 21:30:07.000000000 +0300 ++++ freehdl-0.0.8.my/freehdl/kernel-util.hh 2018-11-16 13:52:26.466302045 +0300 +@@ -24,10 +24,10 @@ + // A hash function template used tp generate a hash number from + // pointer values. + template<class T> +-class pointer_hash : public hash<unsigned long> { ++class pointer_hash : public std::hash<unsigned long> { + public: + size_t operator()(const T& x) const { +- return (*(hash<unsigned long> *)this)(((unsigned long)x)>>2); ++ return (*(std::hash<unsigned long> *)this)(((unsigned long)x)>>2); + } + }; + +diff -wbBur freehdl-0.0.8/v2cc/gvhdl.in freehdl-0.0.8.my/v2cc/gvhdl.in +--- freehdl-0.0.8/v2cc/gvhdl.in 2011-03-12 16:16:47.000000000 +0300 ++++ freehdl-0.0.8.my/v2cc/gvhdl.in 2018-11-16 13:48:18.562971561 +0300 +@@ -9,7 +9,7 @@ + my $vhdl_source_name = ""; + my $source = ""; + my $includes = ""; +-my $cpplibs = "-lm FREEHDL/lib/libfreehdl-kernel.la FREEHDL/lib/libfreehdl-std.la"; ++my $cpplibs = "-lm -lfreehdl-kernel -lfreehdl-std"; + my $vhdl_library = ""; # Library the design entity is compiled into + my $cpp_options = ""; + my $vhdl_options = ""; +diff -wbBur freehdl-0.0.8/v2cc/gvhdl-local freehdl-0.0.8.my/v2cc/gvhdl-local +--- freehdl-0.0.8/v2cc/gvhdl-local 2005-12-02 01:16:20.000000000 +0300 ++++ freehdl-0.0.8.my/v2cc/gvhdl-local 2018-11-16 13:48:18.562971561 +0300 +@@ -8,7 +8,7 @@ + my $vhdl_source_name = ""; + my $source = ""; + my $includes = ""; +-my $cpplibs = "-lm FREEHDL/kernel/libfreehdl-kernel.la FREEHDL/std/libfreehdl-std.la"; ++my $cpplibs = "-lm -lfreehdl-kernel -lfreehdl-std"; + my $vhdl_library = ""; # Library the design entity is compiled into + my $cpp_options = "-static "; + my $vhdl_options = ""; +diff -wbBur freehdl-0.0.8/v2cc/v2cc-decl.cc freehdl-0.0.8.my/v2cc/v2cc-decl.cc +--- freehdl-0.0.8/v2cc/v2cc-decl.cc 2010-05-08 16:15:38.000000000 +0400 ++++ freehdl-0.0.8.my/v2cc/v2cc-decl.cc 2018-11-16 13:57:39.026298452 +0300 +@@ -1901,12 +1901,12 @@ + str += "class " + qid(decl, rstack, INFO) + ":public float_info_base{\n" + + "public:\n" + + " " + qid(decl, rstack, INFO) + "():float_info_base(" + +- to_string(range.left) + ","+ to_string(range.right) + "," + +- to_string(min(range.left,range.right)) + "," + to_string(max(range.left, range.right)) + ") {};\n" + +- " static floatingpoint low() { return " + to_string(min(range.left, range.right)) + "; }\n" + +- " static floatingpoint high() { return " + to_string(max(range.left, range.right)) + "; }\n" + +- " static floatingpoint left() { return " + to_string(range.left) + "; }\n" + +- " static floatingpoint right() { return " + to_string(range.right) + "; }\n" + ++ std::to_string(range.left) + ","+ std::to_string(range.right) + "," + ++ std::to_string(min(range.left,range.right)) + "," + std::to_string(max(range.left, range.right)) + ") {};\n" + ++ " static floatingpoint low() { return " + std::to_string(min(range.left, range.right)) + "; }\n" + ++ " static floatingpoint high() { return " + std::to_string(max(range.left, range.right)) + "; }\n" + ++ " static floatingpoint left() { return " + std::to_string(range.left) + "; }\n" + ++ " static floatingpoint right() { return " + std::to_string(range.right) + "; }\n" + + "};\n"; + } else { + // Integer info class definition with non static bounds (i.e., +diff -wbBur freehdl-0.0.8/v2cc/v2cc-expr.cc freehdl-0.0.8.my/v2cc/v2cc-expr.cc +--- freehdl-0.0.8/v2cc/v2cc-expr.cc 2008-02-15 21:13:46.000000000 +0300 ++++ freehdl-0.0.8.my/v2cc/v2cc-expr.cc 2018-11-16 13:57:59.986298211 +0300 +@@ -602,7 +602,7 @@ + else if (ale->value->is(IR_FLOATING_POINT_LITERAL)) + str += (folded_value(ale).original_string () != "") ? + folded_value(ale).original_string () : +- to_string (folded_value(ale).double_value ()); ++ std::to_string (folded_value(ale).double_value ()); + else + abort (); + } else +diff -wbBur freehdl-0.0.8/v2cc/v2cc-util.cc freehdl-0.0.8.my/v2cc/v2cc-util.cc +--- freehdl-0.0.8/v2cc/v2cc-util.cc 2009-04-19 02:51:38.000000000 +0400 ++++ freehdl-0.0.8.my/v2cc/v2cc-util.cc 2018-11-16 13:56:43.602965757 +0300 +@@ -137,7 +137,7 @@ + } + else if (base_type->is (IR_FLOATING_TYPE)) + { +- str = to_string (v.double_value ()); ++ str = std::to_string (v.double_value ()); + } + + return str; +@@ -536,7 +536,7 @@ + if (base_type->is(IR_ENUMERATION_TYPE)) + str += "enumeration(" + to_string(data.long_value()) + ")"; + else if (base_type->is(IR_FLOATING_TYPE)) +- str += to_string(data.double_value()); ++ str += std::to_string(data.double_value()); + else if (base_type->is(IR_PHYSICAL_TYPE)) + str += to_string(data.long_value()) + "LL"; + else if (base_type->is(IR_ARRAY_TYPE)) +@@ -568,7 +568,7 @@ + else if (base_type->is(IR_FLOATING_TYPE)) { + // Replace 'e' ein the floating point number by 'l' in order to + // match the definition of doubles in lisp. +- string result = to_string(data.double_value()); ++ string result = std::to_string(data.double_value()); + for (unsigned int i = 0; i < result.length(); i++) + if (result[i] == 'e' || + result[i] == 'E') +@@ -1772,8 +1772,8 @@ + StaticRangeDescriptor<double, IR_Direction> range = + range_des_vec[0].rangedes_to_double(rstack); + +- string left_str = to_string(range.left); +- string right_str = to_string(range.right); ++ string left_str = std::to_string(range.left); ++ string right_str = std::to_string(range.right); + if (!range.valid[1]) { + // If the range is not static then do not perform any furhter + // checks. All checks will be done at runtime. Deleted: cpp-modern.patch =================================================================== --- cpp-modern.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ cpp-modern.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,680 +0,0 @@ -diff -Nuar freehdl-0.0.8.orig/fire/test-fire.cc freehdl-0.0.8/fire/test-fire.cc ---- freehdl-0.0.8.orig/fire/test-fire.cc 2006-02-16 10:56:22.000000000 +0200 -+++ freehdl-0.0.8/fire/test-fire.cc 2020-03-30 02:54:42.423609306 +0300 -@@ -2,7 +2,7 @@ - #include <stdio.h> - #include <freehdl/fire.h> - --using namespace std; -+using std::cout; - - extern tree_chunk_info fire_chunk_info; - -diff -Nuar freehdl-0.0.8.orig/freehdl/cdfggen-chunk.h freehdl-0.0.8/freehdl/cdfggen-chunk.h ---- freehdl-0.0.8.orig/freehdl/cdfggen-chunk.h 2009-04-27 19:31:00.000000000 +0300 -+++ freehdl-0.0.8/freehdl/cdfggen-chunk.h 2020-03-30 02:54:42.423609306 +0300 -@@ -7,7 +7,9 @@ - #include <string> - #include <vector> - typedef enum {to, downto} cdfgg_direction; --using namespace std; -+using std::string; -+using std::vector; -+using std::pair; - - extern tree_chunk_info cdfggen_chunk_info; - extern tree_ctype_info int_ctype_info; -diff -Nuar freehdl-0.0.8.orig/freehdl/cdfggen-chunk.t freehdl-0.0.8/freehdl/cdfggen-chunk.t ---- freehdl-0.0.8.orig/freehdl/cdfggen-chunk.t 2003-04-09 19:40:56.000000000 +0300 -+++ freehdl-0.0.8/freehdl/cdfggen-chunk.t 2020-03-30 02:54:42.423609306 +0300 -@@ -13,8 +13,7 @@ - (header-add "#include <freehdl/tree-supp.h>" - "#include <string>" - "#include <vector>" -- "typedef enum {to, downto} cdfgg_direction;" -- "using namespace std;") -+ "typedef enum {to, downto} cdfgg_direction;") - - (impl-add "#include <freehdl/cdfggen-chunk.h>") - -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-attributes.hh freehdl-0.0.8/freehdl/kernel-attributes.hh ---- freehdl-0.0.8.orig/freehdl/kernel-attributes.hh 2004-11-09 20:29:33.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-attributes.hh 2020-03-30 02:54:42.423609306 +0300 -@@ -1,6 +1,8 @@ - #ifndef FREEHDL_KERNEL_ATTRIBUTES_H - #define FREEHDL_KERNEL_ATTRIBUTES_H - -+using std::max; -+ - /* ************************************************************* - * Function kind attributes for signals - * ************************************************************* */ -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-db.hh freehdl-0.0.8/freehdl/kernel-db.hh ---- freehdl-0.0.8.orig/freehdl/kernel-db.hh 2009-03-15 19:51:51.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-db.hh 2020-04-22 20:56:59.646330605 +0300 -@@ -3,6 +3,11 @@ - - #include <assert.h> - -+#include <string> -+#include <vector> -+using std::string; -+using std::pair; -+using std::vector; - - /* This header file includes the definitions that are required to - * setup a kernel database. This database will be used by the kernel -@@ -39,6 +44,11 @@ - - define_db_entry_type(driver_data, driver_data_entry) - -+#include <string> -+#include <vector> -+using std::string; -+using std::pair; -+using std::vector; - - // Now, create an database explorer instance. The database explorer is - // used to search and manipulate the database. The explorer is -@@ -80,9 +90,11 @@ - #include <freehdl/kernel-util.hh> - - #if !defined __GNUC__ || __GNUC__ != 2 --#include <ext/hash_map> -+//#include <ext/hash_map> -+#include <unordered_map> - #else --#include <hash_map> -+//#include <hash_map> -+#include <unordered_map> - #endif - - // Macro used to define a key type. K is the actual type of the key -@@ -254,10 +266,10 @@ - - // A hash function template used tp generate a hash number from - // d --class db_basic_key_hash : public hash<unsigned long> { -+class db_basic_key_hash : public std::hash<unsigned long> { - public: - size_t operator()(const db_basic_key& x) const { -- return (*(hash<unsigned long> *)this)(((unsigned long)x.value)>>2); -+ return (*(std::hash<unsigned long> *)this)(((unsigned long)x.value)>>2); - } - }; - -@@ -266,7 +278,8 @@ - class db : public db_base - { - // This mappes is the actual database. -- typedef hash_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; -+ //typedef hash_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; -+ typedef std::unordered_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; - db_data_map_type data_map; - - // The transaction id is incremented each time a new key is added or -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-dump.hh freehdl-0.0.8/freehdl/kernel-dump.hh ---- freehdl-0.0.8.orig/freehdl/kernel-dump.hh 2003-04-10 18:11:23.000000000 +0300 -+++ freehdl-0.0.8/freehdl/kernel-dump.hh 2020-03-30 02:54:42.439609671 +0300 -@@ -13,9 +13,9 @@ - #include <string> - #include <fstream> - --using namespace std; -+using std::fstream; - --typedef map<string, char*, less<string> > Tmap; -+typedef map<string, const char*, less<string> > Tmap; - extern Tmap mapping_translation_table; - - // For each signal which is dumped an virtual process is created. This -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-fhdl-stream.hh freehdl-0.0.8/freehdl/kernel-fhdl-stream.hh ---- freehdl-0.0.8.orig/freehdl/kernel-fhdl-stream.hh 2005-02-15 12:02:31.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-fhdl-stream.hh 2020-03-30 02:54:42.439609671 +0300 -@@ -9,7 +9,9 @@ - #include <string> - #include <iostream> - --using namespace std; -+using std::istream; -+using std::ostream; -+using std::string; - - struct fhdl_ostream_t { - union { -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-map-list.hh freehdl-0.0.8/freehdl/kernel-map-list.hh ---- freehdl-0.0.8.orig/freehdl/kernel-map-list.hh 2003-07-08 15:17:35.000000000 +0300 -+++ freehdl-0.0.8/freehdl/kernel-map-list.hh 2020-03-30 02:54:42.439609671 +0300 -@@ -7,7 +7,6 @@ - #include <freehdl/kernel-acl.hh> - #include <freehdl/kernel-sig-info.hh> - --using namespace std; - //using namespace __gnu_cxx; - - // A signal_link instance describes the connection -@@ -163,9 +162,11 @@ - #include <list> - - #if !defined __GNUC__ || __GNUC__ != 2 --#include <ext/hash_map> -+//#include <ext/hash_map> -+#include <unordered_map> - #else --#include <hash_map> -+//#include <hash_map> -+#include <unordered_map> - #endif - - #include <freehdl/kernel-util.hh> -@@ -262,7 +263,7 @@ - }; - - --typedef hash_map<sig_info_base *, list<fl_link>, pointer_hash<sig_info_base *> > port_signal_link_map_t; -+typedef std::unordered_map<sig_info_base *, list<fl_link>, pointer_hash<sig_info_base *> > port_signal_link_map_t; - - // Stores the father signal(s) of port signals - extern port_signal_link_map_t port_signal_link_map; -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-name-stack.hh freehdl-0.0.8/freehdl/kernel-name-stack.hh ---- freehdl-0.0.8.orig/freehdl/kernel-name-stack.hh 2003-04-09 19:10:06.000000000 +0300 -+++ freehdl-0.0.8/freehdl/kernel-name-stack.hh 2020-03-30 02:54:42.439609671 +0300 -@@ -3,7 +3,7 @@ - - #include <string> - --using namespace std; -+using std::string; - - #define NAME_STACK_INCREMENT 10 - -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-signal-source-list-array.hh freehdl-0.0.8/freehdl/kernel-signal-source-list-array.hh ---- freehdl-0.0.8.orig/freehdl/kernel-signal-source-list-array.hh 2006-02-16 10:56:22.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-signal-source-list-array.hh 2020-03-30 02:54:42.439609671 +0300 -@@ -4,16 +4,17 @@ - #ifdef KERNEL - - #if !defined __GNUC__ || __GNUC__ != 2 --#include <ext/hash_map> -+//#include <ext/hash_map> -+#include <unordered_map> - #else --#include <hash_map> -+//#include <hash_map> -+#include <unordered_map> - #endif - - #include <list> - #include <freehdl/kernel-util.hh> - #include <freehdl/kernel-source-descriptor.hh> - --using namespace std; - //using namespace __gnu_cxx; - - // signal_source stores information about a source of a signal. Note -@@ -105,7 +106,7 @@ - // a map stores the sources for each signal. Note that each signal is - // associated with a vector of signal_source_list pointers (included - // in signal_source_list_array). --typedef hash_map<sig_info_base *, signal_source_list_array, pointer_hash<sig_info_base *> > signal_source_map_t; -+typedef std::unordered_map<sig_info_base *, signal_source_list_array, pointer_hash<sig_info_base *> > signal_source_map_t; - extern signal_source_map_t signal_source_map; - - #endif -diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-util.hh freehdl-0.0.8/freehdl/kernel-util.hh ---- freehdl-0.0.8.orig/freehdl/kernel-util.hh 2008-02-15 20:30:07.000000000 +0200 -+++ freehdl-0.0.8/freehdl/kernel-util.hh 2020-04-22 20:36:48.558615436 +0300 -@@ -10,24 +10,28 @@ - #include <string> - - #if !defined __GNUC__ || __GNUC__ != 2 --#include <ext/hash_map> -+//#include <ext/hash_map> -+#include <unordered_map> - #else --#include <hash_map> -+//#include <hash_map> -+#include <unordered_map> - #endif - --using namespace std; -+using std::stringstream; -+using std::string; -+ - - #if !defined __GNUC__ || __GNUC__ != 2 --using namespace __gnu_cxx; -+//using namespace __gnu_cxx; - #endif - - // A hash function template used tp generate a hash number from - // pointer values. - template<class T> --class pointer_hash : public hash<unsigned long> { -+class pointer_hash : public std::hash<unsigned long> { - public: - size_t operator()(const T& x) const { -- return (*(hash<unsigned long> *)this)(((unsigned long)x)>>2); -+ return (*(std::hash<unsigned long> *)this)(((unsigned long)x)>>2); - } - }; - -diff -Nuar freehdl-0.0.8.orig/freehdl/std.h freehdl-0.0.8/freehdl/std.h ---- freehdl-0.0.8.orig/freehdl/std.h 2003-04-09 19:10:06.000000000 +0300 -+++ freehdl-0.0.8/freehdl/std.h 2020-03-30 02:54:42.439609671 +0300 -@@ -1,7 +1,6 @@ - #ifndef FREEHDL_STD_H - #define FREEHDL_STD_H - --using namespace std; - - #include <freehdl/std-standard.hh> - #include <freehdl/std-vhdl-types.hh> -diff -Nuar freehdl-0.0.8.orig/freehdl/std-vhdl-types.hh freehdl-0.0.8/freehdl/std-vhdl-types.hh ---- freehdl-0.0.8.orig/freehdl/std-vhdl-types.hh 2008-02-15 18:31:41.000000000 +0200 -+++ freehdl-0.0.8/freehdl/std-vhdl-types.hh 2020-03-30 02:54:42.443609762 +0300 -@@ -6,13 +6,24 @@ - #include <float.h> - #include <math.h> - #include <iostream> -+#include <map> -+#include <list> -+#include <functional> - #include <string.h> - - #include <freehdl/std-memory.hh> - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-acl.hh> - --using namespace std; -+using std::string; -+using std::istream; -+using std::ostream; -+using std::min; -+using std::map; -+using std::stringstream; -+using std::list; -+using std::less; -+using std::iostream; - - typedef long long int lint; - const int BUFFER_STREAM_SIZE_INCREMENT = 1024; -diff -Nuar freehdl-0.0.8.orig/freehdl/vaul-lexer.h freehdl-0.0.8/freehdl/vaul-lexer.h ---- freehdl-0.0.8.orig/freehdl/vaul-lexer.h 2009-04-21 22:37:36.000000000 +0300 -+++ freehdl-0.0.8/freehdl/vaul-lexer.h 2020-03-30 02:54:42.443609762 +0300 -@@ -32,7 +32,6 @@ - #include <stdarg.h> - #include <string.h> - --using namespace std; - - #undef yyFlexLexer - #define yyFlexLexer vaul_FlexLexer -diff -Nuar freehdl-0.0.8.orig/kernel/attributes.cc freehdl-0.0.8/kernel/attributes.cc ---- freehdl-0.0.8.orig/kernel/attributes.cc 2004-11-09 20:29:33.000000000 +0200 -+++ freehdl-0.0.8/kernel/attributes.cc 2020-03-30 02:54:42.443609762 +0300 -@@ -5,6 +5,7 @@ - #include <freehdl/kernel-kernel-class.hh> - #include <freehdl/kernel-reader-info.hh> - #include <freehdl/kernel-driver-info.hh> -+using std::max; - #include <freehdl/kernel-attributes.hh> - - -diff -Nuar freehdl-0.0.8.orig/kernel/db.cc freehdl-0.0.8/kernel/db.cc ---- freehdl-0.0.8.orig/kernel/db.cc 2005-05-04 17:44:11.000000000 +0300 -+++ freehdl-0.0.8/kernel/db.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -1,6 +1,5 @@ - #define KERNEL // Include internal kernel definitions - --using namespace std; - #include <freehdl/kernel-db.hh> - - -diff -Nuar freehdl-0.0.8.orig/kernel/fhdl_stream.cc freehdl-0.0.8/kernel/fhdl_stream.cc ---- freehdl-0.0.8.orig/kernel/fhdl_stream.cc 2006-01-12 10:05:01.000000000 +0200 -+++ freehdl-0.0.8/kernel/fhdl_stream.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -7,6 +7,9 @@ - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-fhdl-stream.hh> - -+using std::cin; -+using std::cout; -+using std::stringstream; - - // Error stream to output error messages generated by the kernel, - // e.g. to print error messages due to invalid simulator commands -diff -Nuar freehdl-0.0.8.orig/kernel/kernel_class.cc freehdl-0.0.8/kernel/kernel_class.cc ---- freehdl-0.0.8.orig/kernel/kernel_class.cc 2009-10-11 19:34:19.000000000 +0300 -+++ freehdl-0.0.8/kernel/kernel_class.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -15,6 +15,15 @@ - #include <freehdl/kernel-resolver-process.hh> - #include <freehdl/kernel-resolver-descriptor.hh> - #include <freehdl/kernel-fhdl-stream.hh> -+#include <algorithm> -+ -+using std::cerr; -+using std::pair; -+using std::binary_function; -+ -+using std::cerr; -+using std::pair; -+using std::binary_function; - - // Arguments that are passed in form the command line - int main_argc; -@@ -678,7 +687,7 @@ - // list associated with the various reader infos. Identical lists - // are replaced by appropriate pointers to a single list in order to - // save memory. -- typedef hash_multimap<unsigned int, reader_info *> wait_elements_map_t; -+ typedef std::unordered_multimap<unsigned int, reader_info *> wait_elements_map_t; - wait_elements_map_t wait_elements_map; - - // Setup connection to the kernel data base -diff -Nuar freehdl-0.0.8.orig/kernel/main.cc freehdl-0.0.8/kernel/main.cc ---- freehdl-0.0.8.orig/kernel/main.cc 2009-03-15 20:48:13.000000000 +0200 -+++ freehdl-0.0.8/kernel/main.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -34,6 +34,15 @@ - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-fhdl-stream.hh> - -+using std::ios; -+using std::ifstream; -+using std::ofstream; -+using std::ostringstream; -+using std::cin; -+using std::cerr; -+using std::cout; -+using std::endl; -+ - #ifdef PERFMON_STATISTICS - #include "pcounter.hh" - #endif -diff -Nuar freehdl-0.0.8.orig/kernel/map_list.cc freehdl-0.0.8/kernel/map_list.cc ---- freehdl-0.0.8.orig/kernel/map_list.cc 2006-02-16 10:56:22.000000000 +0200 -+++ freehdl-0.0.8/kernel/map_list.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -3,6 +3,12 @@ - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-sig-info.hh> - #include <freehdl/kernel-resolver-descriptor.hh> -+#include <algorithm> -+ -+ -+using std::max; -+ -+using std::max; - - // Stores the father signal(s) of port signals - port_signal_link_map_t port_signal_link_map; -diff -Nuar freehdl-0.0.8.orig/kernel/name_stack.cc freehdl-0.0.8/kernel/name_stack.cc ---- freehdl-0.0.8.orig/kernel/name_stack.cc 2000-09-20 11:41:14.000000000 +0300 -+++ freehdl-0.0.8/kernel/name_stack.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -1,8 +1,10 @@ - #include <stdlib.h> - #include <stdio.h> -+#include <stack> - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-name-stack.hh> - -+using std::stack; - - name_stack instance_name; - -diff -Nuar freehdl-0.0.8.orig/kernel/persistent_cdfg_dump.cc freehdl-0.0.8/kernel/persistent_cdfg_dump.cc ---- freehdl-0.0.8.orig/kernel/persistent_cdfg_dump.cc 2006-02-16 10:56:22.000000000 +0200 -+++ freehdl-0.0.8/kernel/persistent_cdfg_dump.cc 2020-03-30 02:54:42.447609853 +0300 -@@ -3,6 +3,7 @@ - #include <freehdl/kernel-persistent-cdfg-dump.hh> - #include <freehdl/kernel-persistent-dump.hh> - -+using std::endl; - - buffer_stream register_cdfg_tmp_buffer; - -diff -Nuar freehdl-0.0.8.orig/kernel/sig_info.cc freehdl-0.0.8/kernel/sig_info.cc ---- freehdl-0.0.8.orig/kernel/sig_info.cc 2009-03-15 20:23:09.000000000 +0200 -+++ freehdl-0.0.8/kernel/sig_info.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -1,6 +1,5 @@ - #define KERNEL // Include internal kernel definitions - --using namespace std; - #include <freehdl/kernel-error.hh> - #include <freehdl/kernel-db.hh> - #include <freehdl/kernel-sig-info.hh> -diff -Nuar freehdl-0.0.8.orig/std/internal_textio.cc freehdl-0.0.8/std/internal_textio.cc ---- freehdl-0.0.8.orig/std/internal_textio.cc 2006-01-26 09:41:24.000000000 +0200 -+++ freehdl-0.0.8/std/internal_textio.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -10,6 +10,10 @@ - #include <freehdl/kernel-name-stack.hh> - #include <freehdl/kernel-register.hh> - -+using std::ios; -+using std::cin; -+using std::cout; -+ - /* package :std:textio */ - - /* Definitions for access type :std:textio:line */ -diff -Nuar freehdl-0.0.8.orig/std/vhdl_types.cc freehdl-0.0.8/std/vhdl_types.cc ---- freehdl-0.0.8.orig/std/vhdl_types.cc 2009-03-15 20:56:57.000000000 +0200 -+++ freehdl-0.0.8/std/vhdl_types.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -12,6 +12,9 @@ - #include <freehdl/kernel-register.hh> - - -+using std::ios; -+using std::ifstream; -+using std::ofstream; - - /* ************************************************************* - * Some global functions -diff -Nuar freehdl-0.0.8.orig/v2cc/mapping.cc freehdl-0.0.8/v2cc/mapping.cc ---- freehdl-0.0.8.orig/v2cc/mapping.cc 2008-02-15 20:11:15.000000000 +0200 -+++ freehdl-0.0.8/v2cc/mapping.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -34,7 +34,12 @@ - #include <iostream> - #include <stdlib.h> - --using namespace std; -+using std::string; -+using std::list; -+using std::map; -+using std::istream; -+using std::ifstream; -+using std::cerr; - - v2cc_mapper::v2cc_mapper () - { -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc.cc freehdl-0.0.8/v2cc/v2cc.cc ---- freehdl-0.0.8.orig/v2cc/v2cc.cc 2010-04-13 22:43:30.000000000 +0300 -+++ freehdl-0.0.8/v2cc/v2cc.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -35,7 +35,6 @@ - - */ - --using namespace std; - - #if HAVE_MALLOC_H - #include <malloc.h> -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-const-fold.cc freehdl-0.0.8/v2cc/v2cc-const-fold.cc ---- freehdl-0.0.8.orig/v2cc/v2cc-const-fold.cc 2008-02-15 20:13:19.000000000 +0200 -+++ freehdl-0.0.8/v2cc/v2cc-const-fold.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -16,6 +16,9 @@ - #include "v2cc-util.h" - - -+using std::cerr; -+using std::max; -+using std::min; - - // Used to generate error messages - extern vaul_error_printer codegen_error; -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-decl.cc freehdl-0.0.8/v2cc/v2cc-decl.cc ---- freehdl-0.0.8.orig/v2cc/v2cc-decl.cc 2010-05-08 15:15:38.000000000 +0300 -+++ freehdl-0.0.8/v2cc/v2cc-decl.cc 2020-03-30 02:54:42.451609945 +0300 -@@ -13,6 +13,9 @@ - #include "mapping.h" - #include "v2cc-util.h" - -+using std::endl; -+using std::min; -+using std::max; - - void test (RegionStack &rstack) - { -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-explore.cc freehdl-0.0.8/v2cc/v2cc-explore.cc ---- freehdl-0.0.8.orig/v2cc/v2cc-explore.cc 2010-04-12 21:40:40.000000000 +0300 -+++ freehdl-0.0.8/v2cc/v2cc-explore.cc 2020-03-30 02:54:42.455610036 +0300 -@@ -15,7 +15,6 @@ - #include "mapping.h" - #include "v2cc-util.h" - --using namespace std; - - // Used to generate error messages - extern vaul_error_printer codegen_error; -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc.h freehdl-0.0.8/v2cc/v2cc.h ---- freehdl-0.0.8.orig/v2cc/v2cc.h 2006-03-17 11:22:55.000000000 +0200 -+++ freehdl-0.0.8/v2cc/v2cc.h 2020-03-30 02:54:42.463610219 +0300 -@@ -1,7 +1,17 @@ - #ifndef V2CC_HEADER - #define V2CC_HEADER - --using namespace std; -+using std::vector; -+using std::list; -+using std::string; -+using std::pair; -+using std::string; -+using std::set; -+using std::less; -+using std::deque; -+using std::binary_function; -+using std::map; -+using std::binary_function; - - #include <freehdl/vaul.h> - #include "mapping.h" -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-qid.cc freehdl-0.0.8/v2cc/v2cc-qid.cc ---- freehdl-0.0.8.orig/v2cc/v2cc-qid.cc 2006-02-16 10:56:22.000000000 +0200 -+++ freehdl-0.0.8/v2cc/v2cc-qid.cc 2020-03-30 02:54:42.463610219 +0300 -@@ -4,6 +4,7 @@ - #include "v2cc-util.h" - - -+using std::endl; - - // ****************************************************************************************** - // Name: m_qid , generic function -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-util.cc freehdl-0.0.8/v2cc/v2cc-util.cc ---- freehdl-0.0.8.orig/v2cc/v2cc-util.cc 2009-04-19 01:51:38.000000000 +0300 -+++ freehdl-0.0.8/v2cc/v2cc-util.cc 2020-03-30 02:54:42.463610219 +0300 -@@ -9,6 +9,9 @@ - - #include "v2cc-util.h" - -+using std::endl; -+using std::hex; -+using std::dec; - - // ****************************************************************************************** - // Some global variables -diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-util.h freehdl-0.0.8/v2cc/v2cc-util.h ---- freehdl-0.0.8.orig/v2cc/v2cc-util.h 2007-10-23 23:13:29.000000000 +0300 -+++ freehdl-0.0.8/v2cc/v2cc-util.h 2020-03-30 02:55:06.160150752 +0300 -@@ -2,12 +2,19 @@ - #ifndef V2CC_UTIL_H - #define V2CC_UTIL_H - --using namespace std; - - #include <sstream> - #include <iomanip> - #include <freehdl/vaul.h> - #include "v2cc-chunk.h" -+#include <type_traits> -+ -+using std::stringstream; -+using std::setprecision; -+using std::showpoint; -+using std::ofstream; -+using std::cout; -+using std::to_string; - - // ****************************************************************************************** - // Some global variables -@@ -242,7 +249,8 @@ - - /* Convert an integer value into a string */ - template <class T> --inline string -+//inline string -+inline typename std::enable_if<!std::is_floating_point<T>::value, std::string>::type - to_string(T i) - { - stringstream lstr; -@@ -250,6 +258,8 @@ - return lstr.str(); - } - -+ -+/* - inline string - to_string(double i) - { -@@ -266,6 +276,7 @@ - return str + ".0"; - #endif - } -+*/ - - /* Print scalar value into a string */ - string -diff -Nuar freehdl-0.0.8.orig/vaul/bison-parser.cc freehdl-0.0.8/vaul/bison-parser.cc ---- freehdl-0.0.8.orig/vaul/bison-parser.cc 2009-10-11 19:24:48.000000000 +0300 -+++ freehdl-0.0.8/vaul/bison-parser.cc 2020-03-30 02:54:42.467610310 +0300 -@@ -86,7 +86,6 @@ - #include <malloc.h> - #endif - --using namespace std; - - #define YYINITDEPTH 10000 - #define YYMAXDEPTH 100000 -diff -Nuar freehdl-0.0.8.orig/vaul/bison-parser.yy freehdl-0.0.8/vaul/bison-parser.yy ---- freehdl-0.0.8.orig/vaul/bison-parser.yy 2006-02-16 10:56:23.000000000 +0200 -+++ freehdl-0.0.8/vaul/bison-parser.yy 2020-03-30 02:54:42.471610401 +0300 -@@ -49,7 +49,6 @@ - #include <malloc.h> - #endif - --using namespace std; - - #define YYINITDEPTH 10000 - #define YYMAXDEPTH 100000 -diff -Nuar freehdl-0.0.8.orig/vaul/printer.cc freehdl-0.0.8/vaul/printer.cc ---- freehdl-0.0.8.orig/vaul/printer.cc 2007-10-23 23:52:52.000000000 +0300 -+++ freehdl-0.0.8/vaul/printer.cc 2020-03-30 02:54:42.471610401 +0300 -@@ -27,7 +27,8 @@ - #include <string.h> - #include <sstream> - --using namespace std; -+using std::ostringstream; -+using std::ostream; - - void vaul_printer::printf (const char *fmt, ...) - { -diff -Nuar freehdl-0.0.8.orig/vaul/tree.cc freehdl-0.0.8/vaul/tree.cc ---- freehdl-0.0.8.orig/vaul/tree.cc 2005-02-28 19:40:13.000000000 +0200 -+++ freehdl-0.0.8/vaul/tree.cc 2020-03-30 02:54:42.471610401 +0300 -@@ -31,7 +31,7 @@ - #include <assert.h> - #include <stdlib.h> - --using namespace std; -+using std::ostream; - - vaul_id_set::vaul_id_set(int dummy) - { Copied: freehdl/repos/community-x86_64/cpp-modern.patch (from rev 1405660, freehdl/trunk/cpp-modern.patch) =================================================================== --- cpp-modern.patch (rev 0) +++ cpp-modern.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,680 @@ +diff -Nuar freehdl-0.0.8.orig/fire/test-fire.cc freehdl-0.0.8/fire/test-fire.cc +--- freehdl-0.0.8.orig/fire/test-fire.cc 2006-02-16 10:56:22.000000000 +0200 ++++ freehdl-0.0.8/fire/test-fire.cc 2020-03-30 02:54:42.423609306 +0300 +@@ -2,7 +2,7 @@ + #include <stdio.h> + #include <freehdl/fire.h> + +-using namespace std; ++using std::cout; + + extern tree_chunk_info fire_chunk_info; + +diff -Nuar freehdl-0.0.8.orig/freehdl/cdfggen-chunk.h freehdl-0.0.8/freehdl/cdfggen-chunk.h +--- freehdl-0.0.8.orig/freehdl/cdfggen-chunk.h 2009-04-27 19:31:00.000000000 +0300 ++++ freehdl-0.0.8/freehdl/cdfggen-chunk.h 2020-03-30 02:54:42.423609306 +0300 +@@ -7,7 +7,9 @@ + #include <string> + #include <vector> + typedef enum {to, downto} cdfgg_direction; +-using namespace std; ++using std::string; ++using std::vector; ++using std::pair; + + extern tree_chunk_info cdfggen_chunk_info; + extern tree_ctype_info int_ctype_info; +diff -Nuar freehdl-0.0.8.orig/freehdl/cdfggen-chunk.t freehdl-0.0.8/freehdl/cdfggen-chunk.t +--- freehdl-0.0.8.orig/freehdl/cdfggen-chunk.t 2003-04-09 19:40:56.000000000 +0300 ++++ freehdl-0.0.8/freehdl/cdfggen-chunk.t 2020-03-30 02:54:42.423609306 +0300 +@@ -13,8 +13,7 @@ + (header-add "#include <freehdl/tree-supp.h>" + "#include <string>" + "#include <vector>" +- "typedef enum {to, downto} cdfgg_direction;" +- "using namespace std;") ++ "typedef enum {to, downto} cdfgg_direction;") + + (impl-add "#include <freehdl/cdfggen-chunk.h>") + +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-attributes.hh freehdl-0.0.8/freehdl/kernel-attributes.hh +--- freehdl-0.0.8.orig/freehdl/kernel-attributes.hh 2004-11-09 20:29:33.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-attributes.hh 2020-03-30 02:54:42.423609306 +0300 +@@ -1,6 +1,8 @@ + #ifndef FREEHDL_KERNEL_ATTRIBUTES_H + #define FREEHDL_KERNEL_ATTRIBUTES_H + ++using std::max; ++ + /* ************************************************************* + * Function kind attributes for signals + * ************************************************************* */ +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-db.hh freehdl-0.0.8/freehdl/kernel-db.hh +--- freehdl-0.0.8.orig/freehdl/kernel-db.hh 2009-03-15 19:51:51.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-db.hh 2020-04-22 20:56:59.646330605 +0300 +@@ -3,6 +3,11 @@ + + #include <assert.h> + ++#include <string> ++#include <vector> ++using std::string; ++using std::pair; ++using std::vector; + + /* This header file includes the definitions that are required to + * setup a kernel database. This database will be used by the kernel +@@ -39,6 +44,11 @@ + + define_db_entry_type(driver_data, driver_data_entry) + ++#include <string> ++#include <vector> ++using std::string; ++using std::pair; ++using std::vector; + + // Now, create an database explorer instance. The database explorer is + // used to search and manipulate the database. The explorer is +@@ -80,9 +90,11 @@ + #include <freehdl/kernel-util.hh> + + #if !defined __GNUC__ || __GNUC__ != 2 +-#include <ext/hash_map> ++//#include <ext/hash_map> ++#include <unordered_map> + #else +-#include <hash_map> ++//#include <hash_map> ++#include <unordered_map> + #endif + + // Macro used to define a key type. K is the actual type of the key +@@ -254,10 +266,10 @@ + + // A hash function template used tp generate a hash number from + // d +-class db_basic_key_hash : public hash<unsigned long> { ++class db_basic_key_hash : public std::hash<unsigned long> { + public: + size_t operator()(const db_basic_key& x) const { +- return (*(hash<unsigned long> *)this)(((unsigned long)x.value)>>2); ++ return (*(std::hash<unsigned long> *)this)(((unsigned long)x.value)>>2); + } + }; + +@@ -266,7 +278,8 @@ + class db : public db_base + { + // This mappes is the actual database. +- typedef hash_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; ++ //typedef hash_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; ++ typedef std::unordered_map<void*, db_key_entry_pair, db_basic_key_hash> db_data_map_type; + db_data_map_type data_map; + + // The transaction id is incremented each time a new key is added or +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-dump.hh freehdl-0.0.8/freehdl/kernel-dump.hh +--- freehdl-0.0.8.orig/freehdl/kernel-dump.hh 2003-04-10 18:11:23.000000000 +0300 ++++ freehdl-0.0.8/freehdl/kernel-dump.hh 2020-03-30 02:54:42.439609671 +0300 +@@ -13,9 +13,9 @@ + #include <string> + #include <fstream> + +-using namespace std; ++using std::fstream; + +-typedef map<string, char*, less<string> > Tmap; ++typedef map<string, const char*, less<string> > Tmap; + extern Tmap mapping_translation_table; + + // For each signal which is dumped an virtual process is created. This +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-fhdl-stream.hh freehdl-0.0.8/freehdl/kernel-fhdl-stream.hh +--- freehdl-0.0.8.orig/freehdl/kernel-fhdl-stream.hh 2005-02-15 12:02:31.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-fhdl-stream.hh 2020-03-30 02:54:42.439609671 +0300 +@@ -9,7 +9,9 @@ + #include <string> + #include <iostream> + +-using namespace std; ++using std::istream; ++using std::ostream; ++using std::string; + + struct fhdl_ostream_t { + union { +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-map-list.hh freehdl-0.0.8/freehdl/kernel-map-list.hh +--- freehdl-0.0.8.orig/freehdl/kernel-map-list.hh 2003-07-08 15:17:35.000000000 +0300 ++++ freehdl-0.0.8/freehdl/kernel-map-list.hh 2020-03-30 02:54:42.439609671 +0300 +@@ -7,7 +7,6 @@ + #include <freehdl/kernel-acl.hh> + #include <freehdl/kernel-sig-info.hh> + +-using namespace std; + //using namespace __gnu_cxx; + + // A signal_link instance describes the connection +@@ -163,9 +162,11 @@ + #include <list> + + #if !defined __GNUC__ || __GNUC__ != 2 +-#include <ext/hash_map> ++//#include <ext/hash_map> ++#include <unordered_map> + #else +-#include <hash_map> ++//#include <hash_map> ++#include <unordered_map> + #endif + + #include <freehdl/kernel-util.hh> +@@ -262,7 +263,7 @@ + }; + + +-typedef hash_map<sig_info_base *, list<fl_link>, pointer_hash<sig_info_base *> > port_signal_link_map_t; ++typedef std::unordered_map<sig_info_base *, list<fl_link>, pointer_hash<sig_info_base *> > port_signal_link_map_t; + + // Stores the father signal(s) of port signals + extern port_signal_link_map_t port_signal_link_map; +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-name-stack.hh freehdl-0.0.8/freehdl/kernel-name-stack.hh +--- freehdl-0.0.8.orig/freehdl/kernel-name-stack.hh 2003-04-09 19:10:06.000000000 +0300 ++++ freehdl-0.0.8/freehdl/kernel-name-stack.hh 2020-03-30 02:54:42.439609671 +0300 +@@ -3,7 +3,7 @@ + + #include <string> + +-using namespace std; ++using std::string; + + #define NAME_STACK_INCREMENT 10 + +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-signal-source-list-array.hh freehdl-0.0.8/freehdl/kernel-signal-source-list-array.hh +--- freehdl-0.0.8.orig/freehdl/kernel-signal-source-list-array.hh 2006-02-16 10:56:22.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-signal-source-list-array.hh 2020-03-30 02:54:42.439609671 +0300 +@@ -4,16 +4,17 @@ + #ifdef KERNEL + + #if !defined __GNUC__ || __GNUC__ != 2 +-#include <ext/hash_map> ++//#include <ext/hash_map> ++#include <unordered_map> + #else +-#include <hash_map> ++//#include <hash_map> ++#include <unordered_map> + #endif + + #include <list> + #include <freehdl/kernel-util.hh> + #include <freehdl/kernel-source-descriptor.hh> + +-using namespace std; + //using namespace __gnu_cxx; + + // signal_source stores information about a source of a signal. Note +@@ -105,7 +106,7 @@ + // a map stores the sources for each signal. Note that each signal is + // associated with a vector of signal_source_list pointers (included + // in signal_source_list_array). +-typedef hash_map<sig_info_base *, signal_source_list_array, pointer_hash<sig_info_base *> > signal_source_map_t; ++typedef std::unordered_map<sig_info_base *, signal_source_list_array, pointer_hash<sig_info_base *> > signal_source_map_t; + extern signal_source_map_t signal_source_map; + + #endif +diff -Nuar freehdl-0.0.8.orig/freehdl/kernel-util.hh freehdl-0.0.8/freehdl/kernel-util.hh +--- freehdl-0.0.8.orig/freehdl/kernel-util.hh 2008-02-15 20:30:07.000000000 +0200 ++++ freehdl-0.0.8/freehdl/kernel-util.hh 2020-04-22 20:36:48.558615436 +0300 +@@ -10,24 +10,28 @@ + #include <string> + + #if !defined __GNUC__ || __GNUC__ != 2 +-#include <ext/hash_map> ++//#include <ext/hash_map> ++#include <unordered_map> + #else +-#include <hash_map> ++//#include <hash_map> ++#include <unordered_map> + #endif + +-using namespace std; ++using std::stringstream; ++using std::string; ++ + + #if !defined __GNUC__ || __GNUC__ != 2 +-using namespace __gnu_cxx; ++//using namespace __gnu_cxx; + #endif + + // A hash function template used tp generate a hash number from + // pointer values. + template<class T> +-class pointer_hash : public hash<unsigned long> { ++class pointer_hash : public std::hash<unsigned long> { + public: + size_t operator()(const T& x) const { +- return (*(hash<unsigned long> *)this)(((unsigned long)x)>>2); ++ return (*(std::hash<unsigned long> *)this)(((unsigned long)x)>>2); + } + }; + +diff -Nuar freehdl-0.0.8.orig/freehdl/std.h freehdl-0.0.8/freehdl/std.h +--- freehdl-0.0.8.orig/freehdl/std.h 2003-04-09 19:10:06.000000000 +0300 ++++ freehdl-0.0.8/freehdl/std.h 2020-03-30 02:54:42.439609671 +0300 +@@ -1,7 +1,6 @@ + #ifndef FREEHDL_STD_H + #define FREEHDL_STD_H + +-using namespace std; + + #include <freehdl/std-standard.hh> + #include <freehdl/std-vhdl-types.hh> +diff -Nuar freehdl-0.0.8.orig/freehdl/std-vhdl-types.hh freehdl-0.0.8/freehdl/std-vhdl-types.hh +--- freehdl-0.0.8.orig/freehdl/std-vhdl-types.hh 2008-02-15 18:31:41.000000000 +0200 ++++ freehdl-0.0.8/freehdl/std-vhdl-types.hh 2020-03-30 02:54:42.443609762 +0300 +@@ -6,13 +6,24 @@ + #include <float.h> + #include <math.h> + #include <iostream> ++#include <map> ++#include <list> ++#include <functional> + #include <string.h> + + #include <freehdl/std-memory.hh> + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-acl.hh> + +-using namespace std; ++using std::string; ++using std::istream; ++using std::ostream; ++using std::min; ++using std::map; ++using std::stringstream; ++using std::list; ++using std::less; ++using std::iostream; + + typedef long long int lint; + const int BUFFER_STREAM_SIZE_INCREMENT = 1024; +diff -Nuar freehdl-0.0.8.orig/freehdl/vaul-lexer.h freehdl-0.0.8/freehdl/vaul-lexer.h +--- freehdl-0.0.8.orig/freehdl/vaul-lexer.h 2009-04-21 22:37:36.000000000 +0300 ++++ freehdl-0.0.8/freehdl/vaul-lexer.h 2020-03-30 02:54:42.443609762 +0300 +@@ -32,7 +32,6 @@ + #include <stdarg.h> + #include <string.h> + +-using namespace std; + + #undef yyFlexLexer + #define yyFlexLexer vaul_FlexLexer +diff -Nuar freehdl-0.0.8.orig/kernel/attributes.cc freehdl-0.0.8/kernel/attributes.cc +--- freehdl-0.0.8.orig/kernel/attributes.cc 2004-11-09 20:29:33.000000000 +0200 ++++ freehdl-0.0.8/kernel/attributes.cc 2020-03-30 02:54:42.443609762 +0300 +@@ -5,6 +5,7 @@ + #include <freehdl/kernel-kernel-class.hh> + #include <freehdl/kernel-reader-info.hh> + #include <freehdl/kernel-driver-info.hh> ++using std::max; + #include <freehdl/kernel-attributes.hh> + + +diff -Nuar freehdl-0.0.8.orig/kernel/db.cc freehdl-0.0.8/kernel/db.cc +--- freehdl-0.0.8.orig/kernel/db.cc 2005-05-04 17:44:11.000000000 +0300 ++++ freehdl-0.0.8/kernel/db.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -1,6 +1,5 @@ + #define KERNEL // Include internal kernel definitions + +-using namespace std; + #include <freehdl/kernel-db.hh> + + +diff -Nuar freehdl-0.0.8.orig/kernel/fhdl_stream.cc freehdl-0.0.8/kernel/fhdl_stream.cc +--- freehdl-0.0.8.orig/kernel/fhdl_stream.cc 2006-01-12 10:05:01.000000000 +0200 ++++ freehdl-0.0.8/kernel/fhdl_stream.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -7,6 +7,9 @@ + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-fhdl-stream.hh> + ++using std::cin; ++using std::cout; ++using std::stringstream; + + // Error stream to output error messages generated by the kernel, + // e.g. to print error messages due to invalid simulator commands +diff -Nuar freehdl-0.0.8.orig/kernel/kernel_class.cc freehdl-0.0.8/kernel/kernel_class.cc +--- freehdl-0.0.8.orig/kernel/kernel_class.cc 2009-10-11 19:34:19.000000000 +0300 ++++ freehdl-0.0.8/kernel/kernel_class.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -15,6 +15,15 @@ + #include <freehdl/kernel-resolver-process.hh> + #include <freehdl/kernel-resolver-descriptor.hh> + #include <freehdl/kernel-fhdl-stream.hh> ++#include <algorithm> ++ ++using std::cerr; ++using std::pair; ++using std::binary_function; ++ ++using std::cerr; ++using std::pair; ++using std::binary_function; + + // Arguments that are passed in form the command line + int main_argc; +@@ -678,7 +687,7 @@ + // list associated with the various reader infos. Identical lists + // are replaced by appropriate pointers to a single list in order to + // save memory. +- typedef hash_multimap<unsigned int, reader_info *> wait_elements_map_t; ++ typedef std::unordered_multimap<unsigned int, reader_info *> wait_elements_map_t; + wait_elements_map_t wait_elements_map; + + // Setup connection to the kernel data base +diff -Nuar freehdl-0.0.8.orig/kernel/main.cc freehdl-0.0.8/kernel/main.cc +--- freehdl-0.0.8.orig/kernel/main.cc 2009-03-15 20:48:13.000000000 +0200 ++++ freehdl-0.0.8/kernel/main.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -34,6 +34,15 @@ + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-fhdl-stream.hh> + ++using std::ios; ++using std::ifstream; ++using std::ofstream; ++using std::ostringstream; ++using std::cin; ++using std::cerr; ++using std::cout; ++using std::endl; ++ + #ifdef PERFMON_STATISTICS + #include "pcounter.hh" + #endif +diff -Nuar freehdl-0.0.8.orig/kernel/map_list.cc freehdl-0.0.8/kernel/map_list.cc +--- freehdl-0.0.8.orig/kernel/map_list.cc 2006-02-16 10:56:22.000000000 +0200 ++++ freehdl-0.0.8/kernel/map_list.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -3,6 +3,12 @@ + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-sig-info.hh> + #include <freehdl/kernel-resolver-descriptor.hh> ++#include <algorithm> ++ ++ ++using std::max; ++ ++using std::max; + + // Stores the father signal(s) of port signals + port_signal_link_map_t port_signal_link_map; +diff -Nuar freehdl-0.0.8.orig/kernel/name_stack.cc freehdl-0.0.8/kernel/name_stack.cc +--- freehdl-0.0.8.orig/kernel/name_stack.cc 2000-09-20 11:41:14.000000000 +0300 ++++ freehdl-0.0.8/kernel/name_stack.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -1,8 +1,10 @@ + #include <stdlib.h> + #include <stdio.h> ++#include <stack> + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-name-stack.hh> + ++using std::stack; + + name_stack instance_name; + +diff -Nuar freehdl-0.0.8.orig/kernel/persistent_cdfg_dump.cc freehdl-0.0.8/kernel/persistent_cdfg_dump.cc +--- freehdl-0.0.8.orig/kernel/persistent_cdfg_dump.cc 2006-02-16 10:56:22.000000000 +0200 ++++ freehdl-0.0.8/kernel/persistent_cdfg_dump.cc 2020-03-30 02:54:42.447609853 +0300 +@@ -3,6 +3,7 @@ + #include <freehdl/kernel-persistent-cdfg-dump.hh> + #include <freehdl/kernel-persistent-dump.hh> + ++using std::endl; + + buffer_stream register_cdfg_tmp_buffer; + +diff -Nuar freehdl-0.0.8.orig/kernel/sig_info.cc freehdl-0.0.8/kernel/sig_info.cc +--- freehdl-0.0.8.orig/kernel/sig_info.cc 2009-03-15 20:23:09.000000000 +0200 ++++ freehdl-0.0.8/kernel/sig_info.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -1,6 +1,5 @@ + #define KERNEL // Include internal kernel definitions + +-using namespace std; + #include <freehdl/kernel-error.hh> + #include <freehdl/kernel-db.hh> + #include <freehdl/kernel-sig-info.hh> +diff -Nuar freehdl-0.0.8.orig/std/internal_textio.cc freehdl-0.0.8/std/internal_textio.cc +--- freehdl-0.0.8.orig/std/internal_textio.cc 2006-01-26 09:41:24.000000000 +0200 ++++ freehdl-0.0.8/std/internal_textio.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -10,6 +10,10 @@ + #include <freehdl/kernel-name-stack.hh> + #include <freehdl/kernel-register.hh> + ++using std::ios; ++using std::cin; ++using std::cout; ++ + /* package :std:textio */ + + /* Definitions for access type :std:textio:line */ +diff -Nuar freehdl-0.0.8.orig/std/vhdl_types.cc freehdl-0.0.8/std/vhdl_types.cc +--- freehdl-0.0.8.orig/std/vhdl_types.cc 2009-03-15 20:56:57.000000000 +0200 ++++ freehdl-0.0.8/std/vhdl_types.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -12,6 +12,9 @@ + #include <freehdl/kernel-register.hh> + + ++using std::ios; ++using std::ifstream; ++using std::ofstream; + + /* ************************************************************* + * Some global functions +diff -Nuar freehdl-0.0.8.orig/v2cc/mapping.cc freehdl-0.0.8/v2cc/mapping.cc +--- freehdl-0.0.8.orig/v2cc/mapping.cc 2008-02-15 20:11:15.000000000 +0200 ++++ freehdl-0.0.8/v2cc/mapping.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -34,7 +34,12 @@ + #include <iostream> + #include <stdlib.h> + +-using namespace std; ++using std::string; ++using std::list; ++using std::map; ++using std::istream; ++using std::ifstream; ++using std::cerr; + + v2cc_mapper::v2cc_mapper () + { +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc.cc freehdl-0.0.8/v2cc/v2cc.cc +--- freehdl-0.0.8.orig/v2cc/v2cc.cc 2010-04-13 22:43:30.000000000 +0300 ++++ freehdl-0.0.8/v2cc/v2cc.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -35,7 +35,6 @@ + + */ + +-using namespace std; + + #if HAVE_MALLOC_H + #include <malloc.h> +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-const-fold.cc freehdl-0.0.8/v2cc/v2cc-const-fold.cc +--- freehdl-0.0.8.orig/v2cc/v2cc-const-fold.cc 2008-02-15 20:13:19.000000000 +0200 ++++ freehdl-0.0.8/v2cc/v2cc-const-fold.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -16,6 +16,9 @@ + #include "v2cc-util.h" + + ++using std::cerr; ++using std::max; ++using std::min; + + // Used to generate error messages + extern vaul_error_printer codegen_error; +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-decl.cc freehdl-0.0.8/v2cc/v2cc-decl.cc +--- freehdl-0.0.8.orig/v2cc/v2cc-decl.cc 2010-05-08 15:15:38.000000000 +0300 ++++ freehdl-0.0.8/v2cc/v2cc-decl.cc 2020-03-30 02:54:42.451609945 +0300 +@@ -13,6 +13,9 @@ + #include "mapping.h" + #include "v2cc-util.h" + ++using std::endl; ++using std::min; ++using std::max; + + void test (RegionStack &rstack) + { +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-explore.cc freehdl-0.0.8/v2cc/v2cc-explore.cc +--- freehdl-0.0.8.orig/v2cc/v2cc-explore.cc 2010-04-12 21:40:40.000000000 +0300 ++++ freehdl-0.0.8/v2cc/v2cc-explore.cc 2020-03-30 02:54:42.455610036 +0300 +@@ -15,7 +15,6 @@ + #include "mapping.h" + #include "v2cc-util.h" + +-using namespace std; + + // Used to generate error messages + extern vaul_error_printer codegen_error; +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc.h freehdl-0.0.8/v2cc/v2cc.h +--- freehdl-0.0.8.orig/v2cc/v2cc.h 2006-03-17 11:22:55.000000000 +0200 ++++ freehdl-0.0.8/v2cc/v2cc.h 2020-03-30 02:54:42.463610219 +0300 +@@ -1,7 +1,17 @@ + #ifndef V2CC_HEADER + #define V2CC_HEADER + +-using namespace std; ++using std::vector; ++using std::list; ++using std::string; ++using std::pair; ++using std::string; ++using std::set; ++using std::less; ++using std::deque; ++using std::binary_function; ++using std::map; ++using std::binary_function; + + #include <freehdl/vaul.h> + #include "mapping.h" +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-qid.cc freehdl-0.0.8/v2cc/v2cc-qid.cc +--- freehdl-0.0.8.orig/v2cc/v2cc-qid.cc 2006-02-16 10:56:22.000000000 +0200 ++++ freehdl-0.0.8/v2cc/v2cc-qid.cc 2020-03-30 02:54:42.463610219 +0300 +@@ -4,6 +4,7 @@ + #include "v2cc-util.h" + + ++using std::endl; + + // ****************************************************************************************** + // Name: m_qid , generic function +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-util.cc freehdl-0.0.8/v2cc/v2cc-util.cc +--- freehdl-0.0.8.orig/v2cc/v2cc-util.cc 2009-04-19 01:51:38.000000000 +0300 ++++ freehdl-0.0.8/v2cc/v2cc-util.cc 2020-03-30 02:54:42.463610219 +0300 +@@ -9,6 +9,9 @@ + + #include "v2cc-util.h" + ++using std::endl; ++using std::hex; ++using std::dec; + + // ****************************************************************************************** + // Some global variables +diff -Nuar freehdl-0.0.8.orig/v2cc/v2cc-util.h freehdl-0.0.8/v2cc/v2cc-util.h +--- freehdl-0.0.8.orig/v2cc/v2cc-util.h 2007-10-23 23:13:29.000000000 +0300 ++++ freehdl-0.0.8/v2cc/v2cc-util.h 2020-03-30 02:55:06.160150752 +0300 +@@ -2,12 +2,19 @@ + #ifndef V2CC_UTIL_H + #define V2CC_UTIL_H + +-using namespace std; + + #include <sstream> + #include <iomanip> + #include <freehdl/vaul.h> + #include "v2cc-chunk.h" ++#include <type_traits> ++ ++using std::stringstream; ++using std::setprecision; ++using std::showpoint; ++using std::ofstream; ++using std::cout; ++using std::to_string; + + // ****************************************************************************************** + // Some global variables +@@ -242,7 +249,8 @@ + + /* Convert an integer value into a string */ + template <class T> +-inline string ++//inline string ++inline typename std::enable_if<!std::is_floating_point<T>::value, std::string>::type + to_string(T i) + { + stringstream lstr; +@@ -250,6 +258,8 @@ + return lstr.str(); + } + ++ ++/* + inline string + to_string(double i) + { +@@ -266,6 +276,7 @@ + return str + ".0"; + #endif + } ++*/ + + /* Print scalar value into a string */ + string +diff -Nuar freehdl-0.0.8.orig/vaul/bison-parser.cc freehdl-0.0.8/vaul/bison-parser.cc +--- freehdl-0.0.8.orig/vaul/bison-parser.cc 2009-10-11 19:24:48.000000000 +0300 ++++ freehdl-0.0.8/vaul/bison-parser.cc 2020-03-30 02:54:42.467610310 +0300 +@@ -86,7 +86,6 @@ + #include <malloc.h> + #endif + +-using namespace std; + + #define YYINITDEPTH 10000 + #define YYMAXDEPTH 100000 +diff -Nuar freehdl-0.0.8.orig/vaul/bison-parser.yy freehdl-0.0.8/vaul/bison-parser.yy +--- freehdl-0.0.8.orig/vaul/bison-parser.yy 2006-02-16 10:56:23.000000000 +0200 ++++ freehdl-0.0.8/vaul/bison-parser.yy 2020-03-30 02:54:42.471610401 +0300 +@@ -49,7 +49,6 @@ + #include <malloc.h> + #endif + +-using namespace std; + + #define YYINITDEPTH 10000 + #define YYMAXDEPTH 100000 +diff -Nuar freehdl-0.0.8.orig/vaul/printer.cc freehdl-0.0.8/vaul/printer.cc +--- freehdl-0.0.8.orig/vaul/printer.cc 2007-10-23 23:52:52.000000000 +0300 ++++ freehdl-0.0.8/vaul/printer.cc 2020-03-30 02:54:42.471610401 +0300 +@@ -27,7 +27,8 @@ + #include <string.h> + #include <sstream> + +-using namespace std; ++using std::ostringstream; ++using std::ostream; + + void vaul_printer::printf (const char *fmt, ...) + { +diff -Nuar freehdl-0.0.8.orig/vaul/tree.cc freehdl-0.0.8/vaul/tree.cc +--- freehdl-0.0.8.orig/vaul/tree.cc 2005-02-28 19:40:13.000000000 +0200 ++++ freehdl-0.0.8/vaul/tree.cc 2020-03-30 02:54:42.471610401 +0300 +@@ -31,7 +31,7 @@ + #include <assert.h> + #include <stdlib.h> + +-using namespace std; ++using std::ostream; + + vaul_id_set::vaul_id_set(int dummy) + { Deleted: declarative_region.patch =================================================================== --- declarative_region.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ declarative_region.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,12 +0,0 @@ ---- freehdl-0.0.8.orig/vaul/expr.cc 2007-10-23 22:33:45.000000000 +0300 -+++ freehdl-0.0.8/vaul/expr.cc 2018-03-04 17:47:04.703969598 +0200 -@@ -2631,6 +2631,9 @@ - // XXX - every constant interface thing expect in a subprogram is a - // generic? - -+ assert(d); -+ if (!d->declarative_region) return IR_NOT_STATIC; -+ assert(d->declarative_region); - if (!d->declarative_region->is (IR_SUBPROGRAM_DECLARATION)) - return IR_GLOBALLY_STATIC; - return IR_NOT_STATIC; Copied: freehdl/repos/community-x86_64/declarative_region.patch (from rev 1405660, freehdl/trunk/declarative_region.patch) =================================================================== --- declarative_region.patch (rev 0) +++ declarative_region.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,12 @@ +--- freehdl-0.0.8.orig/vaul/expr.cc 2007-10-23 22:33:45.000000000 +0300 ++++ freehdl-0.0.8/vaul/expr.cc 2018-03-04 17:47:04.703969598 +0200 +@@ -2631,6 +2631,9 @@ + // XXX - every constant interface thing expect in a subprogram is a + // generic? + ++ assert(d); ++ if (!d->declarative_region) return IR_NOT_STATIC; ++ assert(d->declarative_region); + if (!d->declarative_region->is (IR_SUBPROGRAM_DECLARATION)) + return IR_GLOBALLY_STATIC; + return IR_NOT_STATIC; Deleted: gentoo-qa.patch =================================================================== --- gentoo-qa.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ gentoo-qa.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,279 +0,0 @@ -Fix various QA issues: -* Use correct printf format specifiers for 'size_t' -* Fix const correctness ('char*' -> 'const char*') for C-string literals -* Correctly forward declare inline functions - ---- a/fire/test-fire.cc -+++ b/fire/test-fire.cc -@@ -24,7 +24,7 @@ - if (k->size < (size_t) N) - sizes[k->size]++; - if (k->size % 4 !=0) -- printf ("odd size: %d\n", k->size); -+ printf ("odd size: %zu\n", k->size); - } - printf ("min = %d, max = %d\n", min, max); - for (int i = min; i <= max && i < N; i+=4) ---- a/fire/tree-supp.cc -+++ b/fire/tree-supp.cc -@@ -485,7 +485,7 @@ - if (size < (size_t) N) - sizes[size]++; - if (size % 4 !=0) -- printf ("odd size: %d\n", size); -+ printf ("odd size: %zu\n", size); - } - - void ---- a/freehdl/kernel-dump.hh -+++ b/freehdl/kernel-dump.hh -@@ -42,9 +42,9 @@ - short wait_id; - // This function will return an appropriate table entry (if - // available) -- char *find_table(type_info_interface* type); -+ const char *find_table(type_info_interface* type); - //this variable is used by the read_type function -- char* translation_table; -+ const char* translation_table; - // This method is executed each time the signal value changes - bool execute(); - // Continue dumping the signal. -@@ -77,7 +77,7 @@ - extern list<signal_dump*> signal_dump_process_list; - - // Used to store the user_defined translation table types --extern map<string, char*, less<string> > mapping_translation_table; -+extern map<string, const char*, less<string> > mapping_translation_table; - - - /****************************************************** ---- a/freehdl/kernel-fhdl-stream.hh -+++ b/freehdl/kernel-fhdl-stream.hh -@@ -29,7 +31,7 @@ - str->flush(); - } - -- fhdl_ostream_t &operator<<(char *p); -+ fhdl_ostream_t &operator<<(const char *p); - fhdl_ostream_t &operator<<(const string &a); - fhdl_ostream_t &operator<<(const int i); - fhdl_ostream_t &operator<<(const unsigned int i); ---- a/freehdl/std-vhdl-types.hh -+++ b/freehdl/std-vhdl-types.hh -@@ -607,7 +618,7 @@ - // which caused the failure or NULL otherwise. - virtual const char *read(void *dest, const char *str) = 0; - // Prints the content of src into an string stream in VCD format -- virtual void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) = 0; -+ virtual void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) = 0; - // Prints value into binary stream. Note that only the raw data but - // no type info objects are written! The method returns the number - // of bytes written to the stream. -@@ -785,7 +796,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); - const char *read(void *dest, const char *str); - - integer check(integer value) { -@@ -821,7 +832,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) {}; -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) {}; - const char *read(void *dest, const char *str); - }; - -@@ -849,7 +860,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode) {}; -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) {}; -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) {}; - const char *read(void *dest, const char *str); - }; - -@@ -879,7 +890,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); - const char *read(void *dest, const char *str); - - floatingpoint check(floatingpoint value) { -@@ -914,7 +925,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); - const char *read(void *dest, const char *str); - - enumeration check(integer value) { -@@ -954,7 +965,7 @@ - bool assign(void *dest, const void *src); - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ; -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) ; - const char *read(void *dest, const char *str); - - physical check(physical value) { -@@ -1087,7 +1098,7 @@ - bool assign(void *dest, const void *src) { return false; }; - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ; -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) ; - const char *read(void *dest, const char *str); - }; - -@@ -1230,7 +1241,7 @@ - bool assign(void *dest, const void *src) { return false; }; - void remove(void *src); - void print(buffer_stream &str, const void *src, int mode); -- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); -+ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); - const char *read(void *dest, const char *str); - }; - ---- a/freehdl/vaul-lexer.h -+++ b/freehdl/vaul-lexer.h -@@ -115,7 +114,7 @@ - IR_String expand_bitstring(const char *, int len); - - int LexerInput(char *buf, int max_size); -- void LexerError(char *msg); -+ void LexerError(const char *msg); - void message(char *fmt, va_list ap); - void message(vaul_yyltype &loc, char *fmt, va_list ap); - ---- a/kernel/driver_info.cc -+++ b/kernel/driver_info.cc -@@ -270,6 +270,7 @@ - - - // Creates transaction composite signals. Returns number of assigned scalars. -+inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &); - inline int - do_array_transport_assignment(driver_info &driver, const array_base &value, int first, const vtime &tr_time) - { -@@ -311,7 +312,6 @@ - assigned_scalars += do_array_transport_assignment(driver, (array_base&)value.data[j], i, tr_time); - break; - case RECORD: -- inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &); - assigned_scalars += do_record_transport_assignment(driver, (record_base&)value.data[j], i, tr_time); - break; - } -@@ -339,6 +339,7 @@ - - - // Creates transaction for composite signals. Returns number of assigned scalars. -+inline int do_record_inertial_assignment(driver_info &, const record_base &, int, const vtime &, const vtime &); - inline int - do_array_inertial_assignment(driver_info &driver, - const array_base &value, int first, -@@ -381,8 +382,6 @@ - assigned_scalars += do_array_inertial_assignment(driver, (array_base&)value.data[j], i, tr_time, rm_time); - break; - case RECORD: -- inline int do_record_inertial_assignment(driver_info &, const record_base &, int, -- const vtime &, const vtime &); - assigned_scalars += do_record_inertial_assignment(driver, (record_base&)value.data[j], i, tr_time, rm_time); - break; - } ---- a/kernel/dump.cc -+++ b/kernel/dump.cc -@@ -90,7 +90,7 @@ - - - // find_translation table --char * -+const char * - signal_dump::find_table(type_info_interface* type) - { - switch(type->id) ---- a/kernel/fhdl_stream.cc -+++ b/kernel/fhdl_stream.cc -@@ -60,7 +63,7 @@ - } - - fhdl_ostream_t & --fhdl_ostream_t::operator<<(char *p) -+fhdl_ostream_t::operator<<(const char *p) - { - if (!socket_connection) - *str << p; ---- a/std/vhdl_types.cc -+++ b/std/vhdl_types.cc -@@ -1013,7 +1016,7 @@ - } - - void --integer_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) -+integer_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) - { - integer op =*((integer*)src); - static char result[INTEGER_SIZE_LD + 1]; -@@ -1306,7 +1309,7 @@ - } - - void --float_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) { -+float_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) { - // should be definitly enough characters to hold a string - // representation of a double - static char rbuffer[8*sizeof(double)]; -@@ -1432,7 +1435,7 @@ - - - void --enum_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) -+enum_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) - { - if (translation_table != NULL) { - const char output = translation_table[*((enumeration*)src)]; -@@ -1583,7 +1586,7 @@ - } - - void --physical_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) { -+physical_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) { - str << *((physical*)src) << " " << units[0]; - } - -@@ -1778,7 +1781,7 @@ - } - - // Temporary VCD_Print function --void array_info::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) -+void array_info::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) - { - //str.clean(); - int length = ((array_base*)src)->info->length; -@@ -2090,7 +2093,7 @@ - - - // Temporary VCD_Print function --void record_info::vcd_print(buffer_stream &str, const void *src, char* translation_table, bool pure) -+void record_info::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) - { - record_base &record = *(record_base*)src; - record_info &rinfo = *record.info; ---- a/vaul/lexer.cc -+++ b/vaul/lexer.cc -@@ -2075,7 +2075,7 @@ - } - - void --vaul_lexer::LexerError (char *m) -+vaul_lexer::LexerError (const char *m) - { - if (prt) - prt->fprintf (log, "%?%s %C\n", this, m, this); Copied: freehdl/repos/community-x86_64/gentoo-qa.patch (from rev 1405660, freehdl/trunk/gentoo-qa.patch) =================================================================== --- gentoo-qa.patch (rev 0) +++ gentoo-qa.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,279 @@ +Fix various QA issues: +* Use correct printf format specifiers for 'size_t' +* Fix const correctness ('char*' -> 'const char*') for C-string literals +* Correctly forward declare inline functions + +--- a/fire/test-fire.cc ++++ b/fire/test-fire.cc +@@ -24,7 +24,7 @@ + if (k->size < (size_t) N) + sizes[k->size]++; + if (k->size % 4 !=0) +- printf ("odd size: %d\n", k->size); ++ printf ("odd size: %zu\n", k->size); + } + printf ("min = %d, max = %d\n", min, max); + for (int i = min; i <= max && i < N; i+=4) +--- a/fire/tree-supp.cc ++++ b/fire/tree-supp.cc +@@ -485,7 +485,7 @@ + if (size < (size_t) N) + sizes[size]++; + if (size % 4 !=0) +- printf ("odd size: %d\n", size); ++ printf ("odd size: %zu\n", size); + } + + void +--- a/freehdl/kernel-dump.hh ++++ b/freehdl/kernel-dump.hh +@@ -42,9 +42,9 @@ + short wait_id; + // This function will return an appropriate table entry (if + // available) +- char *find_table(type_info_interface* type); ++ const char *find_table(type_info_interface* type); + //this variable is used by the read_type function +- char* translation_table; ++ const char* translation_table; + // This method is executed each time the signal value changes + bool execute(); + // Continue dumping the signal. +@@ -77,7 +77,7 @@ + extern list<signal_dump*> signal_dump_process_list; + + // Used to store the user_defined translation table types +-extern map<string, char*, less<string> > mapping_translation_table; ++extern map<string, const char*, less<string> > mapping_translation_table; + + + /****************************************************** +--- a/freehdl/kernel-fhdl-stream.hh ++++ b/freehdl/kernel-fhdl-stream.hh +@@ -29,7 +31,7 @@ + str->flush(); + } + +- fhdl_ostream_t &operator<<(char *p); ++ fhdl_ostream_t &operator<<(const char *p); + fhdl_ostream_t &operator<<(const string &a); + fhdl_ostream_t &operator<<(const int i); + fhdl_ostream_t &operator<<(const unsigned int i); +--- a/freehdl/std-vhdl-types.hh ++++ b/freehdl/std-vhdl-types.hh +@@ -607,7 +618,7 @@ + // which caused the failure or NULL otherwise. + virtual const char *read(void *dest, const char *str) = 0; + // Prints the content of src into an string stream in VCD format +- virtual void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) = 0; ++ virtual void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) = 0; + // Prints value into binary stream. Note that only the raw data but + // no type info objects are written! The method returns the number + // of bytes written to the stream. +@@ -785,7 +796,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); + const char *read(void *dest, const char *str); + + integer check(integer value) { +@@ -821,7 +832,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) {}; ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) {}; + const char *read(void *dest, const char *str); + }; + +@@ -849,7 +860,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode) {}; +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) {}; ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) {}; + const char *read(void *dest, const char *str); + }; + +@@ -879,7 +890,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); + const char *read(void *dest, const char *str); + + floatingpoint check(floatingpoint value) { +@@ -914,7 +925,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); + const char *read(void *dest, const char *str); + + enumeration check(integer value) { +@@ -954,7 +965,7 @@ + bool assign(void *dest, const void *src); + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ; ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) ; + const char *read(void *dest, const char *str); + + physical check(physical value) { +@@ -1087,7 +1098,7 @@ + bool assign(void *dest, const void *src) { return false; }; + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ; ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) ; + const char *read(void *dest, const char *str); + }; + +@@ -1230,7 +1241,7 @@ + bool assign(void *dest, const void *src) { return false; }; + void remove(void *src); + void print(buffer_stream &str, const void *src, int mode); +- void vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure); ++ void vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure); + const char *read(void *dest, const char *str); + }; + +--- a/freehdl/vaul-lexer.h ++++ b/freehdl/vaul-lexer.h +@@ -115,7 +114,7 @@ + IR_String expand_bitstring(const char *, int len); + + int LexerInput(char *buf, int max_size); +- void LexerError(char *msg); ++ void LexerError(const char *msg); + void message(char *fmt, va_list ap); + void message(vaul_yyltype &loc, char *fmt, va_list ap); + +--- a/kernel/driver_info.cc ++++ b/kernel/driver_info.cc +@@ -270,6 +270,7 @@ + + + // Creates transaction composite signals. Returns number of assigned scalars. ++inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &); + inline int + do_array_transport_assignment(driver_info &driver, const array_base &value, int first, const vtime &tr_time) + { +@@ -311,7 +312,6 @@ + assigned_scalars += do_array_transport_assignment(driver, (array_base&)value.data[j], i, tr_time); + break; + case RECORD: +- inline int do_record_transport_assignment(driver_info &, const record_base &, int, const vtime &); + assigned_scalars += do_record_transport_assignment(driver, (record_base&)value.data[j], i, tr_time); + break; + } +@@ -339,6 +339,7 @@ + + + // Creates transaction for composite signals. Returns number of assigned scalars. ++inline int do_record_inertial_assignment(driver_info &, const record_base &, int, const vtime &, const vtime &); + inline int + do_array_inertial_assignment(driver_info &driver, + const array_base &value, int first, +@@ -381,8 +382,6 @@ + assigned_scalars += do_array_inertial_assignment(driver, (array_base&)value.data[j], i, tr_time, rm_time); + break; + case RECORD: +- inline int do_record_inertial_assignment(driver_info &, const record_base &, int, +- const vtime &, const vtime &); + assigned_scalars += do_record_inertial_assignment(driver, (record_base&)value.data[j], i, tr_time, rm_time); + break; + } +--- a/kernel/dump.cc ++++ b/kernel/dump.cc +@@ -90,7 +90,7 @@ + + + // find_translation table +-char * ++const char * + signal_dump::find_table(type_info_interface* type) + { + switch(type->id) +--- a/kernel/fhdl_stream.cc ++++ b/kernel/fhdl_stream.cc +@@ -60,7 +63,7 @@ + } + + fhdl_ostream_t & +-fhdl_ostream_t::operator<<(char *p) ++fhdl_ostream_t::operator<<(const char *p) + { + if (!socket_connection) + *str << p; +--- a/std/vhdl_types.cc ++++ b/std/vhdl_types.cc +@@ -1013,7 +1016,7 @@ + } + + void +-integer_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ++integer_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) + { + integer op =*((integer*)src); + static char result[INTEGER_SIZE_LD + 1]; +@@ -1306,7 +1309,7 @@ + } + + void +-float_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) { ++float_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) { + // should be definitly enough characters to hold a string + // representation of a double + static char rbuffer[8*sizeof(double)]; +@@ -1432,7 +1435,7 @@ + + + void +-enum_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ++enum_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) + { + if (translation_table != NULL) { + const char output = translation_table[*((enumeration*)src)]; +@@ -1583,7 +1586,7 @@ + } + + void +-physical_info_base::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) { ++physical_info_base::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) { + str << *((physical*)src) << " " << units[0]; + } + +@@ -1778,7 +1781,7 @@ + } + + // Temporary VCD_Print function +-void array_info::vcd_print(buffer_stream &str, const void *src,char* translation_table, bool pure) ++void array_info::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) + { + //str.clean(); + int length = ((array_base*)src)->info->length; +@@ -2090,7 +2093,7 @@ + + + // Temporary VCD_Print function +-void record_info::vcd_print(buffer_stream &str, const void *src, char* translation_table, bool pure) ++void record_info::vcd_print(buffer_stream &str, const void *src, const char* translation_table, bool pure) + { + record_base &record = *(record_base*)src; + record_info &rinfo = *record.info; +--- a/vaul/lexer.cc ++++ b/vaul/lexer.cc +@@ -2075,7 +2075,7 @@ + } + + void +-vaul_lexer::LexerError (char *m) ++vaul_lexer::LexerError (const char *m) + { + if (prt) + prt->fprintf (log, "%?%s %C\n", this, m, this); Deleted: gvhdl_tag_command.patch =================================================================== --- gvhdl_tag_command.patch 2023-02-28 21:00:54 UTC (rev 1405660) +++ gvhdl_tag_command.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -1,13 +0,0 @@ -Index: freehdl-0.0.8/v2cc/gvhdl.in -=================================================================== ---- freehdl-0.0.8.orig/v2cc/gvhdl.in 2011-03-12 14:16:47.000000000 +0100 -+++ freehdl-0.0.8/v2cc/gvhdl.in 2014-08-25 13:00:00.086254980 +0200 -@@ -5,7 +5,7 @@ - - my $cc = "@CXX@"; - my $libtool = "@SYSTEM_LIBTOOL@"; --my $libtool_options = "--mode=link"; -+my $libtool_options = "--mode=link --tag CXX"; - my $vhdl_source_name = ""; - my $source = ""; - my $includes = ""; Copied: freehdl/repos/community-x86_64/gvhdl_tag_command.patch (from rev 1405660, freehdl/trunk/gvhdl_tag_command.patch) =================================================================== --- gvhdl_tag_command.patch (rev 0) +++ gvhdl_tag_command.patch 2023-02-28 21:01:09 UTC (rev 1405661) @@ -0,0 +1,13 @@ +Index: freehdl-0.0.8/v2cc/gvhdl.in +=================================================================== +--- freehdl-0.0.8.orig/v2cc/gvhdl.in 2011-03-12 14:16:47.000000000 +0100 ++++ freehdl-0.0.8/v2cc/gvhdl.in 2014-08-25 13:00:00.086254980 +0200 +@@ -5,7 +5,7 @@ + + my $cc = "@CXX@"; + my $libtool = "@SYSTEM_LIBTOOL@"; +-my $libtool_options = "--mode=link"; ++my $libtool_options = "--mode=link --tag CXX"; + my $vhdl_source_name = ""; + my $source = ""; + my $includes = "";