Re: BSD-sfprint

From: Henrik Stuart (hstuart@inoyfb.com)
Date: 01/31/03


Greetings,

On 31. januar 2003 13:16:44 Thomas Arp wrote:

[snip]

> My guess is that the sumomo package uses the GNU extension of
> long long int for representation of bitvectors, effectively making
> 64 bits available. However, since long long int is a GNU extension
> this trick will not work in MSVC. If you wish to do it right, here's
> a short mail-code fix:

> in structs.h:
> +#ifndef _MSC_VER
> +typedef unsigned long long ULONGLONG;
> +#else
> +typedef __int64 ULONGLONG;
> +#endif
> +
> Change uses of 'unsigned long long' to ULONGLONG throughout the source.

Considering the package or... whatever, is using unsigned long long
then you might want to use unsigned with the MSVC-specified type as
well, i.e.: "typedef unsigned __int64 ULONGLONG;". Another approach is
"typedef unsigned hyper int ULONGLONG;". hyper specifies according to
MSDN a 64-bit integer that can be declared as either signed or
unsigned.

[snip]

> MSVC and GNU are two very different implementations of a C compiler.
> On the way the designers have made design choices, and this is one of
> those.

You can always disable GNU extensions. :o)

--
Yours truly,
  Henrik Stuart (http://www.unprompted.com/hstuart/)

--
   +---------------------------------------------------------------+
   | FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
   | Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
   | Newbie List:  http://groups.yahoo.com/group/circle-newbies/   |
   +---------------------------------------------------------------+



This archive was generated by hypermail 2b30 : 06/26/03 PDT