1
0
mirror of https://gitlab.gnome.org/GNOME/libxml2.git synced 2024-10-26 20:25:14 +03:00

relaxng.c: cast to allow compilation with sun studio 11

Sun Studio 11 was failing to compile relaxng.c due to a type mismatch
in a ternary operator used to provide an argument to xmlRngPErr.  It
seems that sos11 cc is more pedantic about this part of the C99
standard.  GCC issues a warning but doesn't fail by default.

After casting the string literal "nothing" to (const xmlChar *) sos11
cc is happy.  GCC no longer issues a warning either.

Another warning was cleaned up with an identical cast.
This commit is contained in:
Ben Walton 2010-03-15 10:06:36 +01:00 committed by Daniel Veillard
parent f39adc2516
commit a7a6a4b2f3

View File

@ -5369,7 +5369,8 @@ xmlRelaxNGParseNameClass(xmlRelaxNGParserCtxtPtr ctxt, xmlNodePtr node,
} else {
xmlRngPErr(ctxt, node, XML_RNGP_CHOICE_CONTENT,
"expecting name, anyName, nsName or choice : got %s\n",
(node == NULL ? "nothing" : node->name), NULL);
(node == NULL ? (const xmlChar *) "nothing" : node->name),
NULL);
return (NULL);
}
if (ret != def) {
@ -9459,7 +9460,8 @@ xmlRelaxNGValidateInterleave(xmlRelaxNGValidCtxtPtr ctxt,
ctxt->states = NULL;
if (found == 0) {
if (cur == NULL) {
VALID_ERR2(XML_RELAXNG_ERR_INTEREXTRA, "noname");
VALID_ERR2(XML_RELAXNG_ERR_INTEREXTRA,
(const xmlChar *) "noname");
} else {
VALID_ERR2(XML_RELAXNG_ERR_INTEREXTRA, cur->name);
}