Greetings,

Please find attached files (two new C headers and the execution log for
configure and make). Note that I have used the name "arm64" instead of "aarch64"
for the architecture name, because that's how macOS's system headers name it.
Note that I also replaced some macros (FPE_INIT related) by copying related
non-x86 code from h/linux.h.

Unfortunately I cannot reach that far - there are C compilation errors when
building saved_pre_gcl. There are at least the following issues:

1. macOS's typedef of "size_t" (= __darwin_size_t) is incompatible with "#define
size_t unsigned int" generated in /h/gclincl.h

2. undeclared identifiers (such as 'RA_unsigned') in h/gmp_wrappers.h. I'm not
sure which GMP library I'm actually using (MacPorts' GMP is not used for sure)

3. 'h/new_decl.h' file not found (or not generated?)

--Chun

On 18/04/25 23:41, Camm Maguire wrote:
> Greetings!  Great, something I can understand!
> 
> I am assuming per our previous conversations that there is no virtualbox
> image possible here.
> 
> Do you have access to such a machine?  Would you be willing to engage in
> a short dialog constructing this file?  It should not be too hard.
> 
> If so, the first step is to copy the 386-macosx.h file to
> aarch64-macosx.h, and replace
> 
> #include <mach-o/x86_64/reloc.h>
> #define RELOC_H "mach64_i386_reloc.h"
> 
> with
> 
> #include <mach-o/aarch64/reloc.h>
> #define RELOC_H "mach64_aarch64_reloc.h"
> 
> then make an empty file h/mach64_aarch64_reloc.h.
> 
> Then configure with --enable-machine=aarch64-macosx
> 
> and
> 
> make unixport/saved_pre_gcl.
> 
> Make two small .lsp files:
> 
> =============================================================================
> /tmp/f.l
> =============================================================================
> (defun foo nil nil)
> =============================================================================
> 
> =============================================================================
> /tmp/g.l
> =============================================================================
> (defun bar nil (unwind-protect nil nil))
> =============================================================================
> 
> Execute unixport/saved_pre_gcl and
> 
>> (compile-file "/tmp/f.l")
>> (compile-file "/tmp/g.l")
>> (si::bye)
> 
> then send me
> 
> objdump -d /tmp/f.o
> objdump -r /tmp/f.o
> 
> objdump -d /tmp/g.o
> objdump -r /tmp/g.o
> 
> Take care,
> 
> "Chun Tian (binghe)" <binghe.l...@gmail.com> writes:
> 
>> Greetings,
>>
>> On 18/04/25 00:26, Camm Maguire wrote:
>>> Greetings!
>>>
>>> "Chun Tian (binghe)" <binghe.l...@gmail.com> writes:
>>>
>>>> On 12/04/25 21:14, Camm Maguire wrote:
>>>
>>>>>> Do you have release plans for GCL 2.6.15?
>>>>>
>>>>
>>>> At this moment I'm not sure 2.7 is really better in every respect. I saw 
>>>> you
>>>> were trying to build Debian "axiom" package by GCL 2.7 but it seems that
>>>> currently the Debian package is still based on GCL 2.6 (I don't have 
>>>> Debian sid
>>>> environment, only a Debian testing.)
>>>>
>>>> If you can make a 2.6.15 release (and consider it's the last 2.6.x 
>>>> release), one
>>>> immediate good thing is that I can send a small PR to MacPorts to update
>>>> existing "gcl" package, such that it will work on more macOS versions 
>>>> (more than
>>>> what 2.6.14 can support). And I think it's good to have Axiom (ACL2, 
>>>> Maxima,
>>>> etc.) to support both GCL 2.6.15 and 2.7.1, and then people can compare on 
>>>> the
>>>> performance of these software under different GCL versions, to confirm if 
>>>> GCL
>>>> 2.7 is really better in every respect.
>>>
>>> OK, you have persuaded me.  But I think it would be good to get the mac
>>> arm build working before the next release.  2.6.13 only lasted one
>>> month, so perhaps we could try a cleanup only 2.6.15 and 2.7.2 in this
>>> time frame, and then move on to other items.  Can you please point me to
>>> a build log showing the arm failure?  I've explored the macports site
>>> and cannot find it.
>>>
>> The immediate issues when trying to build GCL (2.6 and 2.7) in ARM64 macOS, 
>> is
>> that the "configuration" script cannot pass. I think the key issue is that no
>> such configuration "aarch64 + macosx" exists in h/*.  For GCL 2.7, using
>> i386-macosx as a workaround doesn't work (of course).  (I wanted to learn the
>> way of aarch64-linux but then found h/linux.h is mostly related to ELF format
>> while macOS uses Mach-O.)
>>
>> In attach you can find 3 logs as the outputs of configuration scripts. I 
>> think
>> the first step is to figure out a reasonable "aarch64-macosx.h".
>>
>> --Chun
>>
>>
>>
>>
> 
/*
    GCL config file for Mac OS X.

    To be used with the following configure switches :
        --enable-debug (optional)
        --enable-machine=powerpc-macosx
        --disable-statsysbfd
        --enable-custreloc

    Aurelien Chanudet <aurelien.chanudet(at)m4x.org>
*/

