Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT sources DOT redhat DOT com Delivered-To: mailing list cygwin AT sources DOT redhat DOT com Message-ID: From: Mike Enright To: "'cygwin AT cygwin DOT com'" Subject: RPCNDR.H and boolean Date: Thu, 28 Dec 2000 15:51:54 -0800 MIME-Version: 1.0 X-Mailer: Internet Mail Service (5.5.2650.21) Content-Type: text/plain; charset="iso-8859-1" I'm using some .h files generated by MIDL. These .h files contain this comment: /* File created by MIDL compiler version 5.01.0164 */ Plus these preprocessor directives: #ifndef __REQUIRED_RPCNDR_H_VERSION__ #define __REQUIRED_RPCNDR_H_VERSION__ 440 #endif And (finally) these files use a "boolean" (not "BOOL" or "bool") typedef which is defined in rpcndr.h if you get that file from the M$ SDK. The cygwin files I'm currently using appear to be 1.1.4. I've looked at version 1.1.7, and it appears that if I were to upgrade then the RPCNDR_H_VERSION macro would work, but still there would be no "typedef unsigned char boolean;". If I stay with 1.1.4, I have to add "-D__RPCNDR_H_VERSION=3" to the makefile and wedge the typedef into some source file. If I upgraded to 1.1.7, I'd still need the typedef. I propose that the typedef be added to rpcndr.h. Relative to the w32api tarball dated 12/25/00, I'd suggest putting the typedef on line 47 of rpcndr.h, since that closely corresponds to where it is in the M$ file. This would break code that had its own definition of boolean iff it includes rpcndr.h directly or indirectly. On the other hand, if people have some sort of SDK with headers generated by a recent version of MIDL, they will be able to use cygwin. -- Mike Enright -- Want to unsubscribe from this list? Check out: http://cygwin.com/ml/#unsubscribe-simple