Sequence<>-dependency to dictionary in same .webidl file sometimes generates in wrong order, causing compiler ref-error

RESOLVED FIXED in mozilla21

Status

()

--
major
RESOLVED FIXED
6 years ago
6 years ago

People

(Reporter: jib, Assigned: bzbarsky)

Tracking

Trunk
mozilla21
x86
Mac OS X
Points:
---
Dependency tree / graph
Bug Flags:
in-testsuite ?

Firefox Tracking Flags

(Not tracked)

Details

(URL)

Attachments

(1 attachment)

See Bug 835712, comment 4. The second patch in that bug (also linked here in URL) causes this try burn: https://tbpl.mozilla.org/?tree=Try&rev=44d2473d9f4d

What's disturbing is that when I built it locally, it failed initially, but after a few edits and weak attempts at workarounds, it suddenly built fine. I removed my workaround attempts and it still built fine. I rebuilt it on inbound as opposed to central where I had it and it still built fine. It was only when I did a try that it failed.

I suspect it sometimes generates in the correct order and sometimes in the wrong order, which makes it easy to burn the tree by mistake.

The relevant part of that log:

  In file included from
  ../media/webrtc/signaling/src/peerconnection/PeerConnectionImpl.cpp:46:
  ../dist/include/mozilla/dom/RTCConfigurationBinding.h:31:23: error:
    use of undeclared identifier 'RTCIceServer'
  Optional< Sequence< RTCIceServer > > mIceServers;
                      ^
  ../dist/include/mozilla/dom/RTCConfigurationBinding.h:31:38: error:
    expected a type
  Optional< Sequence< RTCIceServer > > mIceServers;
                                     ^
2 errors generated.

The relevant part of dom/webidl/RTCConfiguration.webidl:

  dictionary RTCIceServer {
      DOMString  url;
      DOMString? credential = null;
  };

  dictionary RTCConfiguration {
      sequence<RTCIceServer> iceServers;
  };
(Assignee)

Comment 2

6 years ago
Looks like something I forgot to handle in bug 790975.

And you're right that the ordering is currently semi-random: there's a Python set() involved.  :(
Assignee: nobody → bzbarsky
Blocks: 790975
Whiteboard: [need review]
(Assignee)

Comment 3

6 years ago
Created attachment 713943 [details] [diff] [review]
Make sure that we treat dictionaries inside sequence and array members of a dictionary as dependencies for it.
Attachment #713943 - Flags: review?(peterv)
(Assignee)

Comment 4

6 years ago
Jan-Ivar, does that patch help?
Flags: needinfo?(jib)
I was hoping to land my constraints patch, bug 835370, before Tuesday but it is blocked by this. Any chance of it landing soon?
(Assignee)

Comment 7

6 years ago
Needs review from Peter.  With any luck, that'll happen Monday; if so feel free to push this with your patch if I haven't gotten to it first!
Attachment #713943 - Flags: review?(peterv) → review+
(Assignee)

Comment 8

6 years ago
http://hg.mozilla.org/integration/mozilla-inbound/rev/046df99b88b0
Flags: in-testsuite?
Whiteboard: [need review]
Target Milestone: --- → mozilla21
https://hg.mozilla.org/mozilla-central/rev/046df99b88b0
Status: NEW → RESOLVED
Last Resolved: 6 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.