Bug 918651 - part 5 - qualify all IPDL using statements with required header; r=ehsan
authorNathan Froyd <froydnj@mozilla.com>
Tue, 01 Oct 2013 15:25:07 -0400
changeset 153257 f78efc36083b28661f26a3450968a34d544e0b92
parent 153256 ea8ed686f643023b846da7ea43b03b5b74225016
child 153258 b54425528b7daa78efb255f1853ec8b0ee8589b0
push id25578
push userphilringnalda@gmail.com
push dateSun, 03 Nov 2013 21:05:48 +0000
treeherdermozilla-central@fc3414dda755 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersehsan
bugs918651
milestone28.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 918651 - part 5 - qualify all IPDL using statements with required header; r=ehsan
dom/bluetooth/ipc/PBluetooth.ipdl
dom/fmradio/ipc/PFMRadio.ipdl
dom/indexedDB/ipc/IndexedDBParams.ipdlh
dom/indexedDB/ipc/PIndexedDB.ipdl
dom/indexedDB/ipc/PIndexedDBCursor.ipdl
dom/indexedDB/ipc/PIndexedDBDatabase.ipdl
dom/indexedDB/ipc/PIndexedDBObjectStore.ipdl
dom/indexedDB/ipc/PIndexedDBRequest.ipdl
dom/indexedDB/ipc/PIndexedDBTransaction.ipdl
dom/ipc/DOMTypes.ipdlh
dom/ipc/PBrowser.ipdl
dom/ipc/PContent.ipdl
dom/ipc/PDocumentRenderer.ipdl
dom/ipc/PTabContext.ipdlh
dom/mobilemessage/src/ipc/SmsTypes.ipdlh
dom/network/src/PTCPSocket.ipdl
dom/plugins/ipc/PBrowserStream.ipdl
dom/plugins/ipc/PPluginInstance.ipdl
dom/plugins/ipc/PPluginModule.ipdl
dom/plugins/ipc/PPluginScriptableObject.ipdl
dom/plugins/ipc/PPluginStream.ipdl
dom/plugins/ipc/PStreamNotify.ipdl
gfx/layers/ipc/LayersMessages.ipdlh
gfx/layers/ipc/LayersSurfaces.ipdlh
gfx/layers/ipc/PCompositor.ipdl
gfx/layers/ipc/PImageBridge.ipdl
gfx/layers/ipc/PLayerTransaction.ipdl
hal/sandbox/PHal.ipdl
ipc/glue/InputStreamParams.ipdlh
ipc/glue/URIParams.ipdlh
ipc/ipdl/test/cxx/PTestDataStructuresCommon.ipdlh
ipc/ipdl/test/cxx/PTestJSON.ipdl
ipc/ipdl/test/ipdl/error/shmem.ipdl
ipc/ipdl/test/ipdl/ok/header.ipdlh
ipc/ipdl/test/ipdl/ok/multipleUsingCxxTypes.ipdl
js/ipc/JavaScriptTypes.ipdlh
js/ipc/PJavaScript.ipdl
layout/ipc/PRenderFrame.ipdl
netwerk/cookie/PCookieService.ipdl
netwerk/ipc/NeckoChannelParams.ipdlh
netwerk/ipc/PNecko.ipdl
netwerk/protocol/ftp/PFTPChannel.ipdl
netwerk/protocol/http/PHttpChannel.ipdl
netwerk/protocol/websocket/PWebSocket.ipdl
netwerk/protocol/wyciwyg/PWyciwygChannel.ipdl
--- a/dom/bluetooth/ipc/PBluetooth.ipdl
+++ b/dom/bluetooth/ipc/PBluetooth.ipdl
@@ -7,17 +7,17 @@
 include protocol PBlob;
 include protocol PBluetoothRequest;
 include protocol PContent;
 
 include BluetoothTypes;
 
 include "mozilla/dom/bluetooth/ipc/BluetoothMessageUtils.h";
 
