Closed
Bug 4755
Opened 26 years ago
Closed 26 years ago
SGI/native compiler errors on expat/xmlparse/xmlparse.c
Categories
(Core :: XML, defect, P3)
Tracking
()
VERIFIED
FIXED
People
(Reporter: tor, Assigned: nisheeth_mozilla)
Details
Attachments
(1 file)
(deleted),
patch
|
Details | Diff | Splinter Review |
Compiling on an SGI with the native compiler (MIPSpro 7.2.1.3m),
the compile stops in expat with the following errors:
---------------------------------------------
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 938: error(1131):
expected a field name
int tok = XmlContentTok(encoding, start, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 938: error(1131):
expected a field name
int tok = XmlContentTok(encoding, start, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 969: error(1131):
expected a field name
int tok = XmlContentTok(encoding, start, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 969: error(1131):
expected a field name
int tok = XmlContentTok(encoding, start, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 1935: error(1131):
expected a field name
int tok = XmlPrologTok(encoding, s, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 1935: error(1131):
expected a field name
int tok = XmlPrologTok(encoding, s, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2242: error(1131):
expected a field name
int tok = XmlPrologTok(encoding, s, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2242: error(1131):
expected a field name
int tok = XmlPrologTok(encoding, s, end, &next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2363: warning(1110):
statement is unreachable
break;
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2445: error(1131):
expected a field name
int tok = XmlEntityValueTok(encoding, entityTextPtr, entityTextEnd,
&next);
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2445: error(1131):
expected a field name
int tok = XmlEntityValueTok(encoding, entityTextPtr, entityTextEnd,
&next);
^
---------------------------------------------
Expanding the macros, here's a better picture of what's causing problems:
---------------------------------------------
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 938: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), start, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 938: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), start, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 969: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), start, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 969: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), start, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 1935: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[0])((((Parser *)parser)->(((Parser
*)parser)->encoding)), s, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 1935: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[0])((((Parser *)parser)->(((Parser
*)parser)->encoding)), s, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2242: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[0])((((Parser *)parser)->(((Parser
*)parser)->encoding)), s, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2242: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->scanners[0])((((Parser *)parser)->(((Parser
*)parser)->encoding)), s, end, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2363: warning(1110):
statement is unreachable
break;
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2445: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->literalScanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), entityTextPtr, entityTextEnd, &next));
^
"/cs/src/mozilla/mozilla/expat/xmlparse/xmlparse.c", line 2445: error(1131):
expected a field name
int tok = ((((((Parser *)parser)->(((Parser
*)parser)->encoding)))->literalScanners[1])((((Parser *)parser)->(((Parser
*)parser)->encoding)), entityTextPtr, entityTextEnd, &next));
^
---------------------------------------------
Assignee | ||
Updated•26 years ago
|
Status: NEW → ASSIGNED
Assignee | ||
Comment 1•26 years ago
|
||
Tor, I don't have easy access to an IRIX box out here. Can you create a login
for me so that I can debug this problem? Please send me email if that sounds
feasible.
It appears to be a bug in the preprocessor of the MIPSpro compilers.
The problem code reduces to the following:
----CUT-HERE--------------
#define bar(x) (x)
#define foo(x) bar(x)
#define foobar (blech->foobar)
foo(foobar);
----CUT-HERE--------------
On gcc, SUNWspro, and xlc, running this fragment through the preprocessor ("-E")
results in the following (+/- whitespace):
( ( blech -> foobar ) );
MIPSpro appears to take two passes over the fragment, resulting in this mess:
((blech->(blech->foobar)));
The problem macro in the expat code is "encoding".
SGI claims that this bug is fixed in the 7.3 compilers, which should be
out sometime this summer. Probably a good idea to install the fix (see
attachment) in the meantime.
Assignee | ||
Updated•26 years ago
|
Status: ASSIGNED → RESOLVED
Closed: 26 years ago
Resolution: --- → FIXED
Assignee | ||
Updated•26 years ago
|
Status: RESOLVED → VERIFIED
Assignee | ||
Comment 6•26 years ago
|
||
Thanks a lot for the patch, Tim. I just checked it in. I'll also email Jim
Clark about making this fix to the expat codebase maintained by him.
There is no need to do QA for this bug, so I'll mark it verified myself.
You need to log in
before you can comment on or make changes to this bug.
Description
•