This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: g++, opengl, and STDCALL, * __attribute__ ((stdcall)) problem.


From: ulisses mello <mello@ldgo.columbia.edu>
Date: Saturday, November 29, 1997 10:55 PM

>I am trying to compile a simple program (cube.c) with g++. I have no
>problem to compile it using gcc. However, GL/gl.h does not compile in
>g++. For example, I get the error:
>
>sintax error before '__attribute__' on the function
>
>WINGDIAP const GLubyte * APIENTRY glGetString( GLenum name);
>
>making the substitutions from windows.h it becomes:
>
>const GLubyte * __attribute ((stdcall)) glGetString( GLenum name);
>
>I am aware the g++ flags an error for things like:
>
>int * __stdcall foo(); // but has no problems with
>int __stdcall *  foo();
>
>But changing the order of * in gl.h has not solved the problem.

I think if you move APIENTRY to the *end* of the function prototype then
it will work with g++ (and gcc), but, of course, it will stop working with
other compilers I suspect. If you are just using gcc and g++ then no
problem, otherwise make separate copies of those headers for gcc/g++.

WINGDIAP const GLubyte * glGetString( GLenum name) APIENTRY;

Looks strange, but I think it will work.

This is, I think, a bug in the C++ parser, and I have no idea if/when it
will be fixed.

Good luck,
Colin.

-- Colin Peters -- colin at fu.is.saga-u.ac.jp
-- Saga University Dept. of Information Science
-- http://www.fu.is.saga-u.ac.jp/~colin
-- http://www.geocities.com/Tokyo/Towers/6162



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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]