[devel] other specs with "if 64"; was: Re: [AArch64] python3 spec fix

Alexey Tourbin alexey.tourbin на gmail.com
Чт Май 26 23:46:41 MSK 2016


2016-05-26 16:35 GMT+03:00 Ivan Zakharyaschev <imz на altlinux.org>:
> Sorry, не тот пример вставил:
> CoinCsdp :
>
> %ifarch x86_64
> ADDFLAG=-DBIT64
> %endif

Мужчина, я посмотрел CoinCsdp-6.1.1.
Там есть всего два куска кода по линии BIT64.

lib/op_at.c:
    16  #ifndef BIT64
    17    int p,q;
    18  #else
    19    long int p,q;
    20  #endif

Складывается впечатление, что автор не хочет проверить
#if LONG_MAX > INT_MAX
и использовать это как критерий 64-битности.
Совпадает ли это с вашим критерием 64-битности?

lib/readprob.c:
   136  #ifndef BIT64
   137    /*
   138     * If operating in 32 bit mode, make sure that the dimension
mDIM isn't
   139     * too big for 32 bits.  If we don't do this check, then
integer overflow
   140     * won't be detected, and we'll allocate a bogus amount of storage for
   141     * O.
   142     */
   143
   144    if (*pk > 23169)
   145      {
   146        printf("This problem is too large to be solved in 32 bit
mode!\n");
   147        exit(10);
   148      };
   149  #endif

exit(10) в библиотеке. This problem is too large!


Подробная информация о списке рассылки Devel