Problem with a header file

Mumit Khan khan@xraylith.wisc.edu
Wed Sep 16 19:22:00 GMT 1998


On Wed, 16 Sep 1998, Dr. Volker Zell wrote:

> 
> vzell:/src/oracle/oci> make oci02
> gcc -o oci02 oci02.c -I. -I/usr/local/include/oci80 -lociw32 -loci
> In file included from oci02.c:64:
> \usr\local\include\oci80\oratypes.h:169: parse error before `ub8'
> \usr\local\include\oci80\oratypes.h:169: warning: data definition has no type or storage class
> \usr\local\include\oci80\oratypes.h:183: parse error before `sb8'
> \usr\local\include\oci80\oratypes.h:183: warning: data definition has no type or storage class
> make: *** [oci02] Error 1
> 
> The problem is in the oratypes.h include file:
> 
> When I change line 169 (and the same in 183) from
> 
>   typedef unsigned _int64 ub8;
> 
> to
> 
>   typedef unsigned int ub8;
            ^^^^^^^^^^^^ wrong size!

That's because _int64 is not a built-in type for GCC; it is for MSVC and
a few other win32 compilers however, and that's there's code out there
that trips over this.

Easiest fix, in oratypes.h:
  
  #ifdef __GNUC__
  typedef unsigned long long ub8;
  #endif
  typedef unsigned _int64 ub8;
  #endif

Regards,
Mumit

-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".



More information about the Cygwin mailing list