[Expat-checkins] expat/lib xmlparse.c,1.84,1.85 xmlrole.c,1.12,1.13 xmlrole.h,1.7,1.8

Karl Waclawek kwaclaw@thestar.ca
Thu, 5 Sep 2002 10:53:01 -0400


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" <fdrake@users.sourceforge.net>
To: <expat-checkins@libexpat.org>
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
> Expat-checkins@libexpat.org
> 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