Re: testing glpk 4.62 on a 64-bit platform

Heinrich Schuchardt <[email protected]>
Newsgroups gmane.comp.gnu.glpk
Message-ID <[email protected]>
Hello Andrew,

the code is still wrong in minisat.h:

typedef int  lit;

This assumes that int never has more bits then size_t. This is not
guaranteed. The x32 ABI uses 32bit addresses and supports 64bit integers
(https://lwn.net/Articles/456731/). It depends on the compiler if int
has 32 or 64bit.

Change the definition to either

typedef size_t lit;

or

typedef ssize_t lit;

depending on your need to use signed or unsigned integers.

The following line has a typo:
/* vector of 32-bit intergers (added for 64-bit portability) */

The following typedef is also wrong. The size of arrays should not be of
type int but of type size_t.
And int is not guaranteed to be 32bit. Use int32_t if you explicitly
need 32bits.

typedef struct /* veci_t */ {
    int    size; // this should be size_t
    int    cap;  // this should be size_t
    int*   ptr;  // this should be int32_t* if you need 32bit
} veci;

Same bug here:
typedef struct /* vecp_t */ {
    int    size; // this should be size_t
    int    cap;  // this should be size_t
    void** ptr;
} vecp;

Please, carefully review the types used in the whole module.
It should make no assumptions about the relative lengths of pointers and
integers.

Best regards

Heinrich Schuchardt

On 05/24/2017 10:25 AM, Andrew Makhorin wrote:
>> Please see a preliminary non-official release of glpk 4.62 at:
>> http://sourceforge.net/projects/noumenon/files/tmp/
>>
>>
> 
> I'd very appreciate if someone could test the --minisat option on a
> 64-bit platform. To test it just compile and install glpk as usual and
> then enter subdirectory glpk/examples/pbn and run glpsol as follows:
> 
> glpsol --minisat -m pbn.mod -d disney.dat
> 
> If glpsol crashes, please report to [email protected] . Thanks.
> 
> 
> Andrew Makhorin
> 
> 
> _______________________________________________
> Help-glpk mailing list
> [email protected]
> https://lists.gnu.org/mailman/listinfo/help-glpk
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.