/* For those who are using ACL2, please remember to enlarge your shell stack 
(ulimit -s 8192).  */

#include "bsd.h"

#define DARWIN

/* Mac OS X has its own executable file format (Mach-O).  */
#undef HAVE_AOUT
#undef HAVE_ELF


/* Alternatively, we could use the global variable vm_page_size.  */
#define PAGEWIDTH 12


#include <unistd.h> /* to get sbrk defined */


/** (si::save-system "...") a.k.a. unexec implementation  */

/* The implementation of unexec for GCL is based on Andrew Choi's work for 
Emacs.
   Previous pioneering implementation of unexec for Mac OS X by Steve Nygard.  
*/
#define UNIXSAVE "unexmacosx.c"

#undef malloc
#define malloc my_malloc

#undef free
#define free my_free

#undef realloc
#define realloc my_realloc

#undef valloc
#define valloc my_valloc

#undef calloc
#define calloc my_calloc


/** Dynamic loading implementation  */

/* The sfasl{bfd,macosx,macho}.c files are included from sfasl.c.  */
#ifdef HAVE_LIBBFD
#define SEPARATE_SFASL_FILE "sfaslbfd.c"
#else
#define SPECIAL_RSYM "rsym_macosx.c"
#define SEPARATE_SFASL_FILE "sfaslmacho.c"
#endif

/* The file has non Mach-O stuff appended.  We need to know where the Mach-O 
stuff ends.  */
#include <stdio.h>
extern int seek_to_end_ofile (FILE *);
#define SEEK_TO_END_OFILE(fp) seek_to_end_ofile(fp)

/** Stratified garbage collection implementation [ (si::sgc-on t) ]  */

/* Mac OS X has sigaction (this is needed in o/usig.c)  */
#define HAVE_SIGACTION

/* Copied from {Net,Free,Open}BSD.h  */
/* Modified according to Camm's instructions on April 15, 2004.  */
#define HAVE_SIGPROCMASK

/* until the sgc/save problem can be fixed.  20050114 CM*/
/* #define SGC */

#define MPROTECT_ACTION_FLAGS (SA_SIGINFO | SA_RESTART)

#define INSTALL_MPROTECT_HANDLER                        \
do {                                                    \
  static struct sigaction sact;                         \
  sigfillset (&(sact.sa_mask));                         \
  sact.sa_flags = MPROTECT_ACTION_FLAGS;                \
  sact.sa_sigaction = (void (*) ()) memprotect_handler; \
  sigaction (SIGBUS, &sact, 0);                         \
  sigaction (SIGSEGV, &sact, 0);                        \
} while (0);

#define GET_FAULT_ADDR(sig,code,sv,a) ((siginfo_t *)code)->si_addr


/** Misc stuff  */

#define IEEEFLOAT

/* Mac OS X does not have _fileno as in linux.h. Nor does it have _cnt as in 
bsd.h.
   Let's see what we can do with this declaration found in 
{Net,Free,Open}BSD.h.  */
#undef LISTEN_FOR_INPUT
#define LISTEN_FOR_INPUT(fp)                                            \
do {int c=0;                                                            \
  if (((FILE *)fp)->_r <=0 && (c=0, ioctl(((FILE *)fp)->_file, FIONREAD, &c), 
c<=0)) \
        return(FALSE);                                                  \
} while (0)

#define GET_FULL_PATH_SELF(a_)                              \
do {                                                        \
extern int _NSGetExecutablePath (char *, unsigned long *);  \
unsigned long bufsize = 1024;                               \
static char buf [1024];                                     \
static char fub [1024];                                     \
if (_NSGetExecutablePath (buf, &bufsize) != 0) {            \
    error ("_NSGetExecutablePath failed");                  \
}                                                           \
if (realpath (buf, fub) == 0) {                             \
    error ("realpath failed");                              \
}                                                           \
(a_) = fub;                                                 \
} while (0)

#define C_GC_OFFSET 4
#include <mach-o/arm64/reloc.h>
#define RELOC_H "mach64_arm64_reloc.h"

#define UC(a_) ((ucontext_t *)a_)
#define SF(a_) ((siginfo_t *)a_)

/* BEGIN: copied from "linux.h" for non-x86 architectures */
#define FPE_TCODE(x_) \
  {ufixnum _x=(x_),_y=0;                        \
   switch(_x) {                                 \
   case FPE_FLTINV: _y=FE_INVALID;break;        \
   case FPE_FLTDIV: _y=FE_DIVBYZERO;break;      \
   case FPE_FLTOVF: _y=FE_OVERFLOW;break;       \
   case FPE_FLTUND: _y=FE_UNDERFLOW;break;      \
   case FPE_FLTRES: _y=FE_INEXACT;break;        \
   }                                            \
   _y;                                          \
  }
#define FPE_CODE(i_,v_) make_fixnum(FPE_TCODE((fixnum)SF(i_)->si_code))
#define FPE_ADDR(i_,v_) make_fixnum((fixnum)SF(i_)->si_addr)
#define FPE_CTXT(v_) Cnil

#define FPE_INIT Nil
/* END */

#include <sys/param.h>/*PATH_MAX MAXPATHLEN*/
#undef MIN
#undef MAX

#undef sbrk
#define sbrk msbrk
#define INITIALIZE_BRK msbrk_init();
#include <mach-o/arm64/reloc.h>
binghe@binghe-mini4:/Volumes/GNU/gcl/gcl$ ./configure 
--enable-machine=arm64-macosx
checking for a BSD-compatible install... /opt/local/bin/ginstall -c
checking whether sleep supports fractional seconds... yes
checking filesystem timestamp resolution... 2
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /opt/local/bin/gmkdir -p
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking xargs -n works... yes
checking how to create a pax tar archive... gnutar
checking for emacs... emacs
checking where .elc files should go... ${datarootdir}/emacs/site-lisp
checking for gawk... (cached) awk
checking build system type... aarch64-apple-darwin24.4.0
checking host system type... aarch64-apple-darwin24.4.0
host=aarch64-apple-darwin24.4.0
enable_machine=arm64-macosx
use=arm64-macosx
checking whether make supports the include directive... yes (GNU style)
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether gcc accepts -g... yes
checking for gcc option to enable C11 features... none needed
checking whether gcc understands -c and -o together... yes
checking dependency style of gcc... gcc3
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for ranlib... ranlib
checking for gcc... (cached) gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether gcc accepts -g... (cached) yes
checking for gcc option to enable C11 features... (cached) none needed
checking whether gcc understands -c and -o together... (cached) yes
checking dependency style of gcc... (cached) gcc3
checking how to run the C preprocessor... gcc -E
checking for CFLAG -fsigned-char... yes
checking for CFLAG -pipe... yes
checking for CFLAG -fcommon... yes
checking for CFLAG -fno-builtin-malloc... yes
checking for CFLAG -fno-builtin-free... yes
checking for CFLAG -fno-PIE... yes
checking for CFLAG -fno-pie... yes
checking for CFLAG -fno-PIC... yes
checking for CFLAG -fno-pic... yes
checking for CFLAG -std=gnu17... yes
checking for CFLAG -Wall... yes
checking for CFLAG -Wno-builtin-requires-header... yes
checking for CFLAG -Wno-empty-body... yes
checking for CFLAG -Wno-self-assign... yes
checking for CFLAG -Wno-unused-but-set-variable... yes
checking for CFLAG -D_FILE_OFFSET_BITS=64... yes
checking for CFLAG -D_TIME_BITS=64... yes
checking for CFLAG -fbracket-depth=512... yes
checking for LDFLAG -no-pie... no
checking for LDFLAG -Wl,-z,relro... no
checking for inline semantics... new
checking for gawk... (cached) awk
checking for CFLAG -pg... yes
checking working gprof... ok
checking for makeinfo... ${SHELL} '/Volumes/GNU/gcl/gcl/missing' makeinfo
checking system version (for dynamic loading)... Darwin-24.4.0
checking for malloc/malloc.h... yes
checking for struct _malloc_zone_t.memalign... yes
checking for setjmp.h... yes
checking sizeof jmp_buf... 192
checking for unistd.h... (cached) yes
checking for sysconf in -lc... yes
checking _SC_CLK_TCK... 0
checking for gmp.h... yes
checking for __gmpz_init in -lgmp... yes
checking for external gmp version... good
checking for leading underscore in object symbols... "yes"
checking for size of gmp limbs... 8
checking _SHORT_LIMB... no
checking _LONG_LONG_LIMB... no
checking for GNU ld option -Map... no
checking for X... libraries , headers 
checking for main in -lX11... yes
checking for dlopen in -ldl... yes
checking for xdr_double... yes
checking __builtin_clzl... yes
checking __builtin_ctzl... yes
checking __builtin___clear_cache... no
checking size of long... 8
checking size of short... 2
checking size of int... 4
checking size of char... 1
checking for math.h... yes
checking for complex.h... yes
checking for byte order... little
checking for word order... little
checking for hugepagewidth... not found
checking for pagewidth... 14
checking for required object alignment... 8
checking for C extension variable alignment... __attribute__ ((aligned (8)))
checking for C extension noreturn function attribute... __attribute__ 
((noreturn))
checking sizeof struct contblock... 16
checking CSTACK_DIRECTION... -1
checking finding CSTACK_ALIGNMENT... 1
checking CSTACK_TOP... 0x16cea3fff
checking relocated CSTACK_TOP... 0x16d6bffff
checking cstack bits... 33
checking NEG_CSTACK_ADDRESS... no
checking finding default linker script... got it
checking output_arch... not found
configure: trying to adjust text start
configure: min log text start 62
configure: max log text start 0
checking our linker script... none found or not needed
checking mem top... 0x8000000000000000
checking finding upper mem half range... 0x4000000000000000
checking sizeof long long int... no
checking for dirent.h... yes
checking for d_type... yes
checking for getcwd... yes
checking for getwd... yes
checking for rename... yes
checking for uname... yes
checking for readlinkat... yes
checking for sys/ioctl.h... yes
checking for elf.h... no
checking for elf_abi.h... no
checking for sys/sockio.h... yes
checking for sin in -lm... yes
checking for main in -lmingwex... no
checking for values.h... no
checking for float.h... yes
checking for isnormal... yes
checking for isfinite... yes
checking for sockets... checking for connect... yes
checking for gethostbyname... yes
checking for readline/readline.h... yes
checking for rl_initialize in -lreadline... yes
checking for el_getc in -lreadline... no
checking for rl_completion_matches in -lreadline... yes
checking RL_COMPLETION_ENTRY_FUNCTION_TYPE_FUNCTION... no
checking RL_COMPLETION_ENTRY_FUNCTION_TYPE_RL_COMPENTRY_FUNC_T... yes
checking RL_READLINE_NAME_TYPE_CHAR... no
checking RL_READLINE_NAME_TYPE_CONST_CHAR... yes
checking For network code for nsocket.c... yes
checking check for listen using fcntl... yes
checking for profil... no
checking for setenv... yes
checking for _cleanup... yes
checking FIONBIO vs. O_NONBLOCK for nonblocking I/O... O_NONBLOCK
checking check for SV_ONSTACK... yes
checking check for SIGSYS... yes
checking check for SIGEMT... yes
checking for sigaltstack... yes
checking for feenableexcept... no
checking for dis-asm.h... no
checking for tclsh... tclsh
checking for tcl/tk... not found
checking for sys/mman.h... yes
checking for mprotect... yes
checking for alloca.h... yes
./configure: line 11664: ac_fn_c_check_type: command not found
checking for working alloca.h... no
checking for alloca... no
checking stack direction for C alloca... -1
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating bin/gcl
config.status: creating unixport/init_raw.lsp
config.status: creating h/gclincl.h
config.status: executing depfiles commands
cmp: h/config.h: No such file or directory
configuration for arm64-macosx done
binghe@binghe-mini4:/Volumes/GNU/gcl/gcl$ make unixport/saved_pre_gcl
depbase=`echo o/typespec.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
        gcc -DHAVE_CONFIG_H -I. -I./h  -I h -I /usr/include/tirpc   
-fsigned-char -pipe -fcommon -fno-builtin-malloc -fno-builtin-free -fno-PIE 
-fno-pie -fno-PIC -fno-pic -std=gnu17 -Wall -Wno-builtin-requires-header 
-Wno-empty-body -Wno-self-assign -Wno-unused-but-set-variable 
-D_FILE_OFFSET_BITS=64 -D_TIME_BITS=64 -fbracket-depth=512    -O3 
-fomit-frame-pointer -I o  -MT o/typespec.o -MD -MP -MF $depbase.Tpo -c -o 
o/typespec.o o/typespec.c &&\
        mv -f $depbase.Tpo $depbase.Po
In file included from o/typespec.c:30:
In file included from ./h/include.h:75:
In file included from ./h/config.h:28:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/unistd.h:73:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/unistd.h:180:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:50:32:
 error: cannot combine with previous 'type-name' declaration specifier
   50 | typedef __darwin_size_t        size_t;
      |                                ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:75:
In file included from ./h/config.h:28:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/unistd.h:73:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/unistd.h:180:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/sys/_types/_size_t.h:50:32:
 error: 'type-name' cannot be signed or unsigned
./h/gclincl.h:467:16: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:97:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/stdlib.h:58:
In file included from 
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/_stdlib.h:72:
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/alloca.h:35:26:
 error: conflicting types for '__builtin_alloca'
   35 | void    *_LIBC_SIZE(__size) alloca(size_t __size);              /* 
built-in for gcc */
      |                             ^
./h/include.h:43:16: note: expanded from macro 'alloca'
   43 | #define alloca __builtin_alloca
      |                ^
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/usr/include/alloca.h:35:26:
 note: '__builtin_alloca' is a builtin with type 'void *(unsigned long)'
./h/include.h:43:16: note: expanded from macro 'alloca'
   43 | #define alloca __builtin_alloca
      |                ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:1: error: unknown type name 'RF_unsigned'; did you 
mean 'unsigned'?
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:178:11: note: expanded from macro 'MEM_GMP_CALL'
  178 |    INLINE Join(RF_,rt_) Join(m,a_)(Join(P,n_)(b_)) { \
      |           ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:396:1: note: expanded from here
  396 | RF_unsigned
      | ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:1: error: use of undeclared identifier 
'RD_unsigned'; did you mean 'aem_unsigned'?
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:180:12: note: expanded from macro 'MEM_GMP_CALL'
  180 |            Join(RD_,rt_);\
      |            ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:400:1: note: expanded from here
  400 | RD_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:19: error: expected ';' after expression
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:1: error: use of undeclared identifier 
'RA_unsigned'; did you mean 'aem_unsigned'?
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:187:12: note: expanded from macro 'MEM_GMP_CALL'
  187 |            Join(RA_,rt_) a_(Join(A,n_));\
      |            ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:403:1: note: expanded from here
  403 | RA_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:19: error: expected ';' after expression
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:1: error: a parameter list without types is only 
allowed in a function definition
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:187:29: note: expanded from macro 'MEM_GMP_CALL'
  187 |            Join(RA_,rt_) a_(Join(A,n_));\
      |                             ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:404:1: note: expanded from here
  404 | A1
      | ^
./h/../h/gmp_wrappers.h:74:12: note: expanded from macro 'A1'
   74 | #define A1 _b
      |            ^
./h/../h/gmp_wrappers.h:248:1: error: use of undeclared identifier 
'RR_unsigned'; did you mean 'aem_unsigned'?
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:192:19: note: expanded from macro 'MEM_GMP_CALL'
  192 |            return Join(RR_,rt_);\
      |                   ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:405:1: note: expanded from here
  405 | RR_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:248:19: error: expected ';' after return statement
  248 | EXPORT_GMP_CALL(1,size_t,size,0,mpz_t)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:1: error: unknown type name 'RF_unsigned'; did you 
mean 'unsigned'?
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:178:11: note: expanded from macro 'MEM_GMP_CALL'
  178 |    INLINE Join(RF_,rt_) Join(m,a_)(Join(P,n_)(b_)) { \
      |           ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:407:1: note: expanded from here
  407 | RF_unsigned
      | ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:1: error: use of undeclared identifier 
'RD_unsigned'; did you mean 'aem_unsigned'?
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:180:12: note: expanded from macro 'MEM_GMP_CALL'
  180 |            Join(RD_,rt_);\
      |            ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:412:1: note: expanded from here
  412 | RD_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:19: error: expected ';' after expression
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:1: error: use of undeclared identifier 
'RA_unsigned'; did you mean 'aem_unsigned'?
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:187:12: note: expanded from macro 'MEM_GMP_CALL'
  187 |            Join(RA_,rt_) a_(Join(A,n_));\
      |            ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:415:1: note: expanded from here
  415 | RA_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:19: error: expected ';' after expression
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:1: error: a parameter list without types is only 
allowed in a function definition
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      | ^
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:187:29: note: expanded from macro 'MEM_GMP_CALL'
  187 |            Join(RA_,rt_) a_(Join(A,n_));\
      |                             ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
note: (skipping 1 expansions in backtrace; use -fmacro-backtrace-limit=0 to see 
all)
<scratch space>:416:1: note: expanded from here
  416 | A2
      | ^
./h/../h/gmp_wrappers.h:75:12: note: expanded from macro 'A2'
   75 | #define A2 A1,_c
      |            ^
./h/../h/gmp_wrappers.h:74:12: note: expanded from macro 'A1'
   74 | #define A1 _b
      |            ^
./h/../h/gmp_wrappers.h:249:1: error: use of undeclared identifier 
'RR_unsigned'; did you mean 'aem_unsigned'?
./h/../h/gmp_wrappers.h:196:3: note: expanded from macro 'EXPORT_GMP_CALL'
  196 |   MEM_GMP_CALL(n_,rt_,Join(mpz_,a_),s_,b_)                      \
      |   ^
./h/../h/gmp_wrappers.h:192:19: note: expanded from macro 'MEM_GMP_CALL'
  192 |            return Join(RR_,rt_);\
      |                   ^
./h/../h/gmp_wrappers.h:8:21: note: expanded from macro 'Join'
    8 | #define Join(a_,b_) join(a_,b_)
      |                     ^
./h/../h/gmp_wrappers.h:7:21: note: expanded from macro 'join'
    7 | #define join(a_,b_) a_ ## b_
      |                     ^
<scratch space>:417:1: note: expanded from here
  417 | RR_unsigned
      | ^
./h/../h/enum.h:41:3: note: 'aem_unsigned' declared here
   41 |   aem_unsigned,
      |   ^
In file included from o/typespec.c:30:
In file included from ./h/include.h:125:
In file included from ./h/../h/notcomp.h:253:
./h/../h/gmp_wrappers.h:249:19: error: expected ';' after return statement
  249 | EXPORT_GMP_CALL(2,size_t,sizeinbase,0,mpz_t,int)
      |                   ^
./h/gclincl.h:467:25: note: expanded from macro 'size_t'
  467 | #define size_t unsigned int
      |                         ^
In file included from o/typespec.c:30:
./h/include.h:129:10: fatal error: '../h/new_decl.h' file not found
  129 | #include "../h/new_decl.h"
      |          ^~~~~~~~~~~~~~~~~
20 errors generated.
make: *** [o/typespec.o] Error 1

Attachment: signature.asc
Description: OpenPGP digital signature

Reply via email to