Fix from crowder@fiverocks.com for real and potential UMRs to-do with PN_NAME node optional members (352470, a=me).

This commit is contained in:
brendan%mozilla.org 2006-09-13 19:07:20 +00:00
Родитель 8a6e84773b
Коммит f9d7970e7f
1 изменённых файлов: 8 добавлений и 0 удалений

Просмотреть файл

@ -1602,6 +1602,8 @@ ImportExpr(JSContext *cx, JSTokenStream *ts, JSTreeContext *tc)
if (js_MatchToken(cx, ts, TOK_STAR)) { if (js_MatchToken(cx, ts, TOK_STAR)) {
pn2->pn_op = JSOP_IMPORTALL; pn2->pn_op = JSOP_IMPORTALL;
pn2->pn_atom = NULL; pn2->pn_atom = NULL;
pn2->pn_slot = -1;
pn2->pn_attrs = 0;
} else { } else {
MUST_MATCH_TOKEN(TOK_NAME, JSMSG_NAME_AFTER_DOT); MUST_MATCH_TOKEN(TOK_NAME, JSMSG_NAME_AFTER_DOT);
pn2->pn_op = JSOP_GETPROP; pn2->pn_op = JSOP_GETPROP;
@ -2383,6 +2385,8 @@ PushLexicalScope(JSContext *cx, JSTokenStream *ts, JSTreeContext *tc,
pn->pn_op = JSOP_LEAVEBLOCK; pn->pn_op = JSOP_LEAVEBLOCK;
pn->pn_atom = atom; pn->pn_atom = atom;
pn->pn_expr = NULL; pn->pn_expr = NULL;
pn->pn_slot = -1;
pn->pn_attrs = 0;
return pn; return pn;
} }
@ -3369,6 +3373,8 @@ Statement(JSContext *cx, JSTokenStream *ts, JSTreeContext *tc)
pn1->pn_pos = tc->blockNode->pn_pos; pn1->pn_pos = tc->blockNode->pn_pos;
pn1->pn_atom = atom; pn1->pn_atom = atom;
pn1->pn_expr = tc->blockNode; pn1->pn_expr = tc->blockNode;
pn1->pn_slot = -1;
pn1->pn_attrs = 0;
tc->blockNode = pn1; tc->blockNode = pn1;
} }
@ -4266,6 +4272,8 @@ MemberExpr(JSContext *cx, JSTokenStream *ts, JSTreeContext *tc,
pn2 = NewParseNode(cx, ts, PN_NAME, tc); pn2 = NewParseNode(cx, ts, PN_NAME, tc);
if (!pn2) if (!pn2)
return NULL; return NULL;
pn2->pn_slot = -1;
pn2->pn_attrs = 0;
#if JS_HAS_XML_SUPPORT #if JS_HAS_XML_SUPPORT
ts->flags |= TSF_OPERAND | TSF_KEYWORD_IS_NAME; ts->flags |= TSF_OPERAND | TSF_KEYWORD_IS_NAME;
tt = js_GetToken(cx, ts); tt = js_GetToken(cx, ts);