Hi,

On Mon, 26 Nov 2018 12:32:19 +0100 felix.winkelm...@bevuta.com wrote:

> Thanks, your suggestions seem to be correct, I applied the patch and removed
> the last call to sub-boxed!. I also added a (very simple) test.
>
>> - Finally: there are still quite some remnants of the old boxing/unboxing
>>    code around to mark variables as 'boxed, and there's still ##core#box
>>    and ##core#unbox in the intermediate language.
>> 
>>    Is that still relevant, or can we delete that too?  As far as I can
>>    tell, that code is still active and used; could you tell me more about
>>    how it works and how it relates (or not) to the lfa2 boxing and
>>    unboxing step, especially why the patch introduces a new box_float
>>    operation rather than re-using the old intermediate language box/unbox
>>    operations?
>
> ##core#box/##core#unbox are unrelated, they access boxed variables
> in closures (1-element vectors).

It looks like this patch (79cf7427, master) has broken "make
bootstrap".  Log attached (using CHICKEN 5.0.0 as CHICKEN).

All the best.
Mario
-- 
http://parenteses.org/mario
"make" PLATFORM=linux PREFIX=/nowhere CONFIG= \
  CHICKEN=/home/mario/local/chicken-5.0.0/bin/chicken 
PROGRAM_SUFFIX=-boot-stage1 STATICBUILD=1 \
  C_COMPILER_OPTIMIZATION_OPTIONS="-Os -fomit-frame-pointer" 
BUILDING_CHICKEN_BOOT=1 \
  confclean chicken-boot-stage1
make[1]: Entering directory '/home/mario/src/chicken-core'
rm -f \
  chicken-config.h chicken-defaults.h chicken-install.rc chicken-uninstall.rc
echo '#define STATICBUILD 1' >> chicken-defaults.h
echo '#define C_CHICKEN_PROGRAM "chicken-boot-stage1"' >> chicken-defaults.h
echo '#ifndef C_INSTALL_CC' >> chicken-defaults.h
echo '# define C_INSTALL_CC "gcc"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_CXX' >> chicken-defaults.h
echo '# define C_INSTALL_CXX "g++"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_POSTINSTALL_PROGRAM' >> chicken-defaults.h
echo '# define C_INSTALL_POSTINSTALL_PROGRAM "true"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_RC_COMPILER' >> chicken-defaults.h
echo '# define C_INSTALL_RC_COMPILER ""' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_CFLAGS' >> chicken-defaults.h
echo '# define C_INSTALL_CFLAGS "-fno-strict-aliasing -fwrapv 
-DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_LDFLAGS' >> chicken-defaults.h
echo '# define C_INSTALL_LDFLAGS " "' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_PREFIX' >> chicken-defaults.h
echo '# define C_INSTALL_PREFIX "/nowhere"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_SHARE_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_SHARE_HOME "/nowhere/share/chicken-boot-stage1"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_BIN_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_BIN_HOME "/nowhere/bin"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_EGG_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_EGG_HOME "/nowhere/lib/chicken-boot-stage1/9"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_LIB_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_LIB_HOME "/nowhere/lib"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_LIB_NAME' >> chicken-defaults.h
echo '# define C_INSTALL_LIB_NAME "chicken-boot-stage1"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_STATIC_LIB_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_STATIC_LIB_HOME "/nowhere/lib"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_INCLUDE_HOME' >> chicken-defaults.h
echo '# define C_INSTALL_INCLUDE_HOME "/nowhere/include/chicken-boot-stage1"' 
>> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_MORE_LIBS' >> chicken-defaults.h
echo '# define C_INSTALL_MORE_LIBS "-lm -ldl"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_INSTALL_MORE_STATIC_LIBS' >> chicken-defaults.h
echo '# define C_INSTALL_MORE_STATIC_LIBS "-lm -ldl"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_STACK_GROWS_DOWNWARD' >> chicken-defaults.h
echo '# define C_STACK_GROWS_DOWNWARD 1' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_MORE_LIBS' >> chicken-defaults.h
echo '# define C_TARGET_MORE_LIBS "-lm -ldl"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_MORE_STATIC_LIBS' >> chicken-defaults.h
echo '# define C_TARGET_MORE_STATIC_LIBS "-lm -ldl"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_CC' >> chicken-defaults.h
echo '# define C_TARGET_CC "gcc"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_CXX' >> chicken-defaults.h
echo '# define C_TARGET_CXX "g++"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_RC_COMPILER' >> chicken-defaults.h
echo '# define C_TARGET_RC_COMPILER ""' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_INSTALL_PROGRAM' >> chicken-defaults.h
echo '# define C_TARGET_INSTALL_PROGRAM "install"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_CFLAGS' >> chicken-defaults.h
echo '# define C_TARGET_CFLAGS "-fno-strict-aliasing -fwrapv 
-DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -Os -fomit-frame-pointer"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_LDFLAGS' >> chicken-defaults.h
echo '# define C_TARGET_LDFLAGS " "' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_INSTALL_PROGRAM_EXECUTABLE_OPTIONS' >> chicken-defaults.h
echo '# define C_TARGET_INSTALL_PROGRAM_EXECUTABLE_OPTIONS "-m 755"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_INSTALL_PROGRAM_FILE_OPTIONS' >> chicken-defaults.h
echo '# define C_TARGET_INSTALL_PROGRAM_FILE_OPTIONS "-m 644"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_FEATURES' >> chicken-defaults.h
echo '# define C_TARGET_FEATURES ""' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CROSS_CHICKEN' >> chicken-defaults.h
echo '# define C_CROSS_CHICKEN 0' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_PREFIX' >> chicken-defaults.h
echo '# define C_TARGET_PREFIX "/nowhere"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_BIN_HOME' >> chicken-defaults.h
echo '# define C_TARGET_BIN_HOME "/nowhere/bin"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_LIB_HOME' >> chicken-defaults.h
echo '# define C_TARGET_LIB_HOME "/nowhere/lib"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_LIB_NAME' >> chicken-defaults.h
echo '# define C_TARGET_LIB_NAME "chicken"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_RUN_LIB_HOME' >> chicken-defaults.h
echo '# define C_TARGET_RUN_LIB_HOME "/nowhere/lib"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_SHARE_HOME' >> chicken-defaults.h
echo '# define C_TARGET_SHARE_HOME "/nowhere/share"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_INCLUDE_HOME' >> chicken-defaults.h
echo '# define C_TARGET_INCLUDE_HOME "/nowhere/include/chicken"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_TARGET_STATIC_LIB_HOME' >> chicken-defaults.h
echo '# define C_TARGET_STATIC_LIB_HOME "/nowhere/lib"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CHICKEN_PROGRAM' >> chicken-defaults.h
echo '# define C_CHICKEN_PROGRAM "chicken-boot-stage1"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CSC_PROGRAM' >> chicken-defaults.h
echo '# define C_CSC_PROGRAM "csc-boot-stage1"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CSI_PROGRAM' >> chicken-defaults.h
echo '# define C_CSI_PROGRAM "csi-boot-stage1"' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CHICKEN_DO_PROGRAM' >> chicken-defaults.h
echo '# define C_CHICKEN_DO_PROGRAM "chicken-do-boot-stage1"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CHICKEN_INSTALL_PROGRAM' >> chicken-defaults.h
echo '# define C_CHICKEN_INSTALL_PROGRAM "chicken-install-boot-stage1"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CHICKEN_UNINSTALL_PROGRAM' >> chicken-defaults.h
echo '# define C_CHICKEN_UNINSTALL_PROGRAM "chicken-uninstall-boot-stage1"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_CHICKEN_STATUS_PROGRAM' >> chicken-defaults.h
echo '# define C_CHICKEN_STATUS_PROGRAM "chicken-status-boot-stage1"' >> 
chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_WINDOWS_SHELL' >> chicken-defaults.h
echo '# define C_WINDOWS_SHELL 0' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_BINARY_VERSION' >> chicken-defaults.h
echo '# define C_BINARY_VERSION 9' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '#ifndef C_USES_SONAME' >> chicken-defaults.h
echo '# define C_USES_SONAME 1' >> chicken-defaults.h
echo '#endif' >> chicken-defaults.h
echo '/* END OF FILE */' >> chicken-defaults.h
echo "/* GENERATED */" >chicken-config.h
echo "#define HAVE_DIRENT_H 1" >>chicken-config.h
echo "#define HAVE_DLFCN_H 1" >>chicken-config.h
echo "#define HAVE_INTTYPES_H 1" >>chicken-config.h
echo "#define HAVE_LIMITS_H 1" >>chicken-config.h
echo "#define HAVE_LONG_LONG 1" >>chicken-config.h
echo "#define HAVE_MEMMOVE 1" >>chicken-config.h
echo "#define HAVE_MEMORY_H 1" >>chicken-config.h
echo "#define HAVE_SIGACTION 1" >>chicken-config.h
echo "#define HAVE_SIGSETJMP 1" >>chicken-config.h
echo "#define HAVE_SIGPROCMASK 1" >>chicken-config.h
echo "#define HAVE_STDINT_H 1" >>chicken-config.h
echo "#define HAVE_STDLIB_H 1" >>chicken-config.h
echo "#define HAVE_STRERROR 1" >>chicken-config.h
echo "#define HAVE_STRINGS_H 1" >>chicken-config.h
echo "#define HAVE_STRING_H 1" >>chicken-config.h
echo "#define HAVE_STRTOLL 1" >>chicken-config.h
echo "#define HAVE_STRTOQ 1" >>chicken-config.h
echo "#define HAVE_SYS_STAT_H 1" >>chicken-config.h
echo "#define HAVE_SYS_TYPES_H 1" >>chicken-config.h
echo "#define HAVE_SETENV 1" >>chicken-config.h
echo "#define HAVE_UNISTD_H 1" >>chicken-config.h
echo "#define HAVE_UNSIGNED_LONG_LONG 1" >>chicken-config.h
echo "#define STDC_HEADERS 1" >>chicken-config.h
echo "#define HAVE_ALLOCA 1" >>chicken-config.h
echo "#define HAVE_ALLOCA_H 1" >>chicken-config.h
echo "#define HAVE_ERRNO_H 1" >>chicken-config.h
echo "#define HAVE_SYSEXITS_H 1" >>chicken-config.h
echo "#define C_STACK_GROWS_DOWNWARD 1" >>chicken-config.h
echo "#define C_USE_STD_FEATURE_MACROS" >>chicken-config.h
cat chicken-defaults.h >>chicken-config.h
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer chicken.c -o chicken-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer batch-driver.c -o batch-driver-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer core.c -o core-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer optimizer.c -o optimizer-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer lfa2.c -o lfa2-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer compiler-syntax.c -o compiler-syntax-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer scrutinizer.c -o scrutinizer-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer support.c -o support-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer c-platform.c -o c-platform-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer c-backend.c -o c-backend-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES  -c 
-Os -fomit-frame-pointer user-pass.c -o user-pass-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN library.c -o library-static.o 
-I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN eval.c -o eval-static.o -I. 
-I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN read-syntax.c -o 
read-syntax-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN repl.c -o repl-static.o -I. 
-I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN data-structures.c -o 
data-structures-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN pathname.c -o 
pathname-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN port.c -o port-static.o -I. 
-I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN file.c -o file-static.o -I. 
-I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN extras.c -o extras-static.o 
-I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN lolevel.c -o lolevel-static.o 
-I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN tcp.c -o tcp-static.o -I. -I./
gcc -fno-strict-aliasing -fwrapv -DHAVE_CHICKEN_CONFIG_H -DC_ENABLE_PTABLES -c 
-Os -fomit-frame-pointer  -DC_BUILDING_LIBCHICKEN srfi-4.c -o srfi-4-static.o 
-I. -I./
srfi-4.c: In function ‘f_4437’:
srfi-4.c:7981:1: error: cannot convert to a pointer type
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f32vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
 ^~~
In file included from srfi-4.c:9:0:
chicken.h:1610:89: error: array subscript is not an integer
 #define C_ub_i_f32vector_ref(b, i)      (((float 
*)C_data_pointer(C_block_item((b), 1)))[ i ])
                                                                                
         ^
chicken.h:995:59: note: in definition of macro ‘C_set_block_item’
 #define C_set_block_item(x,i,y)    (C_block_item(x, i) = (y))
                                                           ^
srfi-4.c:7981:8: note: in expansion of macro ‘C_a_i_cons’
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f32vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
        ^~~~~~~~~~
srfi-4.c:7981:36: note: in expansion of macro ‘C_ub_i_f32vector_ref’
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f32vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
                                    ^~~~~~~~~~~~~~~~~~~~
srfi-4.c: In function ‘f_4466’:
srfi-4.c:8051:1: error: cannot convert to a pointer type
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f64vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
 ^~~
In file included from srfi-4.c:9:0:
chicken.h:1611:90: error: array subscript is not an integer
 #define C_ub_i_f64vector_ref(b, i)      (((double 
*)C_data_pointer(C_block_item((b), 1)))[ i ])
                                                                                
          ^
chicken.h:995:59: note: in definition of macro ‘C_set_block_item’
 #define C_set_block_item(x,i,y)    (C_block_item(x, i) = (y))
                                                           ^
srfi-4.c:8051:8: note: in expansion of macro ‘C_a_i_cons’
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f64vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
        ^~~~~~~~~~
srfi-4.c:8051:36: note: in expansion of macro ‘C_ub_i_f64vector_ref’
 
av2[1]=C_a_i_cons(&a,2,C_flonum(&a,C_ub_i_f64vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4]))),t1);
                                    ^~~~~~~~~~~~~~~~~~~~
srfi-4.c: In function ‘f_5408’:
srfi-4.c:10318:1: error: cannot convert to a pointer type
 
av2[1]=C_flonum(&a,C_ub_i_f64vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4])));
 ^~~
In file included from srfi-4.c:9:0:
chicken.h:1611:90: error: array subscript is not an integer
 #define C_ub_i_f64vector_ref(b, i)      (((double 
*)C_data_pointer(C_block_item((b), 1)))[ i ])
                                                                                
          ^
srfi-4.c:10318:20: note: in expansion of macro ‘C_ub_i_f64vector_ref’
 
av2[1]=C_flonum(&a,C_ub_i_f64vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4])));
                    ^~~~~~~~~~~~~~~~~~~~
srfi-4.c: In function ‘f_5438’:
srfi-4.c:10410:1: error: cannot convert to a pointer type
 
av2[1]=C_flonum(&a,C_ub_i_f32vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4])));
 ^~~
In file included from srfi-4.c:9:0:
chicken.h:1610:89: error: array subscript is not an integer
 #define C_ub_i_f32vector_ref(b, i)      (((float 
*)C_data_pointer(C_block_item((b), 1)))[ i ])
                                                                                
         ^
srfi-4.c:10410:20: note: in expansion of macro ‘C_ub_i_f32vector_ref’
 
av2[1]=C_flonum(&a,C_ub_i_f32vector_ref(C_flonum_magnitude(((C_word*)t0)[3]),C_flonum_magnitude(((C_word*)t0)[4])));
                    ^~~~~~~~~~~~~~~~~~~~
rules.make:121: recipe for target 'srfi-4-static.o' failed
make[1]: *** [srfi-4-static.o] Error 1
make[1]: Leaving directory '/home/mario/src/chicken-core'
rules.make:993: recipe for target 'boot-chicken' failed
make: *** [boot-chicken] Error 2
_______________________________________________
Chicken-hackers mailing list
Chicken-hackers@nongnu.org
https://lists.nongnu.org/mailman/listinfo/chicken-hackers

Reply via email to