Hello, I'm trying to make SPARK package for Debian, not yet successful, but I think this could be done. I'm currently trying to compile version 2010-SMT of gnat-gpl (is SMT part of the version or something else). Current status is: sparklalr - compiles ok examiner - a lot of warnings about invalid unchecked_conversion in dictionary-rawdict.adb, example: dictionary-rawdict.adb:4751:07: warning: types for unchecked conversion have different sizes dictionary-rawdict.adb:4751:07: warning: size of "Globalvariableref" is 64, size of "Reftype" is 32 I think this only happens on 64-bit architectures and is a real bug there. Here Reftype is defined in examinerconstants.ads as follows: type RefType is range 0 .. Natural'Last; --# assert RefType'Base is Integer; Globalvariableref in the error message is an access type, so it will not fit into RefType. So reftype should be something like Integer_Address, but then what to do with the range and with assert? Another problem is compiller error (probably fixed in gcc-snapshot, but there are other problems with it, see bug #616362): gcc-4.4 -c -g -gnatwae -gnat05 -gnatwl -gnaty3abefhiklnprt -I../lib/spark/current -I../common/versioning -gnatf -O1 -fstack-check sem.adb raised STORAGE_ERROR : stack overflow (or erroneous memory access) simplifier & checker - those two parts are written in prolog. I was able to compile them using swi-prolog with some changes. But to be sure that everything works some testing is needed. wraputility - ok pogs - ok sparkformat - the same problem in dictionary-rawdict.adb as with examiner. sparkmake - ok sparksimp - ok viktor - ok victor_wrapper - ok So the largest problem for now is definition of RefType. And I'm not sure at all what to do with it. Also I have no idea how binary distribution for x86_64 was compiled. Maybe it was compiled with older compuler that does not emit that warning and binary distribution is broken? This is from gdb: (gdb) print examinerconstants.RefType(0xffffffff) $5 = -1 Any ideas? Regards, Eugeniy Meshcheryakov
Attachment:
signature.asc
Description: Digital signature