I tried to build parrot with the clang, an llvm frontend. It provides a script called 'ccc', which accepts the same options as gcc.
Configure works fine (perl Configure.pl --verbose --cc=ccc --link=ccc). The build starts fine, but fails while compiling the first pmc: clang -emit-llvm-bc -x c -o src/io/io_passdown.o src/io/io_passdown.c -I./include -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHASATTRIBUTE_CONST -DHASATTRIBUTE_DEPRECATED -DHASATTRIBUTE_MALLOC -DHASATTRIBUTE_NONNULL -DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE -DHASATTRIBUTE_UNUSED -DHASATTRIBUTE_WARN_UNUSED_RESULT -DHAS_GETTEXT -DHAS_JIT -DI386 -DHAVE_COMPUTED_GOTO -Isrc/io src/pmc/default.c clang -emit-llvm-bc -x c -o src/pmc/default.o src/pmc/default.c -I./include -D_REENTRANT -D_GNU_SOURCE -DDEBIAN -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -DHASATTRIBUTE_CONST -DHASATTRIBUTE_DEPRECATED -DHASATTRIBUTE_MALLOC -DHASATTRIBUTE_NONNULL -DHASATTRIBUTE_NORETURN -DHASATTRIBUTE_PURE -DHASATTRIBUTE_UNUSED -DHASATTRIBUTE_WARN_UNUSED_RESULT -DHAS_GETTEXT -DHAS_JIT -DI386 -DHAVE_COMPUTED_GOTO -Isrc/pmc src/pmc/default.c:65:36: error: use of undeclared identifier '_CONST_STRING_65' VTABLE_name(interp, pmc) : CONST_STRING(interp, "(null)"); ^ src/pmc/default.c:123:38: error: use of undeclared identifier '_CONST_STRING_123' if (!string_compare(interp, key, CONST_STRING(interp, "_ro"))) { ^ src/pmc/default.c:164:9: error: use of undeclared identifier '_CONST_STRING_164' VTABLE_set_pmc_keyed_str(interp, prop_hash, CONST_STRING(interp, "_ro"), pmc_true); ^ src/pmc/default.c:202:40: error: use of undeclared identifier '_CONST_STRING_202' &&!string_compare(interp, key, CONST_STRING(interp, "_ro"))) { ^ src/pmc/default.c:947:28: error: use of undeclared identifier '_CONST_STRING_947' STRING * const undef = CONST_STRING(interp, "Undef"); ^ src/pmc/default.c:1161:9: error: use of undeclared identifier '_CONST_STRING_1161' if (VTABLE_isa(interp, p, CONST_STRING(interp, "NCI"))) { ^ src/pmc/default.c:1460:34: error: use of undeclared identifier '_CONST_STRING_1460' STRING * const flags_str = CONST_STRING(interp, "flags"); ^ src/pmc/default.c:1473:36: error: use of undeclared identifier '_CONST_STRING_1473' if (string_equal(interp, name, CONST_STRING(interp, "flags")) == 0) { ^ 8 diagnostics generated. make: *** [src/pmc/default.o] Error 1 Does anybody have an idea what might be going on, or what I could do to fix it? (If not, that's no problem; it could be that clang+ccc just isn't mature enough right now) Moritz -- Moritz Lenz http://moritz.faui2k3.org/ | http://perl-6.de/