-using mozilla::dom::bluetooth::BluetoothObjectType;
+using mozilla::dom::bluetooth::BluetoothObjectType from "mozilla/dom/bluetooth/BluetoothCommon.h";
 
 namespace mozilla {
 namespace dom {
 namespace bluetooth {
 
 /**
  * Bluetooth request types.
  */
--- a/dom/fmradio/ipc/PFMRadio.ipdl
+++ b/dom/fmradio/ipc/PFMRadio.ipdl
@@ -2,17 +2,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include "mozilla/HalTypes.h";
 
 include protocol PContent;
 include protocol PFMRadioRequest;
 
-using mozilla::hal::FMRadioSeekDirection;
+using mozilla::hal::FMRadioSeekDirection from "mozilla/HalTypes.h";
 
 namespace mozilla {
 namespace dom {
 
 struct EnableRequestArgs
 {
   double frequency;
 };
--- a/dom/indexedDB/ipc/IndexedDBParams.ipdlh
+++ b/dom/indexedDB/ipc/IndexedDBParams.ipdlh
@@ -1,19 +1,19 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::indexedDB::Key;
-using mozilla::dom::indexedDB::IDBCursor::Direction;
-using mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo;
+using class mozilla::dom::indexedDB::Key from "mozilla/dom/indexedDB/Key.h";
+using mozilla::dom::indexedDB::IDBCursor::Direction from "mozilla/dom/indexedDB/IDBCursor.h";
+using struct mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo from "mozilla/dom/indexedDB/IndexedDatabase.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 namespace ipc {
 
 struct KeyRange
 {
--- a/dom/indexedDB/ipc/PIndexedDB.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDB.ipdl
@@ -4,17 +4,17 @@
 
 include protocol PBrowser;
 include protocol PContent;
 include protocol PIndexedDBDatabase;
 include protocol PIndexedDBDeleteDatabaseRequest;
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::quota::PersistenceType;
+using mozilla::dom::quota::PersistenceType from "mozilla/dom/quota/PersistenceType.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 protocol PIndexedDB
 {
   manager PBrowser or PContent;
--- a/dom/indexedDB/ipc/PIndexedDBCursor.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDBCursor.ipdl
@@ -3,20 +3,20 @@
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PIndexedDBIndex;
 include protocol PIndexedDBObjectStore;
 include protocol PIndexedDBRequest;
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::indexedDB::Key;
-using mozilla::dom::indexedDB::IDBCursor::Direction;
+using class mozilla::dom::indexedDB::Key from "mozilla/dom/indexedDB/Key.h";
+using mozilla::dom::indexedDB::IDBCursor::Direction from "mozilla/dom/indexedDB/IDBCursor.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 namespace ipc {
 
 struct ContinueParams
--- a/dom/indexedDB/ipc/PIndexedDBDatabase.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDBDatabase.ipdl
@@ -2,19 +2,19 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PIndexedDB;
 include protocol PIndexedDBTransaction;
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::indexedDB::DatabaseInfoGuts;
-using mozilla::dom::indexedDB::ObjectStoreInfoGuts;
-using mozilla::dom::indexedDB::IDBTransaction::Mode;
+using struct mozilla::dom::indexedDB::DatabaseInfoGuts from "mozilla/dom/indexedDB/DatabaseInfo.h";
+using struct mozilla::dom::indexedDB::ObjectStoreInfoGuts from "mozilla/dom/indexedDB/DatabaseInfo.h";
+using mozilla::dom::indexedDB::IDBTransaction::Mode from "mozilla/dom/indexedDB/IDBTransaction.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 namespace ipc {
 
 struct NormalTransactionParams
--- a/dom/indexedDB/ipc/PIndexedDBObjectStore.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDBObjectStore.ipdl
@@ -5,19 +5,19 @@
 include protocol PBlob;
 include protocol PIndexedDBCursor;
 include protocol PIndexedDBIndex;
 include protocol PIndexedDBRequest;
 include protocol PIndexedDBTransaction;
 
 include IndexedDBParams;
 
-using mozilla::dom::indexedDB::IndexInfo;
-using mozilla::dom::indexedDB::IndexUpdateInfo;
-using mozilla::dom::indexedDB::SerializedStructuredCloneWriteInfo;
+using struct mozilla::dom::indexedDB::IndexInfo from "mozilla/dom/indexedDB/DatabaseInfo.h";
+using struct mozilla::dom::indexedDB::IndexUpdateInfo from "mozilla/dom/indexedDB/DatabaseInfo.h";
+using struct mozilla::dom::indexedDB::SerializedStructuredCloneWriteInfo from "mozilla/dom/indexedDB/IndexedDatabase.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 namespace ipc {
 
 struct AddPutParams
--- a/dom/indexedDB/ipc/PIndexedDBRequest.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDBRequest.ipdl
@@ -4,20 +4,20 @@
 
 include protocol PBlob;
 include protocol PIndexedDBCursor;
 include protocol PIndexedDBIndex;
 include protocol PIndexedDBObjectStore;
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::indexedDB::Key;
-using mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo;
+using class mozilla::dom::indexedDB::Key from "mozilla/dom/indexedDB/Key.h";
+using struct mozilla::dom::indexedDB::SerializedStructuredCloneReadInfo from "mozilla/dom/indexedDB/IndexedDatabase.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 namespace ipc {
 
 struct GetResponse
--- a/dom/indexedDB/ipc/PIndexedDBTransaction.ipdl
+++ b/dom/indexedDB/ipc/PIndexedDBTransaction.ipdl
@@ -2,17 +2,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PIndexedDBDatabase;
 include protocol PIndexedDBObjectStore;
 
 include "mozilla/dom/indexedDB/SerializationHelpers.h";
 
-using mozilla::dom::indexedDB::ObjectStoreInfoGuts;
+using struct mozilla::dom::indexedDB::ObjectStoreInfoGuts from "mozilla/dom/indexedDB/DatabaseInfo.h";
 
 namespace mozilla {
 namespace dom {
 namespace indexedDB {
 
 namespace ipc {
 
 struct CreateObjectStoreParams
--- a/dom/ipc/DOMTypes.ipdlh
+++ b/dom/ipc/DOMTypes.ipdlh
@@ -2,17 +2,17 @@
 /* vim: set sw=4 ts=8 et tw=80 ft=cpp : */
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PBlob;
 include InputStreamParams;
 
-using mozilla::SerializedStructuredCloneBuffer;
+using struct mozilla::SerializedStructuredCloneBuffer from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace dom {
 
 struct ClonedMessageData
 {
   SerializedStructuredCloneBuffer data;
   PBlob[] blobs;
--- a/dom/ipc/PBrowser.ipdl
+++ b/dom/ipc/PBrowser.ipdl
@@ -21,43 +21,44 @@ include "gfxMatrix.h";
 include "FrameMetrics.h";
 include "ipc/nsGUIEventIPC.h";
 include "mozilla/dom/TabMessageUtils.h";
 include "mozilla/dom/ScreenOrientation.h";
 include "mozilla/dom/PermissionMessageUtils.h";
 include "mozilla/layout/RenderFrameUtils.h";
 include "mozilla/layers/CompositorTypes.h";
 
-using IPC::Principal;
-using gfxMatrix;
-using gfxSize;
-using CSSRect;
-using mozilla::layers::FrameMetrics;
-using FrameMetrics::ViewID;
-using mozilla::layout::ScrollingBehavior;
-using mozilla::void_t;
-using mozilla::WindowsHandle;
-using nscolor;
-using mozilla::WidgetCompositionEvent;
-using nsIMEUpdatePreference;
-using nsIntPoint;
-using nsIntRect;
-using nsIntSize;
-using mozilla::WidgetKeyboardEvent;
-using mozilla::WidgetMouseEvent;
-using mozilla::WidgetWheelEvent;
-using nsRect;
-using mozilla::WidgetSelectionEvent;
-using mozilla::WidgetTextEvent;
-using mozilla::WidgetTouchEvent;
-using RemoteDOMEvent;
-using mozilla::dom::ScreenOrientation;
-using mozilla::layers::TextureFactoryIdentifier;
-using mozilla::CSSIntPoint;
-using mozilla::CSSToScreenScale;
+using class IPC::Principal from "mozilla/dom/PermissionMessageUtils.h";
+using struct gfxMatrix from "gfxMatrix.h";
+using struct gfxSize from "gfxPoint.h";
+using CSSRect from "Units.h";
+using struct mozilla::layers::FrameMetrics from "FrameMetrics.h";
+using FrameMetrics::ViewID from "FrameMetrics.h";
+using mozilla::layout::ScrollingBehavior from "mozilla/layout/RenderFrameUtils.h";
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using mozilla::WindowsHandle from "ipc/IPCMessageUtils.h";
+using nscolor from "nsColor.h";
+using class mozilla::WidgetCompositionEvent from "ipc/nsGUIEventIPC.h";
+using struct nsIMEUpdatePreference from "nsIWidget.h";
+using struct nsIntPoint from "nsPoint.h";
+using struct nsIntRect from "nsRect.h";
+using struct nsIntSize from "nsSize.h";
+using class mozilla::WidgetKeyboardEvent from "ipc/nsGUIEventIPC.h";
+using class mozilla::WidgetMouseEvent from "ipc/nsGUIEventIPC.h";
+using class mozilla::WidgetWheelEvent from "ipc/nsGUIEventIPC.h";
+using struct nsRect from "nsRect.h";
+using class mozilla::WidgetSelectionEvent from "ipc/nsGUIEventIPC.h";
+using class mozilla::WidgetTextEvent from "ipc/nsGUIEventIPC.h";
+using class mozilla::WidgetTouchEvent from "ipc/nsGUIEventIPC.h";
+using struct mozilla::dom::RemoteDOMEvent from "mozilla/dom/TabMessageUtils.h";
+using mozilla::dom::ScreenOrientation from "mozilla/dom/ScreenOrientation.h";
+using struct mozilla::layers::TextureFactoryIdentifier from "mozilla/layers/CompositorTypes.h";
+using mozilla::CSSIntPoint from "Units.h";
+using mozilla::CSSToScreenScale from "Units.h";
+
 namespace mozilla {
 namespace dom {
 
 intr protocol PBrowser
 {
     manager PContent;
 
     manages PContentDialog;
--- a/dom/ipc/PContent.ipdl
+++ b/dom/ipc/PContent.ipdl
@@ -34,31 +34,31 @@ include "mozilla/chrome/RegistryMessageU
 include "mozilla/dom/PermissionMessageUtils.h";
 include "mozilla/dom/TabMessageUtils.h";
 include "mozilla/HalTypes.h";
 include "mozilla/layout/RenderFrameUtils.h";
 include "mozilla/net/NeckoMessageUtils.h";
 include "nsGeoPositionIPCSerialiser.h";
 include "gfxPoint.h";
 
-using GeoPosition;
+using GeoPosition from "nsGeoPositionIPCSerialiser.h";
 
-using ChromePackage;
-using ResourceMapping;
-using OverrideMapping;
-using base::ChildPrivileges;
-using IPC::Permission;
-using IPC::Principal;
-using mozilla::null_t;
-using mozilla::void_t;
-using mozilla::dom::AudioChannelType;
-using mozilla::dom::AudioChannelState;
-using mozilla::dom::NativeThreadId;
-using mozilla::hal::ProcessPriority;
-using gfxIntSize;
+using struct ChromePackage from "mozilla/chrome/RegistryMessageUtils.h";
+using struct ResourceMapping from "mozilla/chrome/RegistryMessageUtils.h";
+using struct OverrideMapping from "mozilla/chrome/RegistryMessageUtils.h";
+using base::ChildPrivileges from "base/process_util.h";
+using struct IPC::Permission from "mozilla/net/NeckoMessageUtils.h";
+using class IPC::Principal from "mozilla/dom/PermissionMessageUtils.h";
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using mozilla::dom::AudioChannelType from "AudioChannelCommon.h";
+using mozilla::dom::AudioChannelState from "AudioChannelCommon.h";
+using mozilla::dom::NativeThreadId from "mozilla/dom/TabMessageUtils.h";
+using mozilla::hal::ProcessPriority from "mozilla/HalTypes.h";
+using gfxIntSize from "nsSize.h";
 
 namespace mozilla {
 namespace dom {
 
 struct FontListEntry {
     nsString  familyName;
     nsString  faceName;
     nsCString filepath;
--- a/dom/ipc/PDocumentRenderer.ipdl
+++ b/dom/ipc/PDocumentRenderer.ipdl
@@ -2,17 +2,17 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PBrowser;
 
 include "mozilla/GfxMessageUtils.h";
 
-using nsIntSize;
+using struct nsIntSize from "nsSize.h";
 
 namespace mozilla {
 namespace ipc {
 
 protocol PDocumentRenderer
 {
   manager PBrowser;
 
--- a/dom/ipc/PTabContext.ipdlh
+++ b/dom/ipc/PTabContext.ipdlh
@@ -3,17 +3,17 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PBrowser;
 
 include "mozilla/layout/RenderFrameUtils.h";
 
-using mozilla::layout::ScrollingBehavior;
+using mozilla::layout::ScrollingBehavior from "mozilla/layout/RenderFrameUtils.h";
 
 namespace mozilla {
 namespace dom {
 
 // An IPCTabContext which corresponds to a PBrowser opened by a child when it
 // receives window.open().
 //
 // If isBrowserElement is false, this PopupIPCTabContext corresponds to an app
--- a/dom/mobilemessage/src/ipc/SmsTypes.ipdlh
+++ b/dom/mobilemessage/src/ipc/SmsTypes.ipdlh
@@ -2,21 +2,21 @@
 /* vim: set ts=2 et sw=2 tw=80: */
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this file,
  * You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include "mozilla/dom/mobilemessage/Types.h";
 include protocol PBlob;
 
-using DeliveryState;
-using DeliveryStatus;
-using MessageClass;
-using ReadState;
-using MessageType;
+using DeliveryState from "mozilla/dom/mobilemessage/Types.h";
+using DeliveryStatus from "mozilla/dom/mobilemessage/Types.h";
+using MessageClass from "mozilla/dom/mobilemessage/Types.h";
+using ReadState from "mozilla/dom/mobilemessage/Types.h";
+using MessageType from "mozilla/dom/mobilemessage/Types.h";
 
 namespace mozilla {
 namespace dom {
 namespace mobilemessage {
 
 struct SmsSegmentInfoData
 {
   int32_t segments;
--- a/dom/network/src/PTCPSocket.ipdl
+++ b/dom/network/src/PTCPSocket.ipdl
@@ -4,17 +4,17 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PNecko;
 
 include "mozilla/net/NeckoMessageUtils.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 struct TCPError {
   nsString name;
 };
 
 union SendableData {
   uint8_t[];
   nsString;
--- a/dom/plugins/ipc/PBrowserStream.ipdl
+++ b/dom/plugins/ipc/PBrowserStream.ipdl
@@ -2,21 +2,21 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PPluginInstance;
 
 include "mozilla/plugins/PluginMessageUtils.h";
 
-using mozilla::plugins::Buffer;
-using mozilla::plugins::IPCByteRanges;
+using mozilla::plugins::Buffer from "mozilla/plugins/PluginMessageUtils.h";
+using mozilla::plugins::IPCByteRanges from "mozilla/plugins/PluginMessageUtils.h";
 
-using NPError;
-using NPReason;
+using NPError from "npapi.h";
+using NPReason from "npapi.h";
 
 namespace mozilla {
 namespace plugins {
 
 /**
  * NPBrowserStream represents a NPStream sent from the browser to the plugin.
  */
 
--- a/dom/plugins/ipc/PPluginInstance.ipdl
+++ b/dom/plugins/ipc/PPluginInstance.ipdl
@@ -10,33 +10,33 @@ include protocol PBrowserStream;
 include protocol PPluginStream;
 include protocol PStreamNotify;
 include protocol PPluginSurface;
 
 include "mozilla/plugins/PluginMessageUtils.h";
 include "ipc/nsGUIEventIPC.h";
 include "gfxTypes.h";
 
-using NPError;
-using NPRemoteWindow;
-using NPRemoteEvent;
-using NPRect;
-using NPImageFormat;
-using NPNURLVariable;
-using NPCoordinateSpace;
-using NPNVariable;
-using mozilla::plugins::NativeWindowHandle;
-using gfxSurfaceType;
-using gfxIntSize;
-using mozilla::null_t;
-using mozilla::plugins::WindowsSharedMemoryHandle;
-using mozilla::plugins::DXGISharedSurfaceHandle;
-using mozilla::CrossProcessMutexHandle;
-using SurfaceDescriptorX11;
-using nsIntRect;
+using NPError from "npapi.h";
+using struct mozilla::plugins::NPRemoteWindow from "mozilla/plugins/PluginMessageUtils.h";
+using struct mozilla::plugins::NPRemoteEvent from "mozilla/plugins/PluginMessageUtils.h";
+using NPRect from "npapi.h";
+using NPImageFormat from "npapi.h";
+using NPNURLVariable from "npapi.h";
+using NPCoordinateSpace from "npapi.h";
+using NPNVariable from "npapi.h";
+using mozilla::plugins::NativeWindowHandle from "mozilla/plugins/PluginMessageUtils.h";
+using gfxSurfaceType from "gfxTypes.h";
+using gfxIntSize from "nsSize.h";
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
+using mozilla::plugins::WindowsSharedMemoryHandle from "mozilla/plugins/PluginMessageUtils.h";
+using mozilla::plugins::DXGISharedSurfaceHandle from "mozilla/plugins/PluginMessageUtils.h";
+using mozilla::CrossProcessMutexHandle from "mozilla/ipc/CrossProcessMutex.h";
+using struct SurfaceDescriptorX11 from "gfxipc/ShadowLayerUtils.h";
+using struct nsIntRect from "nsRect.h";
 
 namespace mozilla {
 namespace plugins {
 
 struct IOSurfaceDescriptor {
   uint32_t surfaceId;
   double contentsScaleFactor;
 };
--- a/dom/plugins/ipc/PPluginModule.ipdl
+++ b/dom/plugins/ipc/PPluginModule.ipdl
@@ -7,21 +7,21 @@ include protocol PPluginIdentifier;
 include protocol PPluginInstance;
 include protocol PPluginScriptableObject;
 include protocol PCrashReporter;
 
 include "npapi.h";
 include "mozilla/plugins/PluginMessageUtils.h";
 include "mozilla/dom/TabMessageUtils.h";
 
-using NPError;
-using NPNVariable;
-using mozilla::dom::NativeThreadId;
-using mac_plugin_interposing::NSCursorInfo;
-using nsID;
+using NPError from "npapi.h";
+using NPNVariable from "npapi.h";
+using mozilla::dom::NativeThreadId from "mozilla/dom/TabMessageUtils.h";
+using class mac_plugin_interposing::NSCursorInfo from "mozilla/plugins/PluginMessageUtils.h";
+using struct nsID from "nsID.h";
 
 namespace mozilla {
 namespace plugins {
 
 intr protocol PPluginModule
 {
   manages PPluginInstance;
   manages PPluginIdentifier;
--- a/dom/plugins/ipc/PPluginScriptableObject.ipdl
+++ b/dom/plugins/ipc/PPluginScriptableObject.ipdl
@@ -5,18 +5,18 @@
 
 include protocol PPluginInstance;
 include protocol PPluginIdentifier;
 
 include "npapi.h";
 include "npruntime.h";
 include "mozilla/plugins/PluginMessageUtils.h";
 
-using mozilla::void_t;
-using mozilla::null_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace plugins {
 
 union Variant {
   void_t;
   null_t;
   bool;
--- a/dom/plugins/ipc/PPluginStream.ipdl
+++ b/dom/plugins/ipc/PPluginStream.ipdl
@@ -2,19 +2,19 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PPluginInstance;
 
 include "mozilla/plugins/PluginMessageUtils.h";
 
-using mozilla::plugins::Buffer;
-using NPError;
-using NPReason;
+using mozilla::plugins::Buffer from "mozilla/plugins/PluginMessageUtils.h";
+using NPError from "npapi.h";
+using NPReason from "npapi.h";
 
 namespace mozilla {
 namespace plugins {
 
 /**
  * PPluginStream represents an NPStream sent from the plugin to the browser.
  */
 
--- a/dom/plugins/ipc/PStreamNotify.ipdl
+++ b/dom/plugins/ipc/PStreamNotify.ipdl
@@ -3,17 +3,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 
 include protocol PPluginInstance;
 
 include "npapi.h";
 
-using NPReason;
+using NPReason from "npapi.h";
 
 namespace mozilla {
 namespace plugins {
 
 intr protocol PStreamNotify
 {
   manager PPluginInstance;
 
--- a/gfx/layers/ipc/LayersMessages.ipdlh
+++ b/gfx/layers/ipc/LayersMessages.ipdlh
@@ -16,31 +16,31 @@ include "mozilla/WidgetUtils.h";
 include "mozilla/TimeStamp.h";
 include "mozilla/dom/ScreenOrientation.h";
 include "nsCSSProperty.h";
 include "gfxipc/ShadowLayerUtils.h";
 include "mozilla/GfxMessageUtils.h";
 include "ImageLayers.h";
 include "mozilla/layers/CompositorTypes.h";
 
-using gfxPoint3D;
-using nscoord;
-using nsRect;
-using nsPoint;
-using mozilla::TimeDuration;
-using mozilla::TimeStamp;
-using mozilla::ScreenRotation;
-using nsCSSProperty;
-using mozilla::dom::ScreenOrientation;
-using mozilla::layers::TextureInfo;
-using mozilla::LayerMargin;
-using mozilla::LayerPoint;
-using mozilla::LayerRect;
-using mozilla::layers::ScaleMode;
-using mozilla::layers::DiagnosticTypes;
+using struct gfxPoint3D from "gfxPoint3D.h";
+using nscoord from "nsCoord.h";
+using struct nsRect from "nsRect.h";
+using struct nsPoint from "nsPoint.h";
+using class mozilla::TimeDuration from "mozilla/TimeStamp.h";
+using class mozilla::TimeStamp from "mozilla/TimeStamp.h";
+using mozilla::ScreenRotation from "mozilla/WidgetUtils.h";
+using nsCSSProperty from "nsCSSProperty.h";
+using mozilla::dom::ScreenOrientation from "mozilla/dom/ScreenOrientation.h";
+using struct mozilla::layers::TextureInfo from "mozilla/layers/CompositorTypes.h";
+using mozilla::LayerMargin from "Units.h";
+using mozilla::LayerPoint from "Units.h";
+using mozilla::LayerRect from "Units.h";
+using mozilla::layers::ScaleMode from "mozilla/layers/LayersTypes.h";
+using mozilla::layers::DiagnosticTypes from "mozilla/layers/CompositorTypes.h";
 
 namespace mozilla {
 namespace layers {
 
 struct TargetConfig {
   nsIntRect naturalBounds;
   ScreenRotation rotation;
   nsIntRect clientBounds;
--- a/gfx/layers/ipc/LayersSurfaces.ipdlh
+++ b/gfx/layers/ipc/LayersSurfaces.ipdlh
@@ -3,35 +3,35 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PGrallocBuffer;
 
 include "gfxipc/ShadowLayerUtils.h";
 include "mozilla/gfx/Types.h";
 include "nsRegion.h";
 
-using gfx3DMatrix;
-using gfxIntSize;
-using gfxPoint;
-using gfxRGBA;
-using nsIntPoint;
-using nsIntRect;
-using nsIntRegion;
-using nsIntSize;
-using mozilla::GraphicsFilterType;
-using mozilla::layers::FrameMetrics;
-using mozilla::layers::MagicGrallocBufferHandle;
-using mozilla::layers::SurfaceDescriptorX11;
-using mozilla::null_t;
-using mozilla::WindowsHandle;
-using mozilla::gl::SharedTextureHandle;
-using mozilla::gl::SharedTextureShareType;
-using mozilla::gfx::SurfaceStreamHandle;
-using mozilla::gfx::SurfaceFormat;
-using mozilla::gfx::IntSize;
+using class gfx3DMatrix from "gfx3DMatrix.h";
+using gfxIntSize from "nsSize.h";
+using struct gfxPoint from "gfxPoint.h";
+using struct gfxRGBA from "gfxColor.h";
+using struct nsIntPoint from "nsPoint.h";
+using struct nsIntRect from "nsRect.h";
+using nsIntRegion from "nsRegion.h";
+using struct nsIntSize from "nsSize.h";
+using mozilla::GraphicsFilterType from "mozilla/GfxMessageUtils.h";
+using struct mozilla::layers::FrameMetrics from "FrameMetrics.h";
+using struct mozilla::layers::MagicGrallocBufferHandle from "gfxipc/ShadowLayerUtils.h";
+using struct mozilla::layers::SurfaceDescriptorX11 from "gfxipc/ShadowLayerUtils.h";
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
+using mozilla::WindowsHandle from "ipc/IPCMessageUtils.h";
+using mozilla::gl::SharedTextureHandle from "GLContextTypes.h";
+using mozilla::gl::SharedTextureShareType from "GLContextTypes.h";
+using mozilla::gfx::SurfaceStreamHandle from "SurfaceTypes.h";
+using mozilla::gfx::SurfaceFormat from "mozilla/gfx/Types.h";
+using mozilla::gfx::IntSize from "mozilla/gfx/Point.h";
 
 namespace mozilla {
 namespace layers {
 
 union MaybeMagicGrallocBufferHandle {
   MagicGrallocBufferHandle;
   null_t;
 };
--- a/gfx/layers/ipc/PCompositor.ipdl
+++ b/gfx/layers/ipc/PCompositor.ipdl
@@ -6,19 +6,19 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include LayersSurfaces;
 include protocol PGrallocBuffer;
 include protocol PLayerTransaction;
 include "mozilla/layers/CompositorTypes.h";
 include "mozilla/GfxMessageUtils.h";
 
-using mozilla::null_t;
-using mozilla::layers::TextureFactoryIdentifier;
-using mozilla::layers::LayersBackend;
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
+using struct mozilla::layers::TextureFactoryIdentifier from "mozilla/layers/CompositorTypes.h";
+using mozilla::layers::LayersBackend from "mozilla/layers/LayersTypes.h";
 
 namespace mozilla {
 namespace layers {
 
 
 /**
  * The PCompositor protocol is used to manage communication between
  * the main thread and the compositor thread context. It's primary
--- a/gfx/layers/ipc/PImageBridge.ipdl
+++ b/gfx/layers/ipc/PImageBridge.ipdl
@@ -7,17 +7,17 @@ include LayersSurfaces;
 include LayersMessages;
 include protocol PGrallocBuffer;
 include protocol PCompositable;
 include ProtocolTypes;
 
 include "mozilla/layers/CompositorTypes.h";
 include "mozilla/GfxMessageUtils.h";
 
-using mozilla::layers::TextureInfo;
+using struct mozilla::layers::TextureInfo from "mozilla/layers/CompositorTypes.h";
 
 namespace mozilla {
 namespace layers {
 
 /**
  * The PImageBridge protocol is used to allow isolated threads or processes to push
  * frames directly to the compositor thread/process without relying on the main thread
  * which might be too busy dealing with content script.
--- a/gfx/layers/ipc/PLayerTransaction.ipdl
+++ b/gfx/layers/ipc/PLayerTransaction.ipdl
@@ -14,17 +14,17 @@ include protocol PLayer;
 include protocol PRenderFrame;
 
 include "mozilla/WidgetUtils.h";
 include "mozilla/dom/ScreenOrientation.h";
 include "nsCSSProperty.h";
 include "gfxipc/ShadowLayerUtils.h";
 include "mozilla/GfxMessageUtils.h";
 
-using mozilla::layers::TextureInfo;
+using struct mozilla::layers::TextureInfo from "mozilla/layers/CompositorTypes.h";
 
 /**
  * The layers protocol is spoken between thread contexts that manage
  * layer (sub)trees.  The protocol comprises atomically publishing
  * layer subtrees to a "shadow" thread context (which grafts the
  * subtree into its own tree), and atomically updating a published
  * subtree.  ("Atomic" in this sense is wrt painting.)
  */
--- a/hal/sandbox/PHal.ipdl
+++ b/hal/sandbox/PHal.ipdl
@@ -7,31 +7,31 @@
 include protocol PContent;
 include protocol PBrowser;
 include "prtime.h";
 include "mozilla/HalSensor.h";
 include "mozilla/HalTypes.h";
 include "mozilla/dom/ScreenOrientation.h";
 include "nsRect.h";
 
-using mozilla::dom::ScreenOrientation;
-using mozilla::hal::FlashMode;
-using mozilla::hal::LightType;
-using mozilla::hal::LightMode;
-using mozilla::hal::SensorType;
-using mozilla::hal::SensorAccuracyType;
-using mozilla::hal::WakeLockControl;
-using mozilla::hal::SwitchState;
-using mozilla::hal::SwitchDevice;
-using mozilla::hal::ProcessPriority;
-using nsIntRect;
-using PRTime;
-using mozilla::hal::FMRadioCountry;
-using mozilla::hal::FMRadioOperation;
-using mozilla::hal::FMRadioOperationStatus;
+using mozilla::dom::ScreenOrientation from "mozilla/dom/ScreenOrientation.h";
+using mozilla::hal::FlashMode from "mozilla/HalTypes.h";
+using mozilla::hal::LightType from "mozilla/HalTypes.h";
+using mozilla::hal::LightMode from "mozilla/HalTypes.h";
+using mozilla::hal::SensorType from "mozilla/HalSensor.h";
+using mozilla::hal::SensorAccuracyType from "mozilla/HalSensor.h";
+using mozilla::hal::WakeLockControl from "mozilla/HalTypes.h";
+using mozilla::hal::SwitchState from "mozilla/HalTypes.h";
+using mozilla::hal::SwitchDevice from "mozilla/HalTypes.h";
+using mozilla::hal::ProcessPriority from "mozilla/HalTypes.h";
+using struct nsIntRect from "nsRect.h";
+using PRTime from "prtime.h";
+using mozilla::hal::FMRadioCountry from "mozilla/HalTypes.h";
+using mozilla::hal::FMRadioOperation from "mozilla/HalTypes.h";
+using mozilla::hal::FMRadioOperationStatus from "mozilla/HalTypes.h";
 
 namespace mozilla {
 
 namespace hal {
 struct BatteryInformation {
   double level;
   bool   charging;
   double remainingTime;
--- a/ipc/glue/InputStreamParams.ipdlh
+++ b/ipc/glue/InputStreamParams.ipdlh
@@ -1,15 +1,15 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include "ipc/IPCMessageUtils.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 include protocol PBlob;
 
 namespace mozilla {
 namespace ipc {
 
 struct StringInputStreamParams
 {
   nsCString data;
--- a/ipc/glue/URIParams.ipdlh
+++ b/ipc/glue/URIParams.ipdlh
@@ -1,15 +1,15 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include "ipc/IPCMessageUtils.h";
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace ipc {
 
 struct SimpleURIParams
 {
   nsCString scheme;
   nsCString path;
--- a/ipc/ipdl/test/cxx/PTestDataStructuresCommon.ipdlh
+++ b/ipc/ipdl/test/cxx/PTestDataStructuresCommon.ipdlh
@@ -1,12 +1,12 @@
 include protocol PTestDataStructuresSub;
 
-using mozilla::null_t;
-using nsIntRegion;
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
+using nsIntRegion from "nsRegion.h";
 
 namespace mozilla {
 namespace _foo {
 
 union IntDouble {
     int;
     double;
 };
--- a/ipc/ipdl/test/cxx/PTestJSON.ipdl
+++ b/ipc/ipdl/test/cxx/PTestJSON.ipdl
@@ -1,12 +1,12 @@
 include protocol PTestHandle;
 
-using mozilla::void_t;
-using mozilla::null_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using struct mozilla::null_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace _ipdltest {
 
 union Key {
 //    int;
 //    double;
     nsString;
--- a/ipc/ipdl/test/ipdl/error/shmem.ipdl
+++ b/ipc/ipdl/test/ipdl/error/shmem.ipdl
@@ -1,5 +1,5 @@
-using mozilla::ipc::Shmem;      // redeclaration
+using class mozilla::ipc::Shmem from "mozilla/ipc/Shmem.h";      // redeclaration
 
 protocol shmem {
 child: Msg(Shmem s);
 };
--- a/ipc/ipdl/test/ipdl/ok/header.ipdlh
+++ b/ipc/ipdl/test/ipdl/ok/header.ipdlh
@@ -1,12 +1,12 @@
 include "foo.h";
 
-using foo;
-using bar::baz;
+using foo from "foo.h";
+using bar::baz from "foo.h";
 
 struct Outer { };
 
 namespace a { struct Inner1 { }; }
 
 namespace b { struct Inner2 { }; }
 
 namespace c {
--- a/ipc/ipdl/test/ipdl/ok/multipleUsingCxxTypes.ipdl
+++ b/ipc/ipdl/test/ipdl/ok/multipleUsingCxxTypes.ipdl
@@ -1,7 +1,7 @@
-using mozilla::void_t;
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 protocol multipleUsingCxxTypes {
 child:
     Msg(void_t foo);
 };
--- a/js/ipc/JavaScriptTypes.ipdlh
+++ b/js/ipc/JavaScriptTypes.ipdlh
@@ -2,17 +2,17 @@
  * vim: set ts=4 sw=4 et tw=80:
  *
  * This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include DOMTypes;
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace jsipc {
 
 struct JSIID
 {
     uint32_t m0;
     uint16_t m1;
--- a/js/ipc/PJavaScript.ipdl
+++ b/js/ipc/PJavaScript.ipdl
@@ -4,17 +4,17 @@
  * This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PContent;
 include DOMTypes;
 include JavaScriptTypes;
 
-using mozilla::void_t;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
 
 namespace mozilla {
 namespace jsipc {
 
 intr protocol PJavaScript
 {
     manager PContent;
 
--- a/layout/ipc/PRenderFrame.ipdl
+++ b/layout/ipc/PRenderFrame.ipdl
@@ -5,17 +5,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PBrowser;
 include protocol PLayerTransaction;
 
 include "nsRegion.h";
 
-using nsRegion;
+using class nsRegion from "nsRegion.h";
 
 namespace mozilla {
 namespace layout {
 
 /**
  * PRenderFrame (in the layout sense of "frame") represents one web
  * "page".  It's used to graft content processes' layer trees into
  * chrome's rendering path.  The lifetime of a PRenderFrame is tied to
--- a/netwerk/cookie/PCookieService.ipdl
+++ b/netwerk/cookie/PCookieService.ipdl
@@ -5,17 +5,17 @@
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PNecko;
 include URIParams;
 
 include "SerializedLoadContext.h";
 
-using IPC::SerializedLoadContext;
+using class IPC::SerializedLoadContext from "SerializedLoadContext.h";
 
 namespace mozilla {
 namespace net {
 
 /**
  * PCookieService
  *
  * Provides IPDL methods for setting and getting cookies. These are stored on
--- a/netwerk/ipc/NeckoChannelParams.ipdlh
+++ b/netwerk/ipc/NeckoChannelParams.ipdlh
@@ -4,19 +4,19 @@
 /* This Source Code Form is subject to the terms of the Mozilla Public
  * License, v. 2.0. If a copy of the MPL was not distributed with this
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include URIParams;
 include InputStreamParams;
 include "mozilla/net/PHttpChannelParams.h";
 
-using mozilla::void_t;
-using RequestHeaderTuples;
-using nsHttpAtom;
+using struct mozilla::void_t from "ipc/IPCMessageUtils.h";
+using RequestHeaderTuples from "mozilla/net/PHttpChannelParams.h";
+using struct nsHttpAtom from "nsHttp.h";
 
 namespace mozilla {
 namespace net {
 
 //-----------------------------------------------------------------------------
 // HTTP IPDL structs
 //-----------------------------------------------------------------------------
 
--- a/netwerk/ipc/PNecko.ipdl
+++ b/netwerk/ipc/PNecko.ipdl
@@ -19,17 +19,17 @@ include protocol PBlob; //FIXME: bug #79
 
 include protocol PRtspController;
 include URIParams;
 include InputStreamParams;
 include NeckoChannelParams;
 
 include "SerializedLoadContext.h";
 
-using IPC::SerializedLoadContext;
+using class IPC::SerializedLoadContext from "SerializedLoadContext.h";
 
 namespace mozilla {
 namespace net {
 
 //-------------------------------------------------------------------
 sync protocol PNecko
 {
   manager PContent;
--- a/netwerk/protocol/ftp/PFTPChannel.ipdl
+++ b/netwerk/protocol/ftp/PFTPChannel.ipdl
@@ -10,17 +10,17 @@ include InputStreamParams;
 include URIParams;
 
 //FIXME: bug #792908 (NeckoChannelParams already included by PNecko)
 include NeckoChannelParams;
 include protocol PBlob; //FIXME: bug #792908
 
 include "SerializedLoadContext.h";
 
-using PRTime;
+using PRTime from "prtime.h";
 
 namespace mozilla {
 namespace net {
 
 async protocol PFTPChannel
 {
   manager PNecko;
 
--- a/netwerk/protocol/http/PHttpChannel.ipdl
+++ b/netwerk/protocol/http/PHttpChannel.ipdl
@@ -11,21 +11,21 @@ include URIParams;
 
 include protocol PBlob; //FIXME: bug #792908
 
 include "mozilla/net/PHttpChannelParams.h";
 include "mozilla/net/NeckoMessageUtils.h";
 include "mozilla/net/DNS.h";
 include "prio.h";
 
-using RequestHeaderTuples;
-using nsHttpHeaderArray;
-using nsHttpResponseHead;
-using nsHttpAtom;
-using mozilla::net::NetAddr;
+using RequestHeaderTuples from "mozilla/net/PHttpChannelParams.h";
+using class nsHttpHeaderArray from "nsHttpHeaderArray.h";
+using class nsHttpResponseHead from "nsHttpResponseHead.h";
+using struct nsHttpAtom from "nsHttp.h";
+using mozilla::net::NetAddr from "mozilla/net/DNS.h";
 
 namespace mozilla {
 namespace net {
 
 //-------------------------------------------------------------------
 protocol PHttpChannel
 {
   manager PNecko;
--- a/netwerk/protocol/websocket/PWebSocket.ipdl
+++ b/netwerk/protocol/websocket/PWebSocket.ipdl
@@ -8,17 +8,17 @@
 include protocol PNecko;
 include protocol PBrowser;
 include InputStreamParams;
 include URIParams;
 
 include protocol PBlob; //FIXME: bug #792908
 
 include "SerializedLoadContext.h";
-using IPC::SerializedLoadContext;
+using class IPC::SerializedLoadContext from "SerializedLoadContext.h";
 
 namespace mozilla {
 namespace net {
 
 async protocol PWebSocket
 {
   manager PNecko;
 
--- a/netwerk/protocol/wyciwyg/PWyciwygChannel.ipdl
+++ b/netwerk/protocol/wyciwyg/PWyciwygChannel.ipdl
@@ -3,17 +3,17 @@
  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
 
 include protocol PNecko;
 include protocol PBrowser;
 include URIParams;
 
 include "SerializedLoadContext.h";
 
-using IPC::SerializedLoadContext;
+using class IPC::SerializedLoadContext from "SerializedLoadContext.h";
 
 namespace mozilla {
 namespace net {
 
 //-------------------------------------------------------------------
 protocol PWyciwygChannel
 {
   manager PNecko;