This use of E4X setName causes "Assertion failure: !IS_EMPTY(nameqn->uri)" This use of E4X setName causes "Assertion failure: !IS_EMPTY(nameqn->uri)"
Assuming I have the tests setup correctly, ... 50: FAIL expected: valid, actual: invalid input: u='http://a.uri/'; p='p'; a=<a xmlns:p={u}> <{p}:b>x</p:b> </a>; output: SyntaxError: illegal XML character 51: FAIL expected: valid, actual: invalid input: u='http://a.uri/'; p='p'; a=<a xmlns:pp={u}> <p{p}:b>x</pp:b> </a>; output: SyntaxError: illegal XML character 53: FAIL expected: valid, actual: in
Our implementation (and I believe the E4X spec, tho I haven't taken the time to investigate fully) don't properly emit redeclarations for prefixes which are overridden with a different namespace in nested child elements. Two examples: // Example 1 XML.prettyPrinting = false; default xml namespace = "a"; var x = <m/>; default xml namespace = ""; var c = <y/>; x.appendChild(c); print(x.toXMLString()
print(<a> b<c/></a> == <a>b<c/></a>); // == XML.ignoreWhitespace, not false This is probably (not tested yet) due to: http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/js/src/jsxml.c&rev=3.140&mark=1572#1567 A similar effect might happen at: http://bonsai.mozilla.org/cvsblame.cgi?file=mozilla/js/src/jsxml.c&rev=3.140&mark=3357#3350 except that the only way it can happen is for DeepCopy to be cal
The numbering of the steps for converting an element to a string in jsxml.c are based on ECMA-354 edition 1, which isn't the version made available on the ECMA site. (I don't even know where one would find ed. 1 now -- I feel lucky to have a copy of it.) This makes comparing code to spec difficult, so we should update the code to reflect the 2nd ed. numbering. I don't of any bugs the 2nd ed. wordi
E4X: extra " / > \n in Function.toSource function a(){ a=<?xml version="1.0"?> a1=<{a} a="a"/>; a2=<{a} a="a"></a>; a3=<{a} a="a">1</a>; x=<a> a new line then a backslash \ then a slash <b a="aa \ "/></a> } a give ==> function a() { a = <?xml "version=\"1.0\""?>; a1 = <{a} a="a"/>/>; a2 = <{a} a="a">></a>; a3 = <{a} a="a">>1</a>; x = <a> a new line \n then a backslash \\ then a slash <b a="aa \n \
so that it always returns an XML list. The new semantics are: When the child method of an XML object x is called, it performs the following step: 1. If ToString(ToUint32(propertyName)) == propertyName a. Let children be the result of calling the [[Get]] method of x with argument "*" b. Let temporary be the result of calling the [[Get]] method of children with argument propertyName c.If temporary i
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く