Hi,
Redefinitions are part of C11 and compilers which support C11 and default to C11 mode would have masked the issue which is why we are here. Because of the redefinitions, it is not possible to build Guile with older compilers which only support C99.
I hit this issue attempting to build Guile 3.0.9 with GCC 4.0.1.
The first error being
  CC       libgnu_la-regex.lo
In file included from ../libguile/threads.h:27,
                 from glthread/lock.h:27,
                 from regex_internal.h:56,
                 from regex.c:71:
../libguile/dynstack.h:37: error: redefinition of typedef 'scm_t_dynstack'
../libguile/scm.h:825: error: previous declaration of 'scm_t_dynstack' was here
In file included from ../libguile/smob.h:28,
                 from ../libguile/threads.h:29,
                 from glthread/lock.h:27,
                 from regex_internal.h:56,
                 from regex.c:71:
../libguile/print.h:79: error: redefinition of typedef 'scm_print_state'
../libguile/scm.h:824: error: previous declaration of 'scm_print_state' was here
make[4]: *** [libgnu_la-regex.lo] Error 1

There's more issues after addressing these. I will follow up with a patch of what I took out for the build to succeed (not necessarily correct but to highlight where the issues are).


Sevan



Reply via email to