Re: expat/lib xmlparse.c,1.84,1.85 xmlrole.c,1.12,1.13 xmlrole.h,1.7,1.8

"Karl Waclawek" <[email protected]>
Newsgroups gmane.text.xml.expat.cvs
Message-ID <003f01c254eb$ef3634b0$9e539696@citkwaclaww2k>
Fred,

You did lots of work yesterday/this morning!!!

In xmlrole.h I had to change the PROLOG_STATE declaration like this,
to make it compile under VC++:


/* from FASTCALL (*handler) to (FASTCALL * handler) */
typedef struct prolog_state {
  int (FASTCALL *handler) (struct prolog_state *state,
                          int tok,
                          const char *ptr,
                          const char *end,
                          const ENCODING *enc);
  unsigned level;
  int role_none;
#ifdef XML_DTD
  unsigned includeLevel;
  int documentEntity;
  int inEntityValue;
#endif /* XML_DTD */
} PROLOG_STATE;

Would that work under gcc too?

Also, are you still going to add FASTCALL to xmltok.h/c,
xmltok_impl.c and xmltok_ns.c?

Y



Karl


----- Original Message ----- 
From: "Fred L. Drake" <[email protected]>
To: <[email protected]>
Sent: Wednesday, September 04, 2002 9:58 PM
Subject: [Expat-checkins] expat/lib xmlparse.c,1.84,1.85 xmlrole.c,1.12,1.13 xmlrole.h,1.7,1.8


> Update of /cvsroot/expat/expat/lib
> In directory usw-pr-cvs1:/tmp/cvs-serv26733/lib
> 
> Modified Files:
> xmlparse.c xmlrole.c xmlrole.h 
> Log Message:
> Use the FASTCALL macro for many of the internal functions.
> 
> Index: xmlparse.c
> ===================================================================
> RCS file: /cvsroot/expat/expat/lib/xmlparse.c,v
> retrieving revision 1.84
> retrieving revision 1.85
> diff -u -d -r1.84 -r1.85
> --- xmlparse.c 5 Sep 2002 01:48:26 -0000 1.84
> +++ xmlparse.c 5 Sep 2002 01:58:27 -0000 1.85
> @@ -95,6 +95,7 @@
>  #endif /* HAVE_MEMMOVE */
>  
>  #include "xmltok.h"
> +#include "internal.h"
>  #include "xmlrole.h"
>  
>  typedef const XML_Char *KEY;
> @@ -271,10 +272,10 @@
>    ENTITY *entity;
>  } OPEN_INTERNAL_ENTITY;
>  
> -typedef enum XML_Error Processor(XML_Parser parser,
> -                                 const char *start,
> -                                 const char *end,
> -                                 const char **endPtr);
> +typedef enum XML_Error FASTCALL Processor(XML_Parser parser,
> +                                          const char *start,
> +                                          const char *end,
> +                                          const char **endPtr);
>  
>  static Processor prologProcessor;
>  static Processor prologInitProcessor;
> @@ -294,114 +295,121 @@
>  static Processor externalEntityInitProcessor3;
>  static Processor externalEntityContentProcessor;
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  handleUnknownEncoding(XML_Parser parser, const XML_Char *encodingName);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  processXmlDecl(XML_Parser parser, int isGeneralTextEntity,
>                 const char *, const char *);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  initializeEncoding(XML_Parser parser);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doProlog(XML_Parser parser, const ENCODING *enc, const char *s,
>           const char *end, int tok, const char *next, const char **nextPtr);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  processInternalParamEntity(XML_Parser parser, ENTITY *entity);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doContent(XML_Parser parser, int startTagLevel, const ENCODING *enc,
>            const char *start, const char *end, const char **endPtr);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doCdataSection(XML_Parser parser, const ENCODING *, const char **startPtr,
>                 const char *end, const char **nextPtr);
>  #ifdef XML_DTD
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doIgnoreSection(XML_Parser parser, const ENCODING *, const char **startPtr,
>                  const char *end, const char **nextPtr);
>  #endif /* XML_DTD */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeAtts(XML_Parser parser, const ENCODING *,
>            const char *s, TAG_NAME *tagNamePtr, BINDING **bindingsPtr);
> -static int
> +static int FASTCALL
>  addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId,
>             const XML_Char *uri, BINDING **bindingsPtr);
>  
> -static int
> +static int FASTCALL
>  defineAttribute(ELEMENT_TYPE *type, ATTRIBUTE_ID *,
>                  XML_Bool isCdata, XML_Bool isId, const XML_Char *dfltValue,
>                  XML_Parser parser);
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeAttributeValue(XML_Parser parser, const ENCODING *, XML_Bool isCdata,
>                      const char *, const char *, STRING_POOL *);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  appendAttributeValue(XML_Parser parser, const ENCODING *, XML_Bool isCdata,
>                       const char *, const char *, STRING_POOL *);
> -static ATTRIBUTE_ID *
> +static ATTRIBUTE_ID * FASTCALL
>  getAttributeId(XML_Parser parser, const ENCODING *enc, const char *start,
>                 const char *end);
> -static int
> +static int FASTCALL
>  setElementTypePrefix(XML_Parser parser, ELEMENT_TYPE *);
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeEntityValue(XML_Parser parser, const ENCODING *enc, const char *start,
>                   const char *end);
> -static int
> +static int FASTCALL
>  reportProcessingInstruction(XML_Parser parser, const ENCODING *enc,
>                              const char *start, const char *end);
> -static int
> +static int FASTCALL
>  reportComment(XML_Parser parser, const ENCODING *enc, const char *start,
>                const char *end);
> -static void
> +static void FASTCALL
>  reportDefault(XML_Parser parser, const ENCODING *enc, const char *start,
>                const char *end);
>  
> -static const XML_Char *getContext(XML_Parser parser);
> -static XML_Bool setContext(XML_Parser parser, const XML_Char *context);
> -static void normalizePublicId(XML_Char *s);
> -static void dtdInit(DTD *, XML_Parser parser);
> +static const XML_Char * FASTCALL getContext(XML_Parser parser);
> +static XML_Bool FASTCALL
> +setContext(XML_Parser parser, const XML_Char *context);
> +static void FASTCALL normalizePublicId(XML_Char *s);
> +static void FASTCALL dtdInit(DTD *, XML_Parser parser);
>  
>  /* do not call if parentParser != NULL */
> -static void dtdReset(DTD *, XML_Parser parser);
> -static void dtdDestroy(DTD *, XML_Parser parser);
> +static void FASTCALL dtdReset(DTD *, XML_Parser parser);
> +static void FASTCALL dtdDestroy(DTD *, XML_Parser parser);
>  
> -static int dtdCopy(DTD *newDtd, const DTD *oldDtd, XML_Parser parser);
> +static int FASTCALL dtdCopy(DTD *newDtd, const DTD *oldDtd, XML_Parser parser);
>  
> -static int copyEntityTable(HASH_TABLE *, STRING_POOL *, const HASH_TABLE *,
> -                           XML_Parser parser);
> +static int FASTCALL copyEntityTable(HASH_TABLE *, STRING_POOL *,
> +                                    const HASH_TABLE *, XML_Parser parser);
>  
>  #ifdef XML_DTD
> -static void dtdSwap(DTD *, DTD *);
> +static void FASTCALL dtdSwap(DTD *, DTD *);
>  #endif /* XML_DTD */
>  
> -static NAMED *lookup(HASH_TABLE *table, KEY name, size_t createSize);
> +static NAMED * FASTCALL
> +lookup(HASH_TABLE *table, KEY name, size_t createSize);
>  
> -static void hashTableInit(HASH_TABLE *, XML_Memory_Handling_Suite *ms);
> +static void FASTCALL
> +hashTableInit(HASH_TABLE *, XML_Memory_Handling_Suite *ms);
>  
> -static void hashTableClear(HASH_TABLE *);
> -static void hashTableDestroy(HASH_TABLE *);
> -static void hashTableIterInit(HASH_TABLE_ITER *, const HASH_TABLE *);
> -static NAMED *hashTableIterNext(HASH_TABLE_ITER *);
> -static void poolInit(STRING_POOL *, XML_Memory_Handling_Suite *ms);
> -static void poolClear(STRING_POOL *);
> -static void poolDestroy(STRING_POOL *);
> -static XML_Char *poolAppend(STRING_POOL *pool, const ENCODING *enc,
> -                            const char *ptr, const char *end);
> -static XML_Char *poolStoreString(STRING_POOL *pool, const ENCODING *enc,
> -                                  const char *ptr, const char *end);
> +static void FASTCALL hashTableClear(HASH_TABLE *);
> +static void FASTCALL hashTableDestroy(HASH_TABLE *);
> +static void FASTCALL hashTableIterInit(HASH_TABLE_ITER *, const HASH_TABLE *);
> +static NAMED * FASTCALL hashTableIterNext(HASH_TABLE_ITER *);
> +static void FASTCALL poolInit(STRING_POOL *, XML_Memory_Handling_Suite *ms);
> +static void FASTCALL poolClear(STRING_POOL *);
> +static void FASTCALL poolDestroy(STRING_POOL *);
> +static XML_Char * FASTCALL
> +poolAppend(STRING_POOL *pool, const ENCODING *enc,
> +           const char *ptr, const char *end);
> +static XML_Char * FASTCALL
> +poolStoreString(STRING_POOL *pool, const ENCODING *enc,
> +                const char *ptr, const char *end);
>  
> -static XML_Bool poolGrow(STRING_POOL *pool);
> +static XML_Bool FASTCALL poolGrow(STRING_POOL *pool);
>  
> -static int nextScaffoldPart(XML_Parser parser);
> -static XML_Content *build_model(XML_Parser parser);
> +static int FASTCALL nextScaffoldPart(XML_Parser parser);
> +static XML_Content * FASTCALL build_model(XML_Parser parser);
>  
> -static const XML_Char *poolCopyString(STRING_POOL *pool, const XML_Char *s);
> -static const XML_Char *poolCopyStringN(STRING_POOL *pool, const XML_Char *s,
> -                                       int n);
> -static const XML_Char *poolAppendString(STRING_POOL *pool, const XML_Char *s);
> -static ELEMENT_TYPE * getElementType(XML_Parser Paraser,
> -                                     const ENCODING *enc,
> -                                     const char *ptr,
> -                                     const char *end);
> +static const XML_Char * FASTCALL
> +poolCopyString(STRING_POOL *pool, const XML_Char *s);
> +static const XML_Char * FASTCALL
> +poolCopyStringN(STRING_POOL *pool, const XML_Char *s, int n);
> +static const XML_Char * FASTCALL
> +poolAppendString(STRING_POOL *pool, const XML_Char *s);
> +static ELEMENT_TYPE * FASTCALL
> +getElementType(XML_Parser Paraser, const ENCODING *enc,
> +               const char *ptr, const char *end);
>  
> -static void parserInit(XML_Parser parser, const XML_Char *encodingName);
> +static void FASTCALL
> +parserInit(XML_Parser parser, const XML_Char *encodingName);
>  
>  #define poolStart(pool) ((pool)->start)
>  #define poolEnd(pool) ((pool)->ptr)
> @@ -719,7 +727,7 @@
>    return parser;
>  }
>  
> -static void
> +static void FASTCALL
>  parserInit(XML_Parser parser, const XML_Char *encodingName)
>  {
>    processor = prologInitProcessor;
> @@ -791,7 +799,7 @@
>  }
>  
>  /* moves list of bindings to freeBindingList */
> -static void
> +static void FASTCALL
>  moveToFreeBindingList(XML_Parser parser, BINDING *bindings)
>  {
>    while (bindings) {
> @@ -966,7 +974,7 @@
>    return parser;
>  }
>  
> -static void
> +static void FASTCALL
>  destroyBindings(BINDING *bindings, XML_Parser parser)
>  {
>    for (;;) {
> @@ -1639,7 +1647,7 @@
>     processed, and not yet closed, we need to store tag->rawName in a more
>     permanent location, since the parse buffer is about to be discarded.
>  */
> -static XML_Bool
> +static XML_Bool FASTCALL
>  storeRawNames(XML_Parser parser)
>  {
>    TAG *tag = tagStack;
> @@ -1674,7 +1682,7 @@
>    return XML_TRUE;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  contentProcessor(XML_Parser parser,
>                   const char *start,
>                   const char *end,
> @@ -1689,7 +1697,7 @@
>    return result;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalEntityInitProcessor(XML_Parser parser,
>                              const char *start,
>                              const char *end,
> @@ -1702,7 +1710,7 @@
>    return externalEntityInitProcessor2(parser, start, end, endPtr);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalEntityInitProcessor2(XML_Parser parser,
>                               const char *start,
>                               const char *end,
> @@ -1742,7 +1750,7 @@
>    return externalEntityInitProcessor3(parser, start, end, endPtr);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalEntityInitProcessor3(XML_Parser parser,
>                               const char *start,
>                               const char *end,
> @@ -1779,7 +1787,7 @@
>    return externalEntityContentProcessor(parser, start, end, endPtr);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalEntityContentProcessor(XML_Parser parser,
>                                 const char *start,
>                                 const char *end,
> @@ -1794,7 +1802,7 @@
>    return result;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doContent(XML_Parser parser,
>            int startTagLevel,
>            const ENCODING *enc,
> @@ -2248,7 +2256,7 @@
>  /* If tagNamePtr is non-null, build a real list of attributes,
>     otherwise just check the attributes for well-formedness.
>  */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeAtts(XML_Parser parser, const ENCODING *enc,
>            const char *attStr, TAG_NAME *tagNamePtr,
>            BINDING **bindingsPtr)
> @@ -2502,7 +2510,7 @@
>    return XML_ERROR_NONE;
>  }
>  
> -static int
> +static int FASTCALL
>  addBinding(XML_Parser parser, PREFIX *prefix, const ATTRIBUTE_ID *attId,
>             const XML_Char *uri, BINDING **bindingsPtr)
>  {
> @@ -2557,7 +2565,7 @@
>  /* The idea here is to avoid using stack for each CDATA section when
>     the whole file is parsed with one call.
>  */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  cdataSectionProcessor(XML_Parser parser,
>                        const char *start,
>                        const char *end,
> @@ -2581,7 +2589,7 @@
>  /* startPtr gets set to non-null is the section is closed, and to null if
>     the section is not yet closed.
>  */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doCdataSection(XML_Parser parser,
>                 const ENCODING *enc,
>                 const char **startPtr,
> @@ -2679,7 +2687,7 @@
>  /* The idea here is to avoid using stack for each IGNORE section when
>     the whole file is parsed with one call.
>  */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  ignoreSectionProcessor(XML_Parser parser,
>                         const char *start,
>                         const char *end,
> @@ -2697,7 +2705,7 @@
>  /* startPtr gets set to non-null is the section is closed, and to null
>     if the section is not yet closed.
>  */
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doIgnoreSection(XML_Parser parser,
>                  const ENCODING *enc,
>                  const char **startPtr,
> @@ -2753,7 +2761,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  initializeEncoding(XML_Parser parser)
>  {
>    const char *s;
> @@ -2782,7 +2790,7 @@
>    return handleUnknownEncoding(parser, protocolEncodingName);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  processXmlDecl(XML_Parser parser, int isGeneralTextEntity,
>                 const char *s, const char *next)
>  {
> @@ -2867,7 +2875,7 @@
>    return XML_ERROR_NONE;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  handleUnknownEncoding(XML_Parser parser, const XML_Char *encodingName)
>  {
>    if (unknownEncodingHandler) {
> @@ -2906,7 +2914,7 @@
>    return XML_ERROR_UNKNOWN_ENCODING;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  prologInitProcessor(XML_Parser parser,
>                      const char *s,
>                      const char *end,
> @@ -2921,7 +2929,7 @@
>  
>  #ifdef XML_DTD
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalParEntInitProcessor(XML_Parser parser,
>                              const char *s,
>                              const char *end,
> @@ -2945,7 +2953,7 @@
>    }
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  entityValueInitProcessor(XML_Parser parser,
>                           const char *s,
>                           const char *end,
> @@ -2999,7 +3007,7 @@
>    }
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  externalParEntProcessor(XML_Parser parser,
>                          const char *s,
>                          const char *end,
> @@ -3040,7 +3048,7 @@
>    return doProlog(parser, encoding, s, end, tok, next, nextPtr);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  entityValueProcessor(XML_Parser parser,
>                       const char *s,
>                       const char *end,
> @@ -3077,7 +3085,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  prologProcessor(XML_Parser parser,
>                  const char *s,
>                  const char *end,
> @@ -3088,7 +3096,7 @@
>    return doProlog(parser, encoding, s, end, tok, next, nextPtr);
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  doProlog(XML_Parser parser,
>           const ENCODING *enc,
>           const char *s,
> @@ -4020,7 +4028,7 @@
>    /* not reached */
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  epilogProcessor(XML_Parser parser,
>                  const char *s,
>                  const char *end,
> @@ -4082,7 +4090,7 @@
>  
>  #ifdef XML_DTD
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  processInternalParamEntity(XML_Parser parser, ENTITY *entity)
>  {
>    const char *s, *end, *next;
> @@ -4106,7 +4114,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  errorProcessor(XML_Parser parser,
>                 const char *s,
>                 const char *end,
> @@ -4115,7 +4123,7 @@
>    return errorCode;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata,
>                      const char *ptr, const char *end,
>                      STRING_POOL *pool)
> @@ -4131,7 +4139,7 @@
>    return XML_ERROR_NONE;
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  appendAttributeValue(XML_Parser parser, const ENCODING *enc, XML_Bool isCdata,
>                       const char *ptr, const char *end,
>                       STRING_POOL *pool)
> @@ -4278,7 +4286,7 @@
>    /* not reached */
>  }
>  
> -static enum XML_Error
> +static enum XML_Error FASTCALL
>  storeEntityValue(XML_Parser parser,
>                   const ENCODING *enc,
>                   const char *entityTextPtr,
> @@ -4443,7 +4451,7 @@
>    return result;
>  }
>  
> -static void
> +static void FASTCALL
>  normalizeLines(XML_Char *s)
>  {
>    XML_Char *p;
> @@ -4466,7 +4474,7 @@
>    *p = XML_T('\0');
>  }
>  
> -static int
> +static int FASTCALL
>  reportProcessingInstruction(XML_Parser parser, const ENCODING *enc,
>                              const char *start, const char *end)
>  {
> @@ -4495,7 +4503,7 @@
>    return 1;
>  }
>  
> -static int
> +static int FASTCALL
>  reportComment(XML_Parser parser, const ENCODING *enc,
>                const char *start, const char *end)
>  {
> @@ -4517,7 +4525,7 @@
>    return 1;
>  }
>  
> -static void
> +static void FASTCALL
>  reportDefault(XML_Parser parser, const ENCODING *enc,
>                const char *s, const char *end)
>  {
> @@ -4545,7 +4553,7 @@
>  }
>  
>  
> -static int
> +static int FASTCALL
>  defineAttribute(ELEMENT_TYPE *type, ATTRIBUTE_ID *attId, XML_Bool isCdata,
>                  XML_Bool isId, const XML_Char *value, XML_Parser parser)
>  {
> @@ -4588,7 +4596,7 @@
>    return 1;
>  }
>  
> -static int
> +static int FASTCALL
>  setElementTypePrefix(XML_Parser parser, ELEMENT_TYPE *elementType)
>  {
>    const XML_Char *name;
> @@ -4617,7 +4625,7 @@
>    return 1;
>  }
>  
> -static ATTRIBUTE_ID *
> +static ATTRIBUTE_ID * FASTCALL
>  getAttributeId(XML_Parser parser, const ENCODING *enc,
>                 const char *start, const char *end)
>  {
> @@ -4677,7 +4685,7 @@
>  
>  #define CONTEXT_SEP XML_T('\f')
>  
> -static const XML_Char *
> +static const XML_Char * FASTCALL
>  getContext(XML_Parser parser)
>  {
>    HASH_TABLE_ITER iter;
> @@ -4745,7 +4753,7 @@
>    return tempPool.start;
>  }
>  
> -static XML_Bool
> +static XML_Bool FASTCALL
>  setContext(XML_Parser parser, const XML_Char *context)
>  {
>    const XML_Char *s = context;
> @@ -4805,7 +4813,7 @@
>    return XML_TRUE;
>  }
>  
> -static void
> +static void FASTCALL
>  normalizePublicId(XML_Char *publicId)
>  {
>    XML_Char *p = publicId;
> @@ -4827,7 +4835,7 @@
>    *p = XML_T('\0');
>  }
>  
> -static void
> +static void FASTCALL
>  dtdInit(DTD *p, XML_Parser parser)
>  {
>    XML_Memory_Handling_Suite *ms = &parser->m_mem;
> @@ -4861,7 +4869,7 @@
>  
>  #ifdef XML_DTD
>  
> -static void
> +static void FASTCALL
>  dtdSwap(DTD *p1, DTD *p2)
>  {
>    DTD tem;
> @@ -4872,7 +4880,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static void
> +static void FASTCALL
>  dtdReset(DTD *p, XML_Parser parser)
>  {
>    HASH_TABLE_ITER iter;
> @@ -4918,7 +4926,7 @@
>    p->standalone = XML_FALSE;
>  }
>  
> -static void
> +static void FASTCALL
>  dtdDestroy(DTD *p, XML_Parser parser)
>  {
>    HASH_TABLE_ITER iter;
> @@ -4952,7 +4960,7 @@
>  /* Do a deep copy of the DTD.  Return 0 for out of memory; non-zero otherwise.
>     The new DTD has already been initialized.
>  */
> -static int
> +static int FASTCALL
>  dtdCopy(DTD *newDtd, const DTD *oldDtd, XML_Parser parser)
>  {
>    HASH_TABLE_ITER iter;
> @@ -5082,7 +5090,7 @@
>    return 1;
>  }  /* End dtdCopy */
>  
> -static int
> +static int FASTCALL
>  copyEntityTable(HASH_TABLE *newTable,
>                  STRING_POOL *newPool,
>                  const HASH_TABLE *oldTable,
> @@ -5151,7 +5159,7 @@
>  
>  #define INIT_SIZE 64
>  
> -static int
> +static int FASTCALL
>  keyeq(KEY s1, KEY s2)
>  {
>    for (; *s1 == *s2; s1++, s2++)
> @@ -5160,7 +5168,7 @@
>    return 0;
>  }
>  
> -static unsigned long
> +static unsigned long FASTCALL
>  hash(KEY s)
>  {
>    unsigned long h = 0;
> @@ -5169,7 +5177,7 @@
>    return h;
>  }
>  
> -static NAMED *
> +static NAMED * FASTCALL
>  lookup(HASH_TABLE *table, KEY name, size_t createSize)
>  {
>    size_t i;
> @@ -5233,7 +5241,7 @@
>    return table->v[i];
>  }
>  
> -static void
> +static void FASTCALL
>  hashTableClear(HASH_TABLE *table)
>  {
>    size_t i;
> @@ -5248,7 +5256,7 @@
>    table->used = 0;
>  }
>  
> -static void
> +static void FASTCALL
>  hashTableDestroy(HASH_TABLE *table)
>  {
>    size_t i;
> @@ -5261,7 +5269,7 @@
>      table->mem->free_fcn(table->v);
>  }
>  
> -static void
> +static void FASTCALL
>  hashTableInit(HASH_TABLE *p, XML_Memory_Handling_Suite *ms)
>  {
>    p->size = 0;
> @@ -5271,14 +5279,14 @@
>    p->mem = ms;
>  }
>  
> -static void
> +static void FASTCALL
>  hashTableIterInit(HASH_TABLE_ITER *iter, const HASH_TABLE *table)
>  {
>    iter->p = table->v;
>    iter->end = iter->p + table->size;
>  }
>  
> -static NAMED *
> +static NAMED * FASTCALL
>  hashTableIterNext(HASH_TABLE_ITER *iter)
>  {
>    while (iter->p != iter->end) {
> @@ -5289,7 +5297,7 @@
>    return NULL;
>  }
>  
> -static void
> +static void FASTCALL
>  poolInit(STRING_POOL *pool, XML_Memory_Handling_Suite *ms)
>  {
>    pool->blocks = NULL;
> @@ -5300,7 +5308,7 @@
>    pool->mem = ms;
>  }
>  
> -static void
> +static void FASTCALL
>  poolClear(STRING_POOL *pool)
>  {
>    if (!pool->freeBlocks)
> @@ -5320,7 +5328,7 @@
>    pool->end = NULL;
>  }
>  
> -static void
> +static void FASTCALL
>  poolDestroy(STRING_POOL *pool)
>  {
>    BLOCK *p = pool->blocks;
> @@ -5337,7 +5345,7 @@
>    }
>  }
>  
> -static XML_Char *
> +static XML_Char * FASTCALL
>  poolAppend(STRING_POOL *pool, const ENCODING *enc,
>             const char *ptr, const char *end)
>  {
> @@ -5353,7 +5361,7 @@
>    return pool->start;
>  }
>  
> -static const XML_Char *
> +static const XML_Char * FASTCALL
>  poolCopyString(STRING_POOL *pool, const XML_Char *s)
>  {
>    do {
> @@ -5365,7 +5373,7 @@
>    return s;
>  }
>  
> -static const XML_Char *
> +static const XML_Char * FASTCALL
>  poolCopyStringN(STRING_POOL *pool, const XML_Char *s, int n)
>  {
>    if (!pool->ptr && !poolGrow(pool))
> @@ -5379,7 +5387,7 @@
>    return s;
>  }
>  
> -static const XML_Char *
> +static const XML_Char * FASTCALL
>  poolAppendString(STRING_POOL *pool, const XML_Char *s)
>  {
>    while (*s) {
> @@ -5390,7 +5398,7 @@
>    return pool->start;
>  }
>  
> -static XML_Char *
> +static XML_Char * FASTCALL
>  poolStoreString(STRING_POOL *pool, const ENCODING *enc,
>                  const char *ptr, const char *end)
>  {
> @@ -5402,7 +5410,7 @@
>    return pool->start;
>  }
>  
> -static XML_Bool
> +static XML_Bool FASTCALL
>  poolGrow(STRING_POOL *pool)
>  {
>    if (pool->freeBlocks) {
> @@ -5464,7 +5472,7 @@
>    return XML_TRUE;
>  }
>  
> -static int
> +static int FASTCALL
>  nextScaffoldPart(XML_Parser parser)
>  {
>    CONTENT_SCAFFOLD * me;
> @@ -5510,7 +5518,7 @@
>    return next;
>  }
>  
> -static void
> +static void FASTCALL
>  build_node(XML_Parser parser,
>             int src_node,
>             XML_Content *dest,
> @@ -5547,7 +5555,7 @@
>    }
>  }
>  
> -static XML_Content *
> +static XML_Content * FASTCALL
>  build_model (XML_Parser parser)
>  {
>    XML_Content *ret;
> @@ -5567,7 +5575,7 @@
>    return ret;
>  }
>  
> -static ELEMENT_TYPE *
> +static ELEMENT_TYPE * FASTCALL
>  getElementType(XML_Parser parser,
>                 const ENCODING *enc,
>                 const char *ptr,
> 
> Index: xmlrole.c
> ===================================================================
> RCS file: /cvsroot/expat/expat/lib/xmlrole.c,v
> retrieving revision 1.12
> retrieving revision 1.13
> diff -u -d -r1.12 -r1.13
> --- xmlrole.c 22 Aug 2002 14:52:44 -0000 1.12
> +++ xmlrole.c 5 Sep 2002 01:58:27 -0000 1.13
> @@ -10,6 +10,7 @@
>  #include <expat_config.h>
>  #endif /* ndef COMPILED_FROM_DSP */
>  
> +#include "internal.h"
>  #include "xmlrole.h"
>  #include "ascii.h"
>  
> @@ -84,11 +85,11 @@
>  #define setTopLevel(state) ((state)->handler = internalSubset)
>  #endif /* not XML_DTD */
>  
> -typedef int PROLOG_HANDLER(PROLOG_STATE *state,
> -                           int tok,
> -                           const char *ptr,
> -                           const char *end,
> -                           const ENCODING *enc);
> +typedef int FASTCALL PROLOG_HANDLER(PROLOG_STATE *state,
> +                                    int tok,
> +                                    const char *ptr,
> +                                    const char *end,
> +                                    const ENCODING *enc);
>  
>  static PROLOG_HANDLER
>    prolog0, prolog1, prolog2,
> @@ -108,9 +109,9 @@
>    declClose,
>    error;
>  
> -static int common(PROLOG_STATE *state, int tok);
> +static int FASTCALL common(PROLOG_STATE *state, int tok);
>  
> -static int
> +static int FASTCALL
>  prolog0(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -147,7 +148,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  prolog1(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -178,7 +179,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  prolog2(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -199,7 +200,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype0(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -217,7 +218,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype1(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -247,7 +248,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype2(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -264,7 +265,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype3(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -281,7 +282,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype4(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -301,7 +302,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  doctype5(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -318,7 +319,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  internalSubset(PROLOG_STATE *state,
>                 int tok,
>                 const char *ptr,
> @@ -373,7 +374,7 @@
>  
>  #ifdef XML_DTD
>  
> -static int
> +static int FASTCALL
>  externalSubset0(PROLOG_STATE *state,
>                  int tok,
>                  const char *ptr,
> @@ -386,7 +387,7 @@
>    return externalSubset1(state, tok, ptr, end, enc);
>  }
>  
> -static int
> +static int FASTCALL
>  externalSubset1(PROLOG_STATE *state,
>                  int tok,
>                  const char *ptr,
> @@ -418,7 +419,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static int
> +static int FASTCALL
>  entity0(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -438,7 +439,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity1(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -455,7 +456,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity2(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -483,7 +484,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity3(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -500,7 +501,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity4(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -517,7 +518,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity5(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -540,7 +541,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity6(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -558,7 +559,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity7(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -586,7 +587,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity8(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -603,7 +604,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity9(PROLOG_STATE *state,
>          int tok,
>          const char *ptr,
> @@ -620,7 +621,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  entity10(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -637,7 +638,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  notation0(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -654,7 +655,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  notation1(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -678,7 +679,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  notation2(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -695,7 +696,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  notation3(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -713,7 +714,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  notation4(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -734,7 +735,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist0(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -752,7 +753,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist1(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -773,7 +774,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist2(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -814,7 +815,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist3(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -833,7 +834,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist4(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -853,7 +854,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist5(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -870,7 +871,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist6(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -887,7 +888,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist7(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -908,7 +909,7 @@
>  }
>  
>  /* default value */
> -static int
> +static int FASTCALL
>  attlist8(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -948,7 +949,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  attlist9(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -965,7 +966,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element0(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -983,7 +984,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element1(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1013,7 +1014,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element2(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1053,7 +1054,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element3(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1078,7 +1079,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element4(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1096,7 +1097,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element5(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1117,7 +1118,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element6(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1147,7 +1148,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  element7(PROLOG_STATE *state,
>           int tok,
>           const char *ptr,
> @@ -1197,7 +1198,7 @@
>  
>  #ifdef XML_DTD
>  
> -static int
> +static int FASTCALL
>  condSect0(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -1221,7 +1222,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  condSect1(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -1239,7 +1240,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  condSect2(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -1258,7 +1259,7 @@
>  
>  #endif /* XML_DTD */
>  
> -static int
> +static int FASTCALL
>  declClose(PROLOG_STATE *state,
>            int tok,
>            const char *ptr,
> @@ -1275,7 +1276,7 @@
>    return common(state, tok);
>  }
>  
> -static int
> +static int FASTCALL
>  error(PROLOG_STATE *state,
>        int tok,
>        const char *ptr,
> @@ -1285,7 +1286,7 @@
>    return XML_ROLE_NONE;
>  }
>  
> -static int
> +static int FASTCALL
>  common(PROLOG_STATE *state, int tok)
>  {
>  #ifdef XML_DTD
> 
> Index: xmlrole.h
> ===================================================================
> RCS file: /cvsroot/expat/expat/lib/xmlrole.h,v
> retrieving revision 1.7
> retrieving revision 1.8
> diff -u -d -r1.7 -r1.8
> --- xmlrole.h 22 Aug 2002 14:52:44 -0000 1.7
> +++ xmlrole.h 5 Sep 2002 01:58:27 -0000 1.8
> @@ -85,11 +85,11 @@
>  };
>  
>  typedef struct prolog_state {
> -  int (*handler)(struct prolog_state *state,
> -                 int tok,
> -                 const char *ptr,
> -                 const char *end,
> -                 const ENCODING *enc);
> +  int FASTCALL (*handler)(struct prolog_state *state,
> +                          int tok,
> +                          const char *ptr,
> +                          const char *end,
> +                          const ENCODING *enc);
>    unsigned level;
>    int role_none;
>  #ifdef XML_DTD
> 
> 
> 
> _______________________________________________
> Expat-checkins mailing list
> [email protected]
> http://mail.libexpat.org/mailman-21/listinfo/expat-checkins


Get to know us
http://www.thestar.com - Canada's largest daily newspaper online
http://www.toronto.com - All you need to know about T.O.
http://www.workopolis.com - Canada's biggest job site
http://www.torontostartv.com - Webcasting & Production
http://www.newinhomes.com - Ontario's Largest New Home & Condo Website
http://www.waymoresports.com - Canada's most comprehensive sports site
http://www.tmgtv.ca - Torstar Media Group Television
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.