textproc/rxp: update to 1.5.2 and unbreak

PR:		282865
This commit is contained in:
Mikhail Teterin 2024-11-26 13:34:32 +01:00 committed by Robert Clausecker
parent 118cf20d6e
commit 46ee3a64e2
7 changed files with 177 additions and 231 deletions

View file

@ -1,8 +1,7 @@
PORTNAME= rxp PORTNAME= rxp
PORTVERSION= 1.4.4 DISTVERSION= 1.5.2
PORTREVISION= 4
CATEGORIES= textproc CATEGORIES= textproc
MASTER_SITES= ftp://ftp.cogsci.ed.ac.uk/pub/richard/ MASTER_SITES= https://www.inf.ed.ac.uk/research/isddarch/admin/
MAINTAINER= ports@virtual-estates.net MAINTAINER= ports@virtual-estates.net
COMMENT= Validating XML parser written in C COMMENT= Validating XML parser written in C
@ -10,34 +9,24 @@ WWW= https://www.cogsci.ed.ac.uk/~richard/rxp.html
LICENSE= GPLv2 LICENSE= GPLv2
BROKEN= Unfetchable USES= libtool
DEPRECATED= Unfetchable and outdated
EXPIRATION_DATE=2024-12-31
USES= uidfix
USE_LDCONFIG= yes USE_LDCONFIG= yes
PATCH_WRKSRC= ${WRKSRC}/${PORTNAME}-${PORTVERSION}
WRKSRC= ${WRKDIR}
MAKE_ARGS+= VPATH=${PATCH_WRKSRC}
OPTIONS_SINGLE= CHAR_SIZE OPTIONS_SINGLE= CHAR_SIZE
OPTIONS_SINGLE_CHAR_SIZE=8 16 OPTIONS_SINGLE_CHAR_SIZE=8 16
OPTIONS_DEFAULT=8 OPTIONS_DEFAULT=8
8_DESC= 8-bit characters (required by speech_tools, festival) 8_DESC= 8-bit characters (required by speech_tools, festival)
16_DESC= 16-bit characters 16_DESC= 16-bit characters (upstream's default)
MAKE_ARGS+= CHAR_SIZE=${PORT_OPTIONS:C/[^0-9]//g} CFLAGS+= -Wno-empty-body
GNU_CONFIGURE= yes
INSTALL_TARGET= install-strip
EXTRACT_AFTER_ARGS= --exclude win32.h
MAKE_ENV+= AM_LDFLAGS="-version-info 2:0:0"
do-configure: post-patch:
.for s in lib rxp @${REINPLACE_CMD} -E -e 's|include/win32.h *||' \
${MKDIR} ${WRKDIR}/$s -e 's,CHAR_SIZE=[0-9]+,CHAR_SIZE=${PORT_OPTIONS:C/[^0-9]//g},g' \
${LN} -s ${FILESDIR}/BSDmakefile.$s ${WRKDIR}/$s/Makefile ${WRKSRC}/Makefile*
${PRINTF} "SUBDIR+=\t%s\n" $s >> ${WRKDIR}/Makefile
.endfor
${PRINTF} "\n.include <bsd.subdir.mk>\n" >> ${WRKDIR}/Makefile
post-build:
${MKDIR} ${STAGEDIR}${PREFIX}/include/rxp
.include <bsd.port.mk> .include <bsd.port.mk>

View file

@ -1,2 +1,3 @@
SHA256 (rxp-1.4.4.tar.gz) = 96564e1ae1dd971415409585b697d62caac80fafaba00af8b8965128b4814208 TIMESTAMP = 1705901987
SIZE (rxp-1.4.4.tar.gz) = 153946 SHA256 (rxp-1.5.2.tar.gz) = fa641b4a5185d0a1d9610c8245b9d5aff5972c1a28a0da94f3e38d69f6c14513
SIZE (rxp-1.5.2.tar.gz) = 476952

View file

@ -1,26 +0,0 @@
LIB= rxp
SHLIB_MAJOR= 1
SHLIB_MINOR= 4
MK_PROFILE= no
CFLAGS+= -DCHAR_SIZE=${CHAR_SIZE} -DHAVE_LIBZ
CFLAGS+= -Werror
WARNS= 6
LDADD= -lz
SRCS= catalog.c catutil.c resolve.c entityopener.c xmlparser.c \
url.c charset.c ctype16.c dtd.c input.c stdio16.c string16.c \
system.c hash.c version.c namespaces.c http.c \
nf16check.c nf16data.c
INCS= charset.h ctype16.h dtd.h hash.h input.h namespaces.h \
rxputil.h stdio16.h string16.h system.h url.h version.h \
xmlparser.h
LIBDIR= ${PREFIX}/lib
INCSDIR=${PREFIX}/include/rxp
.include <bsd.lib.mk>
.if ${CHAR_SIZE} == 8
CFLAGS+= -Wno-unused-label
.endif

View file

@ -1,12 +0,0 @@
PROG= rxp
SRCS= rxp.c infoset-print.c
CFLAGS+= -DCHAR_SIZE=${CHAR_SIZE} -DHAVE_LIBZ
CFLAGS+= -Werror
WARNS= 6
BINDIR= ${PREFIX}/bin
MANDIR= ${PREFIX}/share/man/man
LDADD= -L${.CURDIR:H}/lib -lrxp
.include <bsd.prog.mk>

View file

@ -0,0 +1,21 @@
Restore the option to build with CHAR_SIZE being 8, which upstream
seems to have abandoned. We want it to be used with Festival, among
other things.
-mi (November 2024)
--- include/ctype16.h 2021-06-14 13:27:08.000000000 -0400
+++ include/ctype16.h 2024-11-19 13:24:35.494673000 -0500
@@ -28,7 +28,10 @@
#define is_xml_namechar(c,map) (map[(int)(c) & 0xff] & xml_namechar)
#define is_xml_whitespace(c) (xml_char_map[(int)(c) & 0xff] & xml_whitespace)
+#define is_xml_whitespace_16 is_xml_whitespace
+#define is_xml_namestart_16 is_xml_namestart
+#define is_xml_namechar_16 is_xml_namechar
-#define xml_char_map_11 0
-#define xml_char_map_105 0
+#define xml_char_map_11 xml_char_map
+#define xml_char_map_105 xml_char_map
#else

View file

@ -1,5 +1,5 @@
--- catalog_dtd.c 2003-06-24 09:15:55.000000000 -0400 --- catalog/catalog_dtd.c 2003-06-24 09:15:55.000000000 -0400
+++ catalog_dtd.c 2021-02-25 15:07:41.462399000 -0500 +++ catalog/catalog_dtd.c 2021-02-25 15:07:41.462399000 -0500
@@ -23,9 +23,9 @@ @@ -23,9 +23,9 @@
*/ */
@ -13,8 +13,8 @@
+static const char xml_catalog_dtd[] = +static const char xml_catalog_dtd[] =
"<!ENTITY % pubIdChars \"CDATA\">\n" "<!ENTITY % pubIdChars \"CDATA\">\n"
"<!ENTITY % publicIdentifier \"%pubIdChars;\">\n" "<!ENTITY % publicIdentifier \"%pubIdChars;\">\n"
--- catalog.c 2004-10-11 08:28:31.000000000 -0400 --- catalog/catalog.c 2004-10-11 08:28:31.000000000 -0400
+++ catalog.c 2021-02-25 15:07:41.463274000 -0500 +++ catalog/catalog.c 2021-02-25 15:07:41.463274000 -0500
@@ -20,5 +20,5 @@ static Parser OpenXMLDocument(char *uri) @@ -20,5 +20,5 @@ static Parser OpenXMLDocument(char *uri)
static void CloseXMLDocument(Parser p); static void CloseXMLDocument(Parser p);
static int SkipElement(XBit bit, Parser p); static int SkipElement(XBit bit, Parser p);
@ -105,8 +105,8 @@
+CatalogEntryFile GetCatalogEntryFile(Catalog catalog, const char *catalog_uri) +CatalogEntryFile GetCatalogEntryFile(Catalog catalog, const char *catalog_uri)
{ {
int i; int i;
--- catalog.h 2003-08-28 12:13:19.000000000 -0400 --- catalog/catalog.h 2003-08-28 12:13:19.000000000 -0400
+++ catalog.h 2021-02-25 15:07:41.463639000 -0500 +++ catalog/catalog.h 2021-02-25 15:07:41.463639000 -0500
@@ -48,13 +48,13 @@ extern void FreeCatalogEntry(CatalogEntr @@ -48,13 +48,13 @@ extern void FreeCatalogEntry(CatalogEntr
extern CatalogEntryFile catalog_resource_error; extern CatalogEntryFile catalog_resource_error;
@ -124,8 +124,8 @@
+extern const char *ResolveURI(Catalog catalog, const char *uri); +extern const char *ResolveURI(Catalog catalog, const char *uri);
extern void CatalogEnable(Parser p); extern void CatalogEnable(Parser p);
--- catutil.c 2003-06-24 11:55:27.000000000 -0400 --- catalog/catutil.c 2003-06-24 11:55:27.000000000 -0400
+++ catutil.c 2021-02-25 15:07:41.464062000 -0500 +++ catalog/catutil.c 2021-02-25 15:07:41.464062000 -0500
@@ -35,5 +35,5 @@ char *norm_pub(const char8 *public8, con @@ -35,5 +35,5 @@ char *norm_pub(const char8 *public8, con
{ {
int len = public8 ? strlen(public8) : strlen16(public16); int len = public8 ? strlen(public8) : strlen16(public16);
@ -152,27 +152,8 @@
+ static const char *p = "urn:publicid:"; + static const char *p = "urn:publicid:";
int i; int i;
--- ctype16.h 2004-03-17 10:53:21.000000000 -0500 --- src/dtd.c 2004-11-02 13:20:20.000000000 -0500
+++ ctype16.h 2021-02-25 15:07:41.464419000 -0500 +++ src/dtd.c 2021-02-25 15:07:41.475773000 -0500
@@ -49,13 +49,13 @@ extern STD_API unsigned char xml_char_ma
#define is_xml_namestart(c,map) \
- (c < 0x10000 ? (map[c] & xml_namestart) : (map[c >> 16] & xml_nameblock))
+ ((sizeof(c) <= 2 || c < 0x10000) ? (map[c] & xml_namestart) : (map[c >> 16] & xml_nameblock))
#define is_xml_namechar(c,map) \
- (c < 0x10000 ? (map[c] & xml_namechar) : (map[c >> 16] & xml_nameblock))
+ ((sizeof(c) <= 2 || c < 0x10000) ? (map[c] & xml_namechar) : (map[c >> 16] & xml_nameblock))
/* NB whitespace map is the same for 1.0 and 1.1 */
#define is_xml_whitespace(c) \
- (c < 0x10000 && (xml_char_map[c] & xml_whitespace))
+ ((sizeof(c) <= 2 || c < 0x10000) && (xml_char_map[c] & xml_whitespace))
#endif
--- dtd.c 2004-11-02 13:20:20.000000000 -0500
+++ dtd.c 2021-02-25 15:07:41.475773000 -0500
@@ -173,12 +173,11 @@ void FreeDtd(Dtd dtd) @@ -173,12 +173,11 @@ void FreeDtd(Dtd dtd)
*/ */
@ -328,8 +309,8 @@
+ char8 *publicid, char8 *systemid, + char8 *publicid, char8 *systemid,
Entity parent) Entity parent)
{ {
--- dtd.h 2004-11-02 12:46:07.000000000 -0500 --- include/dtd.h 2004-11-02 12:46:07.000000000 -0500
+++ dtd.h 2021-02-25 15:07:41.465041000 -0500 +++ include/dtd.h 2021-02-25 15:07:41.465041000 -0500
@@ -48,11 +48,11 @@ struct entity { @@ -48,11 +48,11 @@ struct entity {
/* All entities */ /* All entities */
@ -459,8 +440,8 @@
+ char8 *publicid, char8 *systemid, + char8 *publicid, char8 *systemid,
Entity parent); Entity parent);
XML_API NotationDefinition FindNotationN(Dtd dtd, const Char *name, int namelen); XML_API NotationDefinition FindNotationN(Dtd dtd, const Char *name, int namelen);
--- entityopener.c 2003-11-27 09:06:38.000000000 -0500 --- catalog/entityopener.c 2003-11-27 09:06:38.000000000 -0500
+++ entityopener.c 2021-02-25 15:07:41.465352000 -0500 +++ catalog/entityopener.c 2021-02-25 15:07:41.465352000 -0500
@@ -9,5 +9,5 @@ @@ -9,5 +9,5 @@
#include "dtd.h" #include "dtd.h"
@ -468,8 +449,8 @@
+static InputSource catalog_entity_open(Entity ent, void *arg) +static InputSource catalog_entity_open(Entity ent, void *arg)
{ {
Catalog catalog = arg; Catalog catalog = arg;
--- http.c 2001-05-01 10:29:34.000000000 -0400 --- src/http.c 2001-05-01 10:29:34.000000000 -0400
+++ http.c 2021-02-25 15:33:16.444375000 -0500 +++ src/http.c 2021-02-25 15:33:16.444375000 -0500
@@ -139,5 +139,5 @@ FILE16 *http_open(const char *url, @@ -139,5 +139,5 @@ FILE16 *http_open(const char *url,
int server_port; int server_port;
char buf[100]; char buf[100];
@ -521,16 +502,16 @@
+ /* fall through */ + /* fall through */
default: default:
if(!VectorPush(text, c)) if(!VectorPush(text, c))
--- infoset-print.c 2004-11-03 12:17:06.000000000 -0500 --- src/infoset-print.c 2021-06-14 13:42:14.000000000 -0400
+++ infoset-print.c 2021-02-25 15:33:58.693693000 -0500 +++ src/infoset-print.c 2024-01-22 00:58:08.195742000 -0500
@@ -23,5 +23,5 @@ static void children(FILE16 *f, int leve @@ -23,5 +23,5 @@
HashTable id_table); HashTable id_table);
static void notations(FILE16 *f, int level, Dtd dtd); static void notations(FILE16 *f, int level, Dtd dtd);
-static void unparsed_entities(FILE16 *f, int level, Dtd dtd, Entity docent); -static void unparsed_entities(FILE16 *f, int level, Dtd dtd, Entity docent);
+static void unparsed_entities(FILE16 *f, int level, Dtd dtd); +static void unparsed_entities(FILE16 *f, int level, Dtd dtd);
static void baseURI(FILE16 *f, int level, const char8 *uri); static void baseURI(FILE16 *f, int level, const char8 *uri);
static void standalone(FILE16 *f, int level, StandaloneDeclaration sd); static void standalone(FILE16 *f, int level, StandaloneDeclaration sd);
@@ -33,11 +33,11 @@ static void element(FILE16 *f, int level @@ -33,11 +33,11 @@
HashTable id_table); HashTable id_table);
static void pi(FILE16 *f, int level, Dtd dtd, XBit bit); static void pi(FILE16 *f, int level, Dtd dtd, XBit bit);
-static void cdsect(FILE16 *f, int level, Dtd dtd, XBit bit); -static void cdsect(FILE16 *f, int level, Dtd dtd, XBit bit);
@ -546,14 +527,14 @@
+static void character(FILE16 *f, int level, const char *ecw, int c); +static void character(FILE16 *f, int level, const char *ecw, int c);
static void attributes(FILE16 *f, int level, Dtd dtd, XBit bit, static void attributes(FILE16 *f, int level, Dtd dtd, XBit bit,
HashTable id_table); HashTable id_table);
@@ -46,5 +46,5 @@ static void attribute(FILE16 *f, int lev @@ -46,5 +46,5 @@
static void namespace_attributes(FILE16 *f, int level, Dtd dtd, XBit bit, static void namespace_attributes(FILE16 *f, int level, Dtd dtd, XBit bit,
HashTable id_table); HashTable id_table);
-static void inscope_namespaces(FILE16 *f, int level, Dtd dtd, XBit bit); -static void inscope_namespaces(FILE16 *f, int level, Dtd dtd, XBit bit);
+static void inscope_namespaces(FILE16 *f, int level, XBit bit); +static void inscope_namespaces(FILE16 *f, int level, XBit bit);
#if 0 #if 0
static void internal_entity(FILE16 *f, int level, Entity entity); static void internal_entity(FILE16 *f, int level, Entity entity);
@@ -53,7 +53,7 @@ static void external_entity(FILE16 *f, i @@ -53,7 +53,7 @@
static void unparsed_entity(FILE16 *f, int level, Entity entity); static void unparsed_entity(FILE16 *f, int level, Entity entity);
-static void simple(FILE16 *f, int level, char *name, const char *value); -static void simple(FILE16 *f, int level, char *name, const char *value);
@ -564,49 +545,49 @@
+static void pointer(FILE16 *f, int level, const char *name, Char *id); +static void pointer(FILE16 *f, int level, const char *name, Char *id);
static Char *make_id(const char *type, const Char *name, int count); static Char *make_id(const char *type, const Char *name, int count);
static void indent(FILE16 *f, int level); static void indent(FILE16 *f, int level);
@@ -67,5 +67,5 @@ static void find_ids(Dtd dtd, XBit *bits @@ -67,5 +67,5 @@
int *counter); int *counter);
-struct xbit bogus_bit; -struct xbit bogus_bit;
+static struct xbit bogus_bit; +static struct xbit bogus_bit;
static Char xmlns_ns[] = {'h','t','t','p',':','/','/','w','w','w','.','w', '3', static Char xmlns_ns[] = {'h','t','t','p',':','/','/','w','w','w','.','w', '3',
@@ -93,5 +93,5 @@ void infoset_print(FILE16 *f, Parser p, @@ -93,5 +93,5 @@
notations(f, 1, dtd); notations(f, 1, dtd);
- unparsed_entities(f, 1, dtd, p->document_entity); - unparsed_entities(f, 1, dtd, p->document_entity);
+ unparsed_entities(f, 1, dtd); + unparsed_entities(f, 1, dtd);
baseURI(f, 1, EntityBaseURL(p->document_entity)); baseURI(f, 1, EntityBaseURL(p->document_entity));
@@ -172,5 +172,5 @@ static void notations(FILE16 *f, int lev @@ -172,5 +172,5 @@
} }
-static void unparsed_entities(FILE16 *f, int level, Dtd dtd, Entity docent) -static void unparsed_entities(FILE16 *f, int level, Dtd dtd, Entity docent)
+static void unparsed_entities(FILE16 *f, int level, Dtd dtd) +static void unparsed_entities(FILE16 *f, int level, Dtd dtd)
{ {
Entity e; Entity e;
@@ -280,5 +280,5 @@ static void version(FILE16 *f, int level @@ -280,5 +280,5 @@
} }
-static void simple(FILE16 *f, int level, char *name, const char *value) -static void simple(FILE16 *f, int level, char *name, const char *value)
+static void simple(FILE16 *f, int level, const char *name, const char *value) +static void simple(FILE16 *f, int level, const char *name, const char *value)
{ {
indent(f, level); indent(f, level);
@@ -294,5 +294,5 @@ static void simple(FILE16 *f, int level, @@ -294,5 +294,5 @@
} }
-static void Simple(FILE16 *f, int level, char *name, const Char *value) -static void Simple(FILE16 *f, int level, char *name, const Char *value)
+static void Simple(FILE16 *f, int level, const char *name, const Char *value) +static void Simple(FILE16 *f, int level, const char *name, const Char *value)
{ {
indent(f, level); indent(f, level);
@@ -308,5 +308,5 @@ static void Simple(FILE16 *f, int level, @@ -308,5 +308,5 @@
} }
-static void pointer(FILE16 *f, int level, char *name, Char *id) -static void pointer(FILE16 *f, int level, char *name, Char *id)
+static void pointer(FILE16 *f, int level, const char *name, Char *id) +static void pointer(FILE16 *f, int level, const char *name, Char *id)
{ {
indent(f, level); indent(f, level);
@@ -342,11 +342,11 @@ static void item(FILE16 *f, int level, D @@ -342,11 +342,11 @@
break; break;
case XBIT_cdsect: case XBIT_cdsect:
- cdsect(f, level, dtd, bit); - cdsect(f, level, dtd, bit);
@ -621,28 +602,28 @@
+ comment(f, level, bit); + comment(f, level, bit);
break; break;
default: default:
@@ -396,5 +396,5 @@ static void element(FILE16 *f, int level @@ -396,5 +396,5 @@
namespace_attributes(f, level+1, dtd, bit, id_table); namespace_attributes(f, level+1, dtd, bit, id_table);
- inscope_namespaces(f, level+1, dtd, bit); - inscope_namespaces(f, level+1, dtd, bit);
+ inscope_namespaces(f, level + 1, bit); + inscope_namespaces(f, level + 1, bit);
baseURI(f, 1, EntityBaseURL(bit->entity)); /* XXX xml:base */ baseURI(f, 1, EntityBaseURL(bit->entity)); /* XXX xml:base */
@@ -433,5 +433,5 @@ static void pi(FILE16 *f, int level, Dtd @@ -433,5 +433,5 @@
} }
-static void cdsect(FILE16 *f, int level, Dtd dtd, XBit bit) -static void cdsect(FILE16 *f, int level, Dtd dtd, XBit bit)
+static void cdsect(FILE16 *f, int level, XBit bit) +static void cdsect(FILE16 *f, int level, XBit bit)
{ {
Char *p; Char *p;
@@ -443,5 +443,5 @@ static void cdsect(FILE16 *f, int level, @@ -443,5 +443,5 @@
for(p=bit->pcdata_chars; *p; p++) for(p=bit->pcdata_chars; *p; p++)
- character(f, level, dtd, "false", *p); - character(f, level, dtd, "false", *p);
+ character(f, level, "false", *p); + character(f, level, "false", *p);
#if 0 #if 0
@@ -451,8 +451,8 @@ static void cdsect(FILE16 *f, int level, @@ -451,8 +451,8 @@
} }
-static void pcdata(FILE16 *f, int level, Dtd dtd, XBit bit) -static void pcdata(FILE16 *f, int level, Dtd dtd, XBit bit)
@ -653,39 +634,39 @@
+ const char *ecw; + const char *ecw;
ecw = !bit->parent->element_definition->declared ? 0 : ecw = !bit->parent->element_definition->declared ? 0 :
@@ -461,8 +461,8 @@ static void pcdata(FILE16 *f, int level, @@ -461,8 +461,8 @@
for(p=bit->pcdata_chars; *p; p++) for(p=bit->pcdata_chars; *p; p++)
- character(f, level, dtd, is_xml_whitespace(*p) ? ecw : "false", *p); - character(f, level, dtd, is_xml_whitespace_16(*p) ? ecw : "false", *p);
+ character(f, level, is_xml_whitespace(*p) ? ecw : "false", *p); + character(f, level, is_xml_whitespace_16(*p) ? ecw : "false", *p);
} }
-static void character(FILE16 *f, int level, Dtd dtd, char *ecw, int c) -static void character(FILE16 *f, int level, Dtd dtd, char *ecw, int c)
+static void character(FILE16 *f, int level, const char *ecw, int c) +static void character(FILE16 *f, int level, const char *ecw, int c)
{ {
indent(f, level); indent(f, level);
@@ -478,5 +478,5 @@ static void character(FILE16 *f, int lev @@ -478,5 +478,5 @@
} }
-static void comment(FILE16 *f, int level, Dtd dtd, XBit bit) -static void comment(FILE16 *f, int level, Dtd dtd, XBit bit)
+static void comment(FILE16 *f, int level, XBit bit) +static void comment(FILE16 *f, int level, XBit bit)
{ {
indent(f, level); indent(f, level);
@@ -615,4 +615,5 @@ static void attribute(FILE16 *f, int lev @@ -615,4 +615,5 @@
free(token); free(token);
free(id); free(id);
+ /* FALLTHROUGH */ + /* FALLTHROUGH */
default: default:
simple(f, level+1, "references", 0); simple(f, level+1, "references", 0);
@@ -640,5 +641,5 @@ static void attribute(FILE16 *f, int lev @@ -640,5 +641,5 @@
} }
-static void inscope_namespaces(FILE16 *f, int level, Dtd dtd, XBit bit) -static void inscope_namespaces(FILE16 *f, int level, Dtd dtd, XBit bit)
+static void inscope_namespaces(FILE16 *f, int level, XBit bit) +static void inscope_namespaces(FILE16 *f, int level, XBit bit)
{ {
NamespaceBinding nsb, nsb2; NamespaceBinding nsb, nsb2;
--- input.c 2005-01-14 11:10:00.000000000 -0500 --- src/input.c 2005-01-14 11:10:00.000000000 -0500
+++ input.c 2021-02-25 15:07:41.467694000 -0500 +++ src/input.c 2021-02-25 15:07:41.467694000 -0500
@@ -79,5 +79,5 @@ InputSource EntityOpen(Entity e) @@ -79,5 +79,5 @@ InputSource EntityOpen(Entity e)
else else
{ {
@ -720,8 +701,8 @@
- -
END_OF_LINE; END_OF_LINE;
} }
--- namespaces.c 2003-06-02 12:56:35.000000000 -0400 --- src/namespaces.c 2003-06-02 12:56:35.000000000 -0400
+++ namespaces.c 2021-02-25 15:07:41.468014000 -0500 +++ src/namespaces.c 2021-02-25 15:07:41.468014000 -0500
@@ -25,5 +25,5 @@ static void FreeNSElementDefinition(NSEl @@ -25,5 +25,5 @@ static void FreeNSElementDefinition(NSEl
static void FreeNSAttributeDefinition(NSAttributeDefinition attribute); static void FreeNSAttributeDefinition(NSAttributeDefinition attribute);
@ -743,8 +724,8 @@
+ Free(attribute->name); + Free(attribute->name);
Free(attribute); Free(attribute);
} }
--- namespaces.h 2003-06-02 12:56:35.000000000 -0400 --- include/namespaces.h 2003-06-02 12:56:35.000000000 -0400
+++ namespaces.h 2021-02-25 15:07:41.468292000 -0500 +++ include/namespaces.h 2021-02-25 15:07:41.468292000 -0500
@@ -30,5 +30,5 @@ struct RXP_NAMESPACE { @@ -30,5 +30,5 @@ struct RXP_NAMESPACE {
struct ns_element_definition { struct ns_element_definition {
@ -759,8 +740,8 @@
+ Char *name; + Char *name;
int attrnum; int attrnum;
}; };
--- nf16check.c 2003-09-02 10:02:45.000000000 -0400 --- src/nf16check.c 2003-09-02 10:02:45.000000000 -0400
+++ nf16check.c 2021-02-25 15:07:41.468701000 -0500 +++ src/nf16check.c 2021-02-25 15:07:41.468701000 -0500
@@ -7,4 +7,6 @@ @@ -7,4 +7,6 @@
#include <stdlib.h> #include <stdlib.h>
@ -801,7 +782,7 @@
/* variant of nf16check, s_length gives length of s */ /* variant of nf16check, s_length gives length of s */
@@ -226,4 +228,5 @@ nf16res nf16checkL (NF16Checker checker, @@ -226,4 +228,5 @@ nf16res nf16checkL (NF16Checker checker,
int lastclass = checker->lastclass; int lastclass = checker->lastclass;
char16 c; unsigned int c; /* changed from char16 (RMT) */
+ uint32_t C; + uint32_t C;
flag f; flag f;
int class; int class;
@ -838,8 +819,8 @@
+ else if (C < 0xE01F0) f = simp; + else if (C < 0xE01F0) f = simp;
else f = NoNo; else f = NoNo;
goto NEWFLAG; /* start again with switch */ goto NEWFLAG; /* start again with switch */
--- resolve.c 2003-08-28 12:13:12.000000000 -0400 --- catalog/resolve.c 2003-08-28 12:13:12.000000000 -0400
+++ resolve.c 2021-02-25 15:07:41.469245000 -0500 +++ catalog/resolve.c 2021-02-25 15:07:41.469245000 -0500
@@ -8,11 +8,11 @@ @@ -8,11 +8,11 @@
#include "string.h" #include "string.h"
@ -1010,9 +991,9 @@
+ return strlen((*(const CatalogEntry *)b)->match) - + return strlen((*(const CatalogEntry *)b)->match) -
+ strlen((*(const CatalogEntry *)a)->match); + strlen((*(const CatalogEntry *)a)->match);
} }
--- rxp.c 2005-01-14 11:57:49.000000000 -0500 --- src/rxp.c 2019-10-24 14:23:25.000000000 -0400
+++ rxp.c 2021-02-25 15:07:41.469916000 -0500 +++ src/rxp.c 2024-10-20 22:09:28.202835000 -0400
@@ -32,40 +32,39 @@ @@ -33,40 +33,39 @@
#include "catalog.h" #include "catalog.h"
-int attr_compare(const void *a, const void *b); -int attr_compare(const void *a, const void *b);
@ -1021,7 +1002,7 @@
-void print_ns_attrs(NamespaceBinding ns, int count); -void print_ns_attrs(NamespaceBinding ns, int count);
-void print_namespaces(NamespaceBinding ns); -void print_namespaces(NamespaceBinding ns);
-void print_attrs(ElementDefinition e, Attribute a); -void print_attrs(ElementDefinition e, Attribute a);
-void print_text(Char *text); -void print_text(Char *text, int is_attr);
-int printable(int c); -int printable(int c);
-void print_special(int c); -void print_special(int c);
-void print_text_bit(Char *text); -void print_text_bit(Char *text);
@ -1035,7 +1016,7 @@
+static void print_ns_attrs(NamespaceBinding ns, int count); +static void print_ns_attrs(NamespaceBinding ns, int count);
+static void print_namespaces(NamespaceBinding ns); +static void print_namespaces(NamespaceBinding ns);
+static void print_attrs(Attribute a); +static void print_attrs(Attribute a);
+static void print_text(const Char *text); +static void print_text(const Char *text, int is_attr);
+static int printable(int c); +static int printable(int c);
+static void print_special(int c); +static void print_special(int c);
+static void print_text_bit(Char *text); +static void print_text_bit(Char *text);
@ -1048,14 +1029,14 @@
+static int verbose = 0, expand = 1, nsgml = 0, +static int verbose = 0, expand = 1, nsgml = 0,
attr_defaults = 0, merge = 0, strict_xml = 0, tree = 0, validate = 0, attr_defaults = 0, merge = 0, strict_xml = 0, tree = 0, validate = 0,
xml_space = 0, namespaces = 0, simple_error = 0, experiment = 0, xml_space = 0, namespaces = 0, simple_error = 0, experiment = 0,
read_dtd = 0, unicode_check = 0, xml_id = 0; read_dtd = 0, unicode_check = 0, xml_id = 0, pre_105 = 0;
-enum {o_unspec, o_none, o_bits, o_plain, o_can1, o_can2, o_can3, o_infoset, o_diff} output_format = o_unspec; -enum {o_unspec, o_none, o_bits, o_plain, o_can1, o_can2, o_can3, o_infoset, o_diff, o_diff2} output_format = o_unspec;
-char *enc_name = 0, *base_uri = 0, *my_dtd_name, *my_dtd_sysid = 0; -char *enc_name = 0, *base_uri = 0, *my_dtd_name, *my_dtd_sysid = 0;
-CharacterEncoding encoding = CE_unknown; -CharacterEncoding encoding = CE_unknown;
-InputSource source = 0; -InputSource source = 0;
-int need_canonical_dtd = 0; -int need_canonical_dtd = 0;
-int xml_version; -int xml_version;
+static enum {o_unspec, o_none, o_bits, o_plain, o_can1, o_can2, o_can3, o_infoset, o_diff} output_format = o_unspec; +static enum {o_unspec, o_none, o_bits, o_plain, o_can1, o_can2, o_can3, o_infoset, o_diff, o_diff2} output_format = o_unspec;
+static char *enc_name = NULL, *base_uri = NULL, *my_dtd_name, *my_dtd_sysid = NULL; +static char *enc_name = NULL, *base_uri = NULL, *my_dtd_name, *my_dtd_sysid = NULL;
+static CharacterEncoding encoding = CE_unknown; +static CharacterEncoding encoding = CE_unknown;
+static InputSource source = NULL; +static InputSource source = NULL;
@ -1077,35 +1058,35 @@
+StaticVector(XBit, dtd_bits); +StaticVector(XBit, dtd_bits);
int main(int argc, char **argv) int main(int argc, char **argv)
@@ -565,5 +564,5 @@ void print_bit(Parser p, XBit bit) @@ -581,5 +580,5 @@
{ {
const char *sys, *pub; const char *sys, *pub;
- char *ws[] = {"u", "d", "p"}; - char *ws[] = {"u", "d", "p"};
+ const char *ws[] = {"u", "d", "p"}; + const char *ws[] = {"u", "d", "p"};
if(output_format == o_none && bit->type != XBIT_error) if(output_format == o_none && bit->type != XBIT_error)
@@ -601,5 +600,5 @@ void print_bit(Parser p, XBit bit) @@ -617,5 +616,5 @@
if(xml_space) if(xml_space)
Printf("(ws=%s) ", ws[bit->wsm]); Printf("(ws=%s) ", ws[bit->wsm]);
- print_attrs(0, bit->attributes); - print_attrs(0, bit->attributes);
+ print_attrs(bit->attributes); + print_attrs(bit->attributes);
print_namespaces(bit->ns_dict); print_namespaces(bit->ns_dict);
Printf("\n"); Printf("\n");
@@ -614,5 +613,5 @@ void print_bit(Parser p, XBit bit) @@ -630,5 +629,5 @@
if(xml_space) if(xml_space)
Printf("(ws=%s) ", ws[bit->wsm]); Printf("(ws=%s) ", ws[bit->wsm]);
- print_attrs(0, bit->attributes); - print_attrs(0, bit->attributes);
+ print_attrs(bit->attributes); + print_attrs(bit->attributes);
print_namespaces(bit->ns_dict); print_namespaces(bit->ns_dict);
Printf("\n"); Printf("\n");
@@ -685,5 +684,5 @@ void print_bit(Parser p, XBit bit) @@ -701,5 +700,5 @@
print_canonical_dtd(p, bit->element_definition->name); print_canonical_dtd(p, bit->element_definition->name);
Printf("<%S", bit->element_definition->name); Printf("<%S", bit->element_definition->name);
- print_attrs(bit->element_definition, bit->attributes); - print_attrs(bit->element_definition, bit->attributes);
+ print_attrs(bit->attributes); + print_attrs(bit->attributes);
print_ns_attrs(bit->ns_dict, bit->nsc); print_ns_attrs(bit->ns_dict, bit->nsc);
if(bit->type == XBIT_start) if(bit->type == XBIT_start)
@@ -732,9 +731,9 @@ void print_bit(Parser p, XBit bit) @@ -769,9 +768,9 @@
int attr_compare(const void *a, const void *b) int attr_compare(const void *a, const void *b)
{ {
- return Strcmp((*(Attribute *)a)->definition->name, - return Strcmp((*(Attribute *)a)->definition->name,
@ -1118,24 +1099,31 @@
+void print_attrs(Attribute a) +void print_attrs(Attribute a)
{ {
Attribute b; Attribute b;
@@ -789,5 +788,5 @@ void dtd_cb(XBit bit, void *arg) @@ -826,5 +825,5 @@
} }
-void dtd_cb2(XBit bit, void *arg) -void dtd_cb2(XBit bit, void *arg)
+void dtd_cb2(XBit bit, void *arg __unused) +void dtd_cb2(XBit bit, void *arg __unused)
{ {
XBit copy; XBit copy;
@@ -802,7 +801,7 @@ void dtd_cb2(XBit bit, void *arg) @@ -839,7 +838,7 @@
} }
-void print_text(Char *text) -void print_text(Char *text, int is_attr)
+void print_text(const Char *text) +void print_text(const Char *text, int is_attr)
{ {
- Char *pc, *last; - Char *pc, *last;
+ const Char *pc, *last; + const Char *pc, *last;
if(output_format == o_bits || !expand) if(output_format == o_bits || !expand)
@@ -901,25 +900,4 @@ void print_special(int c) @@ -875,5 +874,5 @@
(xml_version > XV_1_0 && type == 3))
{
- Char *end = (c > 0xffff ? pc-1 : pc); /* if it's a surrogate pair, before the first */
+ const Char *end = (c > 0xffff ? pc-1 : pc); /* if it's a surrogate pair, before the first */
if(end > last)
Printf("%.*S", end - last, last);
@@ -949,25 +948,4 @@
} }
-InputSource entity_open(Entity ent, void *arg) -InputSource entity_open(Entity ent, void *arg)
@ -1161,7 +1149,7 @@
- -
void print_ns_attrs(NamespaceBinding ns, int count) void print_ns_attrs(NamespaceBinding ns, int count)
{ {
@@ -969,13 +947,13 @@ void print_namespaces(NamespaceBinding n @@ -1017,13 +995,13 @@
} }
-int notation_compare(const void *a, const void *b) -int notation_compare(const void *a, const void *b)
@ -1180,15 +1168,15 @@
+ return Strcmp((*(const Entity *)a)->name, (*(const Entity *)b)->name); + return Strcmp((*(const Entity *)a)->name, (*(const Entity *)b)->name);
} }
@@ -1099,5 +1077,5 @@ static const char8 *minimal_uri(const ch @@ -1147,5 +1125,5 @@
#ifdef TIME_LIMIT #ifdef TIME_LIMIT
-void time_exceeded(int sig) -void time_exceeded(int sig)
+void time_exceeded(int sig __unused) +void time_exceeded(int sig __unused)
{ {
fprintf(stderr, "CPU time limit (%d seconds) exceeded, sorry\n", fprintf(stderr, "CPU time limit (%d seconds) exceeded, sorry\n",
--- rxputil.h 2003-11-27 09:06:57.000000000 -0500 --- include/rxputil.h 2003-11-27 09:06:57.000000000 -0500
+++ rxputil.h 2021-02-25 15:07:41.470232000 -0500 +++ include/rxputil.h 2021-02-25 15:07:41.470232000 -0500
@@ -6,4 +6,8 @@ @@ -6,4 +6,8 @@
type *name type *name
@ -1198,8 +1186,8 @@
+ +
#define VectorInit(v) \ #define VectorInit(v) \
((v##_count) = (v##_alloc) = 0, (v) = 0) ((v##_count) = (v##_alloc) = 0, (v) = 0)
--- stdio16.c 2005-01-14 11:10:54.000000000 -0500 --- src/stdio16.c 2005-01-14 11:10:54.000000000 -0500
+++ stdio16.c 2021-02-25 15:32:25.156652000 -0500 +++ src/stdio16.c 2021-02-25 15:32:25.156652000 -0500
@@ -15,4 +15,5 @@ @@ -15,4 +15,5 @@
#include <string.h> #include <string.h>
#include <stdarg.h> #include <stdarg.h>
@ -1365,8 +1353,8 @@
+static int GzipFlush(FILE16 *file __unused) +static int GzipFlush(FILE16 *file __unused)
{ {
return 0; return 0;
--- stdio16.h 2002-10-03 10:37:44.000000000 -0400 --- include/stdio16.h 2002-10-03 10:37:44.000000000 -0400
+++ stdio16.h 2021-02-25 15:28:59.692044000 -0500 +++ include/stdio16.h 2021-02-25 15:28:59.692044000 -0500
@@ -5,5 +5,5 @@ @@ -5,5 +5,5 @@
#include <stdio.h> #include <stdio.h>
#ifdef HAVE_LIBZ #ifdef HAVE_LIBZ
@ -1396,8 +1384,8 @@
+#endif +#endif
STD_API int Fprintf(FILE16 *file, const char *format, ...); STD_API int Fprintf(FILE16 *file, const char *format, ...);
--- string16.c 2004-10-11 12:18:29.000000000 -0400 --- src/string16.c 2004-10-11 12:18:29.000000000 -0400
+++ string16.c 2021-02-25 15:07:41.471817000 -0500 +++ src/string16.c 2021-02-25 15:07:41.471817000 -0500
@@ -171,9 +171,9 @@ size_t strlen16(const char16 *s) @@ -171,9 +171,9 @@ size_t strlen16(const char16 *s)
} }
@ -1435,8 +1423,8 @@
return 0; return 0;
} }
- -
--- string16.h 1999-05-28 08:08:38.000000000 -0400 --- include/string16.h 1999-05-28 08:08:38.000000000 -0400
+++ string16.h 2021-02-25 15:07:41.472166000 -0500 +++ include/string16.h 2021-02-25 15:07:41.472166000 -0500
@@ -23,5 +23,5 @@ STD_API int strncasecmp8(const char8 *, @@ -23,5 +23,5 @@ STD_API int strncasecmp8(const char8 *,
STD_API char16 *strdup16(const char16 *s); STD_API char16 *strdup16(const char16 *s);
@ -1451,13 +1439,12 @@
+STD_API const char16 *strstr16(const char16 *, const char16 *); +STD_API const char16 *strstr16(const char16 *, const char16 *);
STD_API void translate_latin1_utf16(const char8 *from, char16 *to); STD_API void translate_latin1_utf16(const char8 *from, char16 *to);
--- system.h 2003-05-19 20:17:27.000000000 -0400 --- include/system.h 2003-05-19 20:17:27.000000000 -0400
+++ system.h 2021-02-25 15:10:55.417342000 -0500 +++ include/system.h 2021-02-25 15:10:55.417342000 -0500
@@ -1,3 +1,6 @@ @@ -1,3 +1,5 @@
+#ifndef _RXP_SYSTEM_H +#ifndef _RXP_SYSTEM_H
+#define _RXP_SYSTEM_H +#define _RXP_SYSTEM_H
#define HAVE_LONG_LONG #define HAVE_LONG_LONG
+#define HAVE_LONG_DOUBLE
#define SOCKETS_IMPLEMENTED #define SOCKETS_IMPLEMENTED
@@ -11,2 +14,4 @@ void *Malloc(int bytes); @@ -11,2 +14,4 @@ void *Malloc(int bytes);
@ -1465,8 +1452,8 @@
void Free(void *mem); void Free(void *mem);
+ +
+#endif +#endif
--- url.c 2004-06-11 07:39:17.000000000 -0400 --- src/url.c 2004-06-11 07:39:17.000000000 -0400
+++ url.c 2021-02-25 15:07:41.472694000 -0500 +++ src/url.c 2021-02-25 15:07:41.472694000 -0500
@@ -80,10 +80,10 @@ static int hexval(int hex); @@ -80,10 +80,10 @@ static int hexval(int hex);
/* Mapping of scheme names to opening functions */ /* Mapping of scheme names to opening functions */
@ -1536,33 +1523,33 @@
+ *r = '/'; + *r = '/';
} }
} }
--- version.c 2005-01-14 12:09:25.000000000 -0500 --- src/version.c 2008-05-29 06:51:54.000000000 -0400
+++ version.c 2021-02-25 15:07:41.472934000 -0500 +++ src/version.c 2024-01-22 01:11:34.603161000 -0500
@@ -1,2 +1,4 @@ @@ -1,4 +1,5 @@
-char *rxp_version_string = #include "config.h"
+#include "version.h" +#include "version.h"
+
-char *rxp_version_string =
+const char *rxp_version_string = +const char *rxp_version_string =
"RXP 1.4.4 Copyright Richard Tobin, LTG, HCRC, University of Edinburgh"; "RXP " PACKAGE_VERSION " Copyright Richard Tobin, LTG, HCRC, University of Edinburgh";
--- version.h 1999-02-17 09:43:19.000000000 -0500 --- include/version.h 1999-02-17 09:43:19.000000000 -0500
+++ version.h 2021-02-25 15:07:41.473163000 -0500 +++ include/version.h 2021-02-25 15:07:41.473163000 -0500
@@ -1 +1 @@ @@ -1 +1 @@
-extern char *rxp_version_string; -extern char *rxp_version_string;
+extern const char *rxp_version_string; +extern const char *rxp_version_string;
--- xmlparser.c 2004-11-03 08:47:31.000000000 -0500 --- src/xmlparser.c 2021-06-14 14:02:03.000000000 -0400
+++ xmlparser.c 2021-02-25 15:22:16.748707000 -0500 +++ src/xmlparser.c 2024-01-22 00:53:35.001099000 -0500
@@ -4,7 +4,7 @@ @@ -4,7 +4,6 @@
#define DEBUG_FSM 0 #define DEBUG_FSM 0
-#ifndef lint -#ifndef lint
-static char vcid[] = "$Id: xmlparser.c,v 1.131 2004/11/03 13:47:31 richard Exp $"; -static char vcid[] = "$Id: xmlparser.c,v 1.137 2021/06/14 18:02:03 richard Exp $";
-#endif /* lint */ -#endif /* lint */
+#include <sys/cdefs.h> +#include <sys/cdefs.h>
+ +__RCSID("$Id: xmlparser.c,v 1.137 2021/06/14 18:02:03 richard Exp $");
+__RCSID("$Id: xmlparser.c,v 1.131 2004/11/03 13:47:31 richard Exp $");
/* /*
@@ -140,6 +140,6 @@ enum literal_type { @@ -142,6 +141,6 @@
}; };
static int parse_string(Parser p, const char8 *where, enum literal_type type, int *normalised); static int parse_string(Parser p, const char8 *where, enum literal_type type, int *normalised);
-static int parse_pi(Parser p, Entity ent); -static int parse_pi(Parser p, Entity ent);
@ -1571,14 +1558,14 @@
+static int parse_comment(Parser p, int skip); +static int parse_comment(Parser p, int skip);
static int parse_pcdata(Parser p); static int parse_pcdata(Parser p);
static int parse_starttag(Parser p); static int parse_starttag(Parser p);
@@ -148,5 +148,5 @@ static int process_namespace(Parser p, @@ -150,5 +149,5 @@
AttributeDefinition d, const Char *value); AttributeDefinition d, const Char *value);
static int parse_attribute(Parser p); static int parse_attribute(Parser p);
-static WhiteSpaceMode process_xml_space(Parser p, const Char *value); -static WhiteSpaceMode process_xml_space(Parser p, const Char *value);
+static WhiteSpaceMode process_xml_space(const Char *value); +static WhiteSpaceMode process_xml_space(const Char *value);
static int parse_endtag(Parser p); static int parse_endtag(Parser p);
static int parse_markup(Parser p); static int parse_markup(Parser p);
@@ -157,5 +157,7 @@ static int validate_final(Parser p); @@ -159,5 +158,7 @@
static HashMapRetType check_id(const HashEntryStruct *id_entry, void *p); static HashMapRetType check_id(const HashEntryStruct *id_entry, void *p);
static int validate_attribute(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value); static int validate_attribute(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value);
+#if 0 +#if 0
@ -1586,14 +1573,14 @@
+#endif +#endif
static int check_attribute_syntax(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value, const char *message, int real_use); static int check_attribute_syntax(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value, const char *message, int real_use);
static int check_attribute_token(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value, int length, const char *message, int real_use); static int check_attribute_token(Parser p, AttributeDefinition a, ElementDefinition e, const Char *value, int length, const char *message, int real_use);
@@ -165,5 +167,5 @@ static int magically_transform_dtd(Parse @@ -167,5 +168,5 @@
static struct element_definition pcdata_element; static struct element_definition pcdata_element;
-const ElementDefinition Epsilon = 0, PCDataElement = &pcdata_element; -const ElementDefinition Epsilon = 0, PCDataElement = &pcdata_element;
+static const ElementDefinition Epsilon = 0, PCDataElement = &pcdata_element; +static const ElementDefinition Epsilon = 0, PCDataElement = &pcdata_element;
static FSM NewFSM(void); static FSM NewFSM(void);
@@ -1203,8 +1205,8 @@ static int parse_markup(Parser p) @@ -1207,8 +1208,8 @@
{ {
if(ParserGetFlag(p, ReturnComments)) if(ParserGetFlag(p, ReturnComments))
- return parse_comment(p, 0, 0); - return parse_comment(p, 0, 0);
@ -1604,21 +1591,21 @@
+ require(parse_comment(p, 1)); + require(parse_comment(p, 1));
/* XXX avoid recursion here */ /* XXX avoid recursion here */
return parse(p); return parse(p);
@@ -1224,5 +1226,5 @@ static int parse_markup(Parser p) @@ -1228,5 +1229,5 @@
case '?': case '?':
- return parse_pi(p, 0); - return parse_pi(p, 0);
+ return parse_pi(p); + return parse_pi(p);
case BADCHAR: case BADCHAR:
@@ -1322,5 +1324,5 @@ static int parse_endtag(Parser p) @@ -1326,5 +1327,5 @@
static int check_qualname_syntax(Parser p, const Char *name, const char *type) static int check_qualname_syntax(Parser p, const Char *name, const char *type)
{ {
- Char *t; - Char *t;
+ const Char *t; + const Char *t;
t = Strchr(name, ':'); t = Strchr(name, ':');
@@ -1354,5 +1356,8 @@ static int check_qualname_syntax(Parser @@ -1358,5 +1359,8 @@
static int parse_starttag(Parser p) static int parse_starttag(Parser p)
{ {
- int c, is_top_level = 0; - int c, is_top_level = 0;
@ -1628,7 +1615,7 @@
+#endif +#endif
ElementDefinition e; ElementDefinition e;
AttributeDefinition d; AttributeDefinition d;
@@ -1370,5 +1375,7 @@ static int parse_starttag(Parser p) @@ -1374,5 +1378,7 @@
require(validate_dtd(p)); require(validate_dtd(p));
} }
+#if not_yet +#if not_yet
@ -1636,7 +1623,7 @@
+#endif +#endif
} }
@@ -1541,7 +1548,4 @@ static int parse_starttag(Parser p) @@ -1545,7 +1551,4 @@
/* check for required attributes */ /* check for required attributes */
- AttributeDefinition d; - AttributeDefinition d;
@ -1644,21 +1631,21 @@
- -
for(d=NextAttributeDefinition(e, 0); for(d=NextAttributeDefinition(e, 0);
d; d;
@@ -1658,5 +1662,5 @@ static int parse_starttag(Parser p) @@ -1662,5 +1665,5 @@
if(a->definition == d) if(a->definition == d)
{ {
- p->xbit.wsm = process_xml_space(p, a->value); - p->xbit.wsm = process_xml_space(p, a->value);
+ p->xbit.wsm = process_xml_space(a->value); + p->xbit.wsm = process_xml_space(a->value);
goto done; goto done;
} }
@@ -1664,5 +1668,5 @@ static int parse_starttag(Parser p) @@ -1668,5 +1671,5 @@
if(d->default_type == DT_none || d->default_type == DT_fixed) if(d->default_type == DT_none || d->default_type == DT_fixed)
{ {
- p->xbit.wsm = process_xml_space(p, d->default_value); - p->xbit.wsm = process_xml_space(p, d->default_value);
+ p->xbit.wsm = process_xml_space(d->default_value); + p->xbit.wsm = process_xml_space(d->default_value);
goto done; goto done;
} }
@@ -2086,9 +2090,8 @@ static int parse_attribute(Parser p) @@ -2090,9 +2093,8 @@
} }
-static WhiteSpaceMode process_xml_space(Parser p, const Char *value) -static WhiteSpaceMode process_xml_space(Parser p, const Char *value)
@ -1669,71 +1656,64 @@
- Char buf[9]; - Char buf[9];
const Char *v; const Char *v;
int i; int i;
@@ -2102,7 +2105,5 @@ static WhiteSpaceMode process_xml_space( @@ -2106,7 +2108,5 @@
if(!v[i] || is_xml_whitespace(v[i])) if(!v[i] || is_xml_whitespace_16(v[i]))
break; break;
- buf[i] = v[i]; - buf[i] = v[i];
} }
- buf[i] = '\0'; - buf[i] = '\0';
for(; v[i]; i++) for(; v[i]; i++)
if(!is_xml_whitespace(v[i])) if(!is_xml_whitespace_16(v[i]))
@@ -2204,5 +2205,5 @@ static int parse_pcdata(Parser p) @@ -2208,5 +2208,5 @@
{ {
s->next = next + 3; s->next = next + 3;
- require(parse_comment(p, 1, 0)); - require(parse_comment(p, 1, 0));
+ require(parse_comment(p, 1)); + require(parse_comment(p, 1));
NF16StartCheck(p); NF16StartCheck(p);
buflen = s->line_length; buflen = s->line_length;
@@ -2348,5 +2349,5 @@ static int parse_pcdata(Parser p) @@ -2352,5 +2352,5 @@
/* Called after reading '<!--'. Won't go over an entity end. */ /* Called after reading '<!--'. Won't go over an entity end. */
-static int parse_comment(Parser p, int skip, Entity ent) -static int parse_comment(Parser p, int skip, Entity ent)
+static int parse_comment(Parser p, int skip) +static int parse_comment(Parser p, int skip)
{ {
InputSource s = p->source; InputSource s = p->source;
@@ -2417,5 +2418,5 @@ static int parse_comment(Parser p, int s @@ -2421,5 +2421,5 @@
} }
-static int parse_pi(Parser p, Entity ent) -static int parse_pi(Parser p, Entity ent)
+static int parse_pi(Parser p) +static int parse_pi(Parser p)
{ {
InputSource s = p->source; InputSource s = p->source;
@@ -2998,5 +2999,5 @@ static int process_xml_decl(Parser p) @@ -3002,5 +3002,5 @@
char8 *value; char8 *value;
CharacterEncoding enc = CE_unknown; CharacterEncoding enc = CE_unknown;
- Char c; - Char c;
+ int c; + int c;
/* /*
@@ -3322,5 +3323,5 @@ static int parse_markupdecl(Parser p) @@ -3344,5 +3344,5 @@
else if(looking_at(p, "?")) else if(looking_at(p, "?"))
{ {
- require(parse_pi(p, cur_ent)); - require(parse_pi(p, cur_ent));
+ require(parse_pi(p)); + require(parse_pi(p));
if(p->dtd_callback) if(p->dtd_callback)
p->dtd_callback(&p->xbit, p->dtd_callback_arg); p->dtd_callback(&p->xbit, p->dtd_callback_arg);
@@ -3333,5 +3334,5 @@ static int parse_markupdecl(Parser p) @@ -3355,5 +3355,5 @@
if(ParserGetFlag(p, ReturnComments)) if(ParserGetFlag(p, ReturnComments))
{ {
- require(parse_comment(p, 0, cur_ent)); - require(parse_comment(p, 0, cur_ent));
+ require(parse_comment(p, 0)); + require(parse_comment(p, 0));
if(p->dtd_callback) if(p->dtd_callback)
p->dtd_callback(&p->xbit, p->dtd_callback_arg); p->dtd_callback(&p->xbit, p->dtd_callback_arg);
@@ -3341,5 +3342,5 @@ static int parse_markupdecl(Parser p) @@ -3363,5 +3363,5 @@
} }
else else
- return parse_comment(p, 1, cur_ent); - return parse_comment(p, 1, cur_ent);
+ return parse_comment(p, 1); + return parse_comment(p, 1);
} }
else if(p->state == PS_error) /* looking_at may have set it */ else if(p->state == PS_error) /* looking_at may have set it */
@@ -4881,5 +4882,5 @@ static HashMapRetType check_id(const Has @@ -5387,17 +5387,19 @@
Parser p = (Parser)pp;
- if(!(int)hash_get_value(id_entry))
+ if (hash_get_value(id_entry) != NULL)
validity_error(p,
"The ID %.*S was referred to but never defined",
@@ -5351,17 +5352,19 @@ static int validate_attribute(Parser p,
} }
+#if 0 +#if 0
@ -1754,7 +1734,7 @@
-#if 0 -#if 0
const Char *t; const Char *t;
@@ -5404,7 +5407,7 @@ static int validate_xml_lang_attribute(P @@ -5440,7 +5442,7 @@
/* Not a validity error since erratum 73 */ /* Not a validity error since erratum 73 */
warn(p, "Dubious xml:lang attribute for element %S", e->name); warn(p, "Dubious xml:lang attribute for element %S", e->name);
-#endif -#endif
@ -1763,17 +1743,3 @@
+#endif +#endif
/* Check an attribute matches Name[s] or Nmtoken[s]. /* Check an attribute matches Name[s] or Nmtoken[s].
@@ -5518,5 +5521,5 @@ static int check_attribute_token(Parser
if(!found)
{
- hash_set_value(id_entry, (void *)(a->type == AT_id));
+ hash_set_value(id_entry, (void *)(intptr_t)(a->type == AT_id));
if(ParserGetFlag(p, XMLNamespaces))
for(i=0; i<length; i++)
@@ -5528,5 +5531,5 @@ static int check_attribute_token(Parser
else if(a->type == AT_id)
{
- int idinfo = (int)hash_get_value(id_entry);
+ intptr_t idinfo = (intptr_t)hash_get_value(id_entry);
if(idinfo & 1)
{

View file

@ -1,13 +1,20 @@
bin/rxp bin/rxp
lib/librxp.a lib/librxp.a
lib/librxp.so lib/librxp.so
lib/librxp.so.1 lib/librxp.so.2
lib/librxp.so.2.0.0
include/rxp/catalog.h
include/rxp/catutil.h
include/rxp/charset.h include/rxp/charset.h
include/rxp/ctype16.h include/rxp/ctype16.h
include/rxp/dtd.h include/rxp/dtd.h
include/rxp/hash.h include/rxp/hash.h
include/rxp/http.h
include/rxp/infoset-print.h
include/rxp/input.h include/rxp/input.h
include/rxp/namespaces.h include/rxp/namespaces.h
include/rxp/nf16check.h
include/rxp/nf16data.h
include/rxp/rxputil.h include/rxp/rxputil.h
include/rxp/stdio16.h include/rxp/stdio16.h
include/rxp/string16.h include/rxp/string16.h