Hi Fred, thanks, that explains it. Fixed in SVN 1052. Best regards, /// Jürgen Sauermann On 05/24/2018 09:18 PM, Fred Weigel
wrote:
Juergen Thanks! All worked, except (as you suspected) Svar_record. Here is the error message from GCC 8.1.1:libtool: compile: g++ -DHAVE_CONFIG_H -I. -I.. -Wall -I sql -Wold- style-cast -Werror -I/usr/include -I/usr/include -rdynamic -O3 -MT libapl_la-Archive.lo -MD -MP -MF .deps/libapl_la-Archive.Tpo -c Archive.cc -fPIC -DPIC -o .libs/libapl_la-Archive.o In file included from Svar_DB.hh:32, from Symbol.hh:30, from SystemVariable.hh:26, from Quad_RL.hh:24, from Workspace.hh:32, from Archive.hh:28, from Archive.cc:29: Svar_record.hh: In member function 'void Svar_record::clear()': Svar_record.hh:183:56: error: 'void* memset(void*, int, size_t)' clearing an object of non-trivial type 'struct Svar_record'; use assignment or value-initialization instead [-Werror=class-memaccess] void clear() { memset(this, 0, sizeof(Svar_record)); } ^ Svar_record.hh:174:8: note: 'struct Svar_record' declared here struct Svar_record ^~~~~~~~~~~ cc1plus: all warnings being treated as errors make[3]: *** [Makefile:1176: libapl_la-Archive.lo] Error 1 Fred Weigel On Thu, 2018-05-24 at 13:53 +0200, Juergen Sauermann wrote:Hi Fred, thanks, hopefully fixed in SVN 1051. The -Wclass-memaccess warning is not documented in the gcc 8,1 manual, therefore the warnings in Svar_record.cc and/or Svar_record.hh may have survived my attempt to fix them. If so, then please send me the complete warning output (containing the source line number) so that I can give it another try. Best regards, /// Jürgen On 05/23/2018 09:45 PM, Fred Weigel wrote:I just updated to Fedora 28. Had some issues compiling GNU APL ______ _ __ __ __ ___ ____ __ / ____// | / // / / / / | / __ \ / / / / __ / |/ // / / / / /| | / /_/ // / / /_/ // /| // /_/ / / ___ | / ____// /___ \____//_/ |_/ \____/ /_/ |_|/_/ /_____/ Welcome to GNU APL version 1.7 local / 1050M Copyright (C) 2008-2016 Dr. Jürgen Sauermann Banner by FIGlet: www.figlet.org This program comes with ABSOLUTELY NO WARRANTY; for details run: apl --gpl. This program is free software, and you are welcome to redistribute it according to the GNU Public License (GPL) version 3 or later. DUMPED 2017-08-06 18:41:50 (GMT-4) Note that this has some local changes (memory mapping support, and somea other minor changes), thus the designation "1.7 local". But, these notes apply to the unaltered version 1050 as well (and the pragma notes apply to 1047). c++ (GCC) 8.1.1 20180502 (Red Hat 8.1.1-1) Copyright (C) 2018 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. This version of GCC is more stringent. The following pragmas can be added to successfully compile: LibPaths.cc:#pragma GCC diagnostic ignored "-Wstringop-truncation" Quad_SVx.cc:#pragma GCC diagnostic ignored "-Wformat-truncation" Svar_DB.cc:#pragma GCC diagnostic ignored "-Wformat-truncation" Svar_record.cc:#pragma GCC diagnostic ignored "-Wformat-truncation" Svar_record.hh:#pragma GCC diagnostic ignored "-Wclass-memaccess" If RATIONAL_NUMBERS_DEFINED is defined: FloatCell.cc line 527 const FloatCell inv_B(denom, numer); should be const FloatCell inv_B(B_denom, B_numer); IntCell.cc line 533 const APL_Integer b = get_int_value(); should be APL_Integer b = get_int_value(); and const APL_Integer a = A->get_int_value(); should be APL_Integer a = A->get_int_value(); (these, because of a = -a and b = -b) Fred Weigel |
signature.asc
Description: OpenPGP digital signature