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

RESOLVED FIXED in mozilla21

Status

()

Core
DOM
--
major
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: jib, Assigned: bz)

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;
  };
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]
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)
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?
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+
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: 5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.