Bug in HTOD handling <<

Kenneth Bogert kbogert at kbogert.dyndns.org
Fri Jul 28 03:03:42 PDT 2006


HTOD does not handle a #define whose value contains a << operator

example .h file:

    #define CURL_VERSION_IPV6      (1<<0)  /* IPv6-enabled */
    #define CURL_VERSION_KERBEROS4 (1<<1)  /* kerberos auth is supported */
    #define CURL_VERSION_SSL       (1<<2)  /* SSL options are present */
    #define CURL_VERSION_LIBZ      (1<<3)  /* libz features are present */
    #define CURL_VERSION_NTLM      (1<<4)  /* NTLM auth is supported */
    #define CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */
    #define CURL_VERSION_DEBUG     (1<<6)  /* built with debug
    capabilities */ #define CURL_VERSION_ASYNCHDNS (1<<7)  /* asynchronous
    dns resolves */ #define CURL_VERSION_SPNEGO    (1<<8)  /* SPNEGO auth
    */ #define CURL_VERSION_LARGEFILE (1<<9)  /* supports files bigger
    than 2GB */ #define CURL_VERSION_IDN       (1<<10) /* International
    Domain Names support */ #define CURL_VERSION_SSPI      (1<<11) /* SSPI
    is supported */ #define CURL_VERSION_CONV      (1<<12)

output from htod:

/* Converted to D from curl.h by htod */ module curl;
//C         #define CURL_VERSION_IPV6      (1<<0)  /* IPv6-enabled */ 
//C         #define CURL_VERSION_KERBEROS4 (1<<1)  /* kerberos auth is
supported */ 
//C         #define CURL_VERSION_SSL       (1<<2)  /* SSL
options are present */ 
//C         #define CURL_VERSION_LIBZ      (1<<3) 
/* libz features are present */ 
//C         #define CURL_VERSION_NTLM     
(1<<4)  /* NTLM auth is supported */ 
//C         #define
CURL_VERSION_GSSNEGOTIATE (1<<5) /* Negotiate auth support */ 
//C         #define CURL_VERSION_DEBUG     (1<<6)  /* built with debug
capabilities */ 
//C         #define CURL_VERSION_ASYNCHDNS (1<<7)  /*
asynchronous dns resolves */ 
//C         #define CURL_VERSION_SPNEGO   
(1<<8)  /* SPNEGO auth */ 
//C         #define CURL_VERSION_LARGEFILE
(1<<9)  /* supports files bigger than 2GB */ 
//C         #define CURL_VERSION_IDN (1<<10) /* International Domain Names
support */ //C         #define CURL_VERSION_SSPI      (1<<11) /* SSPI is
supported */ //C         #define CURL_VERSION_CONV      (1<<12)

I've tried removing the parenthesis with the same results.

kdb



More information about the Digitalmars-d-bugs mailing list