Hi Alex,

I think I’ve found the explanation for the "constant size” error here, it’s 
about "clang":
<http://stackoverflow.com/questions/19416608/compilin-error-fields-must-have-a-constant-size-variable-length-array-in-stru>
… and I can confirm the clang-link:
$ ls -la /usr/bin/
...
lrwxr-xr-x     1 root   wheel         5 Apr  8 11:47 cc -> clang
...

Can this be fixed in picoLisp/src/Makefile, or do I have to take care of the 
unlinking myself?

/Jon

On 9. Apr, 2014, at 07:26, Alexander Burger 
<a...@software-lab.de<mailto:a...@software-lab.de>> wrote:

Hi Jon,

Today I upgraded the OS on my iMac to OS X 10.9.2, aka =93Mavericks=94. Aft=
er having installed Apple=92s latest development tools, I wanted to see if =
I could build the latest =93ongoing=94 32-bit PicoLisp. Oops, no, it didn=
=92t work quite as well as I had hoped. Here=92s the first part of the stor=
y:

f3bmac3:picoLisp jkleiser$ (cd src; make)
gcc -c -O2 -m32 -pipe -falign-functions -fomit-frame-pointer -fno-strict-al=
iasing -W -Wimplicit -Wreturn-type -Wunused -Wformat -Wuninitialized -Wstri=
ct-prototypes -D_GNU_SOURCE  -D_FILE_OFFSET_BITS=3D64 -D_OS=3D'"Darwin"' ma=
in.c
main.c:267:16: warning: using the result of an assignment as a condition wi=
thout parentheses [-Wparentheses]
     while (h =3D h->next);
            ~~^~~~~~~~~
main.c:267:16: note: place parentheses around the assignment to silence thi=
s warning

This is a really stupid warning! Can probably easily switched off. The C
code is perfectly legal and exactly intended this way.



main.c:711:34: error: fields must have a constant size: 'variable length ar=
ray in structure' extension will never be
     supported
     struct {any sym; any val;} bnd[length(y)+2];

I don't know why Apple's development system has problems with this :(
Variable length structures are part of the C language since eons. No way
to fix this, because PicoLisp all over depends on such data structures.

♪♫ Alex
--
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to