Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan
authorBirunthan Mohanathas <birunthan@mohanathas.com>
Tue, 04 Aug 2015 16:17:36 -0700
changeset 256266 65f68419dbfcefe79421876936e62c7b0a58a9df
parent 256265 2a0e43caef9b8edbf03fc20d1a220c63f0164f5d
child 256267 c8c81a51b3fcd57307f74deb41b58395517a3dd5
push id14432
push usercbook@mozilla.com
push dateWed, 05 Aug 2015 11:36:57 +0000
treeherderfx-team@f5b12abd434a [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersehsan
bugs1191100
milestone42.0a1
Bug 1191100 - Remove XPIDL signature comments in .cpp files. r=ehsan Comment-only so DONTBUILD.
docshell/base/nsDefaultURIFixup.cpp
docshell/base/nsDocShell.cpp
docshell/base/nsDocShellEnumerator.cpp
docshell/base/nsDocShellLoadInfo.cpp
dom/audiochannel/AudioChannelAgent.cpp
dom/base/DOMException.cpp
dom/base/NodeIterator.cpp
dom/base/ProcessGlobal.cpp
dom/base/TreeWalker.cpp
dom/base/nsGlobalWindowCommands.cpp
dom/base/nsInProcessTabChildGlobal.cpp
dom/base/nsJSEnvironment.cpp
dom/base/nsOpenURIInFrameParams.cpp
dom/base/nsXMLHttpRequest.cpp
dom/bindings/Exceptions.cpp
dom/canvas/WebGLContext.cpp
dom/events/FocusEvent.cpp
dom/events/SimpleGestureEvent.cpp
dom/gamepad/GamepadServiceTest.cpp
dom/html/HTMLMediaElement.cpp
dom/html/UndoManager.cpp
dom/html/nsHTMLDocument.cpp
dom/ipc/TabChild.cpp
dom/svg/SVGGradientElement.cpp
dom/svg/SVGSVGElement.cpp
dom/svg/nsSVGElement.cpp
dom/system/gonk/nsVolumeMountLock.cpp
dom/system/gonk/nsVolumeStat.cpp
dom/xul/nsXULControllers.cpp
dom/xul/templates/nsXULTreeBuilder.cpp
editor/composer/nsEditorSpellCheck.cpp
editor/libeditor/nsEditor.cpp
editor/txmgr/nsTransactionList.cpp
embedding/components/printingui/mac/nsPrintProgress.cpp
embedding/components/printingui/mac/nsPrintProgressParams.cpp
embedding/components/printingui/unixshared/nsPrintProgress.cpp
embedding/components/printingui/unixshared/nsPrintProgressParams.cpp
embedding/components/printingui/unixshared/nsPrintingPromptService.cpp
embedding/components/printingui/win/nsPrintProgress.cpp
embedding/components/printingui/win/nsPrintProgressParams.cpp
embedding/components/printingui/win/nsPrintingPromptService.cpp
embedding/components/webbrowserpersist/nsWebBrowserPersist.cpp
extensions/spellcheck/hunspell/src/mozHunspell.cpp
extensions/spellcheck/src/mozEnglishWordUtils.cpp
extensions/spellcheck/src/mozGenericWordUtils.cpp
extensions/spellcheck/src/mozPersonalDictionary.cpp
extensions/spellcheck/src/mozSpellI18NManager.cpp
image/RasterImage.cpp
image/SVGDocumentWrapper.cpp
image/VectorImage.cpp
image/encoders/jpeg/nsJPEGEncoder.cpp
image/encoders/png/nsPNGEncoder.cpp
image/imgLoader.cpp
image/imgRequest.cpp
image/imgRequestProxy.cpp
intl/lwbrk/nsSemanticUnitScanner.cpp
intl/strres/nsStringBundle.cpp
intl/uconv/nsScriptableUConv.cpp
js/xpconnect/loader/mozJSComponentLoader.cpp
js/xpconnect/public/xpc_map_end.h
js/xpconnect/src/XPCCallContext.cpp
js/xpconnect/src/XPCComponents.cpp
js/xpconnect/src/XPCJSID.cpp
js/xpconnect/src/XPCRuntimeService.cpp
js/xpconnect/src/XPCShellImpl.cpp
js/xpconnect/src/XPCVariant.cpp
js/xpconnect/src/XPCWrappedJS.cpp
js/xpconnect/src/XPCWrappedJSClass.cpp
js/xpconnect/src/XPCWrappedNative.cpp
js/xpconnect/src/nsXPConnect.cpp
js/xpconnect/tests/components/native/xpctest_params.cpp
js/xpconnect/tests/components/native/xpctest_returncode.cpp
layout/base/nsDocumentViewer.cpp
layout/inspector/nsFontFace.cpp
layout/inspector/nsFontFaceList.cpp
layout/printing/nsPrintEngine.cpp
layout/xul/ScrollBoxObject.cpp
layout/xul/nsImageBoxFrame.cpp
modules/libjar/zipwriter/nsDeflateConverter.cpp
modules/libjar/zipwriter/nsZipDataStream.cpp
modules/libjar/zipwriter/nsZipHeader.cpp
modules/libjar/zipwriter/nsZipWriter.cpp
modules/libpref/nsPrefBranch.cpp
netwerk/base/SchedulingContextService.cpp
netwerk/base/nsLoadGroup.cpp
netwerk/base/nsMIMEInputStream.cpp
netwerk/base/nsNetAddr.cpp
netwerk/base/nsSocketTransport2.cpp
netwerk/base/nsStreamLoader.cpp
netwerk/base/nsUDPSocket.cpp
netwerk/base/nsUnicharStreamLoader.cpp
netwerk/cache/nsDiskCacheDevice.cpp
netwerk/dns/nsIDNService.cpp
netwerk/protocol/http/HttpChannelChild.cpp
netwerk/protocol/rtsp/controller/RtspMetaData.cpp
netwerk/protocol/wyciwyg/WyciwygChannelChild.cpp
netwerk/sctp/src/netinet/sctp_pcb.h
security/manager/pki/nsASN1Tree.cpp
security/manager/pki/nsNSSDialogs.cpp
security/manager/pki/nsPKIParamBlock.cpp
security/manager/ssl/TransportSecurityInfo.cpp
security/manager/ssl/nsCertTree.cpp
security/manager/ssl/nsCryptoHash.cpp
security/manager/ssl/nsKeyModule.cpp
security/manager/ssl/nsNSSASN1Object.cpp
security/manager/ssl/nsNSSCertValidity.cpp
security/manager/ssl/nsNSSCertificateDB.cpp
security/manager/ssl/nsPK11TokenDB.cpp
security/manager/ssl/nsPKCS11Slot.cpp
security/manager/ssl/nsSDR.cpp
toolkit/components/diskspacewatcher/DiskSpaceWatcher.cpp
toolkit/components/find/nsFindService.cpp
toolkit/components/perfmonitoring/nsPerformanceStats.cpp
toolkit/components/places/nsNavHistoryQuery.cpp
uriloader/exthandler/nsDBusHandlerApp.cpp
uriloader/exthandler/nsLocalHandlerApp.cpp
widget/GfxInfoBase.cpp
widget/GfxInfoX11.cpp
widget/android/AndroidBridge.cpp
widget/android/GfxInfo.cpp
widget/android/nsIMEPicker.cpp
widget/gonk/GfxInfo.cpp
widget/gtk/nsColorPicker.cpp
widget/gtk/nsDeviceContextSpecG.cpp
widget/gtk/nsPrintOptionsGTK.cpp
widget/gtk/nsPrintSettingsGTK.cpp
widget/nsColorPickerProxy.cpp
widget/nsFilePickerProxy.cpp
widget/nsPrintSettingsImpl.cpp
widget/qt/GfxInfo.cpp
widget/uikit/GfxInfo.cpp
widget/windows/GfxInfo.cpp
widget/windows/JumpListBuilder.cpp
widget/windows/JumpListItem.cpp
widget/windows/WinTaskbar.cpp
widget/windows/nsDeviceContextSpecWin.cpp
widget/windows/nsPrintOptionsWin.cpp
widget/windows/nsPrintSettingsWin.cpp
xpcom/base/nsMacUtilsImpl.cpp
xpcom/ds/nsVariant.cpp
xpcom/io/nsLocalFileWin.cpp
xpcom/io/nsMultiplexInputStream.cpp
xpcom/io/nsScriptableBase64Encoder.cpp
xpcom/reflect/xptinfo/xptiInterfaceInfo.cpp
xpcom/reflect/xptinfo/xptiInterfaceInfoManager.cpp
xpcom/threads/TimerThread.cpp
xpfe/components/windowds/nsWindowDataSource.cpp
--- a/docshell/base/nsDefaultURIFixup.cpp
+++ b/docshell/base/nsDefaultURIFixup.cpp
@@ -42,17 +42,16 @@ static bool sFixupKeywords = true;
 nsDefaultURIFixup::nsDefaultURIFixup()
 {
 }
 
 nsDefaultURIFixup::~nsDefaultURIFixup()
 {
 }
 
-/* nsIURI createExposableURI (in nsIURI aURI); */
 NS_IMETHODIMP
 nsDefaultURIFixup::CreateExposableURI(nsIURI* aURI, nsIURI** aReturn)
 {
   NS_ENSURE_ARG_POINTER(aURI);
   NS_ENSURE_ARG_POINTER(aReturn);
 
   bool isWyciwyg = false;
   aURI->SchemeIs("wyciwyg", &isWyciwyg);
@@ -106,17 +105,16 @@ nsDefaultURIFixup::CreateExposableURI(ns
   if (Preferences::GetBool("browser.fixup.hide_user_pass", true)) {
     uri->SetUserPass(EmptyCString());
   }
 
   uri.forget(aReturn);
   return NS_OK;
 }
 
-/* nsIURI createFixupURI (in nsAUTF8String aURIText, in unsigned long aFixupFlags); */
 NS_IMETHODIMP
 nsDefaultURIFixup::CreateFixupURI(const nsACString& aStringURI,
                                   uint32_t aFixupFlags,
                                   nsIInputStream** aPostData, nsIURI** aURI)
 {
   nsCOMPtr<nsIURIFixupInfo> fixupInfo;
   nsresult rv = GetFixupURIInfo(aStringURI, aFixupFlags, aPostData,
                                 getter_AddRefs(fixupInfo));
--- a/docshell/base/nsDocShell.cpp
+++ b/docshell/base/nsDocShell.cpp
@@ -1983,17 +1983,16 @@ NS_IMETHODIMP
 nsDocShell::GetChromeEventHandler(nsIDOMEventTarget** aChromeEventHandler)
 {
   NS_ENSURE_ARG_POINTER(aChromeEventHandler);
   nsCOMPtr<EventTarget> handler = mChromeEventHandler;
   handler.forget(aChromeEventHandler);
   return NS_OK;
 }
 
-/* void setCurrentURI (in nsIURI uri); */
 NS_IMETHODIMP
 nsDocShell::SetCurrentURI(nsIURI* aURI)
 {
   // Note that securityUI will set STATE_IS_INSECURE, even if
   // the scheme of |aURI| is "https".
   SetCurrentURI(aURI, nullptr, true, 0);
   return NS_OK;
 }
@@ -7113,17 +7112,16 @@ nsDocShell::Embed(nsIContentViewer* aCon
 
   if (!updateHistory) {
     SetLayoutHistoryState(nullptr);
   }
 
   return NS_OK;
 }
 
-/* void setIsPrinting (in boolean aIsPrinting); */
 NS_IMETHODIMP
 nsDocShell::SetIsPrinting(bool aIsPrinting)
 {
   mIsPrintingOrPP = aIsPrinting;
   return NS_OK;
 }
 
 //*****************************************************************************
@@ -12803,17 +12801,16 @@ nsDocShell::EnsureFind()
 bool
 nsDocShell::IsFrame()
 {
   nsCOMPtr<nsIDocShellTreeItem> parent;
   GetSameTypeParent(getter_AddRefs(parent));
   return !!parent;
 }
 
-/* boolean IsBeingDestroyed (); */
 NS_IMETHODIMP
 nsDocShell::IsBeingDestroyed(bool* aDoomed)
 {
   NS_ENSURE_ARG(aDoomed);
   *aDoomed = mIsBeingDestroyed;
   return NS_OK;
 }
 
--- a/docshell/base/nsDocShellEnumerator.cpp
+++ b/docshell/base/nsDocShellEnumerator.cpp
@@ -18,17 +18,16 @@ nsDocShellEnumerator::nsDocShellEnumerat
 }
 
 nsDocShellEnumerator::~nsDocShellEnumerator()
 {
 }
 
 NS_IMPL_ISUPPORTS(nsDocShellEnumerator, nsISimpleEnumerator)
 
-/* nsISupports getNext (); */
 NS_IMETHODIMP
 nsDocShellEnumerator::GetNext(nsISupports** aResult)
 {
   NS_ENSURE_ARG_POINTER(aResult);
   *aResult = nullptr;
 
   nsresult rv = EnsureDocShellArray();
   if (NS_FAILED(rv)) {
@@ -40,17 +39,16 @@ nsDocShellEnumerator::GetNext(nsISupport
   }
 
   // post-increment is important here
   nsCOMPtr<nsISupports> item = do_QueryReferent(mItemArray[mCurIndex++], &rv);
   item.forget(aResult);
   return rv;
 }
 
-/* boolean hasMoreElements (); */
 NS_IMETHODIMP
 nsDocShellEnumerator::HasMoreElements(bool* aResult)
 {
   NS_ENSURE_ARG_POINTER(aResult);
   *aResult = false;
 
   nsresult rv = EnsureDocShellArray();
   if (NS_FAILED(rv)) {
--- a/docshell/base/nsDocShellLoadInfo.cpp
+++ b/docshell/base/nsDocShellLoadInfo.cpp
@@ -160,17 +160,16 @@ nsDocShellLoadInfo::GetPostDataStream(ns
 
 NS_IMETHODIMP
 nsDocShellLoadInfo::SetPostDataStream(nsIInputStream* aStream)
 {
   mPostDataStream = aStream;
   return NS_OK;
 }
 
-/* attribute nsIInputStream headersStream; */
 NS_IMETHODIMP
 nsDocShellLoadInfo::GetHeadersStream(nsIInputStream** aHeadersStream)
 {
   NS_ENSURE_ARG_POINTER(aHeadersStream);
   *aHeadersStream = mHeadersStream;
   NS_IF_ADDREF(*aHeadersStream);
   return NS_OK;
 }
--- a/dom/audiochannel/AudioChannelAgent.cpp
+++ b/dom/audiochannel/AudioChannelAgent.cpp
@@ -48,17 +48,16 @@ AudioChannelAgent::~AudioChannelAgent()
 void
 AudioChannelAgent::Shutdown()
 {
   if (mIsRegToService) {
     NotifyStoppedPlaying();
   }
 }
 
-/* readonly attribute long audioChannelType; */
 NS_IMETHODIMP AudioChannelAgent::GetAudioChannelType(int32_t *aAudioChannelType)
 {
   *aAudioChannelType = mAudioChannelType;
   return NS_OK;
 }
 
 /* boolean init (in nsIDOMWindow window, in long channelType,
  *               in nsIAudioChannelAgentCallback callback); */
@@ -123,17 +122,16 @@ AudioChannelAgent::InitInternal(nsIDOMWi
     mWeakCallback = do_GetWeakReference(aCallback);
   } else {
     mCallback = aCallback;
   }
 
   return NS_OK;
 }
 
-/* boolean notifyStartedPlaying (); */
 NS_IMETHODIMP AudioChannelAgent::NotifyStartedPlaying(float *aVolume,
                                                       bool* aMuted)
 {
   MOZ_ASSERT(aVolume);
   MOZ_ASSERT(aMuted);
 
   nsRefPtr<AudioChannelService> service = AudioChannelService::GetOrCreate();
   if (mAudioChannelType == AUDIO_AGENT_CHANNEL_ERROR ||
@@ -145,17 +143,16 @@ NS_IMETHODIMP AudioChannelAgent::NotifyS
     static_cast<AudioChannel>(mAudioChannelType));
 
   service->GetState(mWindow, mAudioChannelType, aVolume, aMuted);
 
   mIsRegToService = true;
   return NS_OK;
 }
 
-/* void notifyStoppedPlaying (); */
 NS_IMETHODIMP AudioChannelAgent::NotifyStoppedPlaying(void)
 {
   if (mAudioChannelType == AUDIO_AGENT_CHANNEL_ERROR ||
       !mIsRegToService) {
     return NS_ERROR_FAILURE;
   }
 
   nsRefPtr<AudioChannelService> service = AudioChannelService::GetOrCreate();
--- a/dom/base/DOMException.cpp
+++ b/dom/base/DOMException.cpp
@@ -289,38 +289,35 @@ Exception::StowJSVal(JS::Value& aVp)
 
   mThrownJSVal = aVp;
   if (!mHoldingJSVal) {
     mozilla::HoldJSObjects(this);
     mHoldingJSVal = true;
   }
 }
 
-/* readonly attribute AUTF8String message; */
 NS_IMETHODIMP
 Exception::GetMessageMoz(nsACString& aMessage)
 {
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   aMessage.Assign(mMessage);
   return NS_OK;
 }
 
-/* readonly attribute nsresult result; */
 NS_IMETHODIMP
 Exception::GetResult(nsresult* aResult)
 {
   NS_ENSURE_ARG_POINTER(aResult);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   *aResult = mResult;
   return NS_OK;
 }
 
-/* readonly attribute AUTF8String name; */
 NS_IMETHODIMP
 Exception::GetName(nsACString& aName)
 {
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   if (!mName.IsEmpty()) {
     aName.Assign(mName);
   } else {
@@ -332,31 +329,29 @@ Exception::GetName(nsACString& aName)
     if (name) {
       aName.Assign(name);
     }
   }
 
   return NS_OK;
 }
 
-/* readonly attribute AString filename; */
 NS_IMETHODIMP
 Exception::GetFilename(nsAString& aFilename)
 {
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   if (mLocation) {
     return mLocation->GetFilename(aFilename);
   }
 
   aFilename.Assign(mFilename);
   return NS_OK;
 }
 
-/* readonly attribute uint32_t lineNumber; */
 NS_IMETHODIMP
 Exception::GetLineNumber(uint32_t *aLineNumber)
 {
   NS_ENSURE_ARG_POINTER(aLineNumber);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   if (mLocation) {
     int32_t lineno;
@@ -364,64 +359,59 @@ Exception::GetLineNumber(uint32_t *aLine
     *aLineNumber = lineno;
     return rv;
   }
 
   *aLineNumber = mLineNumber;
   return NS_OK;
 }
 
-/* readonly attribute uint32_t columnNumber; */
 NS_IMETHODIMP
 Exception::GetColumnNumber(uint32_t* aColumnNumber)
 {
   NS_ENSURE_ARG_POINTER(aColumnNumber);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   *aColumnNumber = 0;
   return NS_OK;
 }
 
-/* readonly attribute nsIStackFrame location; */
 NS_IMETHODIMP
 Exception::GetLocation(nsIStackFrame** aLocation)
 {
   NS_ENSURE_ARG_POINTER(aLocation);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   nsCOMPtr<nsIStackFrame> location = mLocation;
   location.forget(aLocation);
   return NS_OK;
 }
 
-/* readonly attribute nsISupports data; */
 NS_IMETHODIMP
 Exception::GetData(nsISupports** aData)
 {
   NS_ENSURE_ARG_POINTER(aData);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   nsCOMPtr<nsISupports> data = mData;
   data.forget(aData);
   return NS_OK;
 }
 
-/* readonly attribute nsIException inner; */
 NS_IMETHODIMP
 Exception::GetInner(nsIException** aException)
 {
   NS_ENSURE_ARG_POINTER(aException);
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   nsCOMPtr<nsIException> inner = mInner;
   inner.forget(aException);
   return NS_OK;
 }
 
-/* AUTF8String toString (); */
 NS_IMETHODIMP
 Exception::ToString(nsACString& _retval)
 {
   NS_ENSURE_TRUE(mInitialized, NS_ERROR_NOT_INITIALIZED);
 
   static const char defaultMsg[] = "<no message>";
   static const char defaultLocation[] = "<unknown>";
   static const char format[] =
--- a/dom/base/NodeIterator.cpp
+++ b/dom/base/NodeIterator.cpp
@@ -174,47 +174,42 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION(
     NS_INTERFACE_MAP_ENTRY(nsIDOMNodeIterator)
     NS_INTERFACE_MAP_ENTRY(nsIMutationObserver)
     NS_INTERFACE_MAP_ENTRY_AMBIGUOUS(nsISupports, nsIDOMNodeIterator)
 NS_INTERFACE_MAP_END
 
 NS_IMPL_CYCLE_COLLECTING_ADDREF(NodeIterator)
 NS_IMPL_CYCLE_COLLECTING_RELEASE(NodeIterator)
 
-/* readonly attribute nsIDOMNode root; */
 NS_IMETHODIMP NodeIterator::GetRoot(nsIDOMNode * *aRoot)
 {
     NS_ADDREF(*aRoot = Root()->AsDOMNode());
     return NS_OK;
 }
 
-/* readonly attribute unsigned long whatToShow; */
 NS_IMETHODIMP NodeIterator::GetWhatToShow(uint32_t *aWhatToShow)
 {
     *aWhatToShow = WhatToShow();
     return NS_OK;
 }
 
-/* readonly attribute nsIDOMNodeFilter filter; */
 NS_IMETHODIMP NodeIterator::GetFilter(nsIDOMNodeFilter **aFilter)
 {
     NS_ENSURE_ARG_POINTER(aFilter);
 
     *aFilter = mFilter.ToXPCOMCallback().take();
 
     return NS_OK;
 }
 
-/* nsIDOMNode nextNode ()  raises (DOMException); */
 NS_IMETHODIMP NodeIterator::NextNode(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&NodeIterator::NextNode, _retval);
 }
 
-/* nsIDOMNode previousNode ()  raises (DOMException); */
 NS_IMETHODIMP NodeIterator::PreviousNode(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&NodeIterator::PreviousNode, _retval);
 }
 
 already_AddRefed<nsINode>
 NodeIterator::NextOrPrevNode(NodePointer::MoveToMethodType aMove,
                              ErrorResult& aResult)
@@ -243,34 +238,31 @@ NodeIterator::NextOrPrevNode(NodePointer
             mPointer = mWorkingPointer;
             return testNode.forget();
         }
     }
 
     return nullptr;
 }
 
-/* void detach (); */
 NS_IMETHODIMP NodeIterator::Detach(void)
 {
     if (mRoot) {
         mRoot->OwnerDoc()->WarnOnceAbout(nsIDocument::eNodeIteratorDetach);
     }
     return NS_OK;
 }
 
-/* readonly attribute nsIDOMNode referenceNode; */
 NS_IMETHODIMP NodeIterator::GetReferenceNode(nsIDOMNode * *aRefNode)
 {
     nsCOMPtr<nsIDOMNode> node(do_QueryInterface(GetReferenceNode()));
     node.forget(aRefNode);
     return NS_OK;
 }
 
-/* readonly attribute boolean pointerBeforeReferenceNode; */
 NS_IMETHODIMP NodeIterator::GetPointerBeforeReferenceNode(bool *aBeforeNode)
 {
     *aBeforeNode = PointerBeforeReferenceNode();
     return NS_OK;
 }
 
 /*
  * nsIMutationObserver interface
--- a/dom/base/ProcessGlobal.cpp
+++ b/dom/base/ProcessGlobal.cpp
@@ -32,17 +32,16 @@ ProcessGlobal::Get()
 {
   nsCOMPtr<nsISyncMessageSender> service = do_GetService(NS_CHILDPROCESSMESSAGEMANAGER_CONTRACTID);
   if (!service) {
     return nullptr;
   }
   return static_cast<ProcessGlobal*>(service.get());
 }
 
-/* [notxpcom] boolean markForCC (); */
 // This method isn't automatically forwarded safely because it's notxpcom, so
 // the IDL binding doesn't know what value to return.
 NS_IMETHODIMP_(bool)
 ProcessGlobal::MarkForCC()
 {
   MarkScopesForCC();
   return mMessageManager ? mMessageManager->MarkForCC() : false;
 }
--- a/dom/base/TreeWalker.cpp
+++ b/dom/base/TreeWalker.cpp
@@ -56,41 +56,37 @@ NS_IMPL_CYCLE_COLLECTING_ADDREF(dom::Tre
 NS_IMPL_CYCLE_COLLECTING_RELEASE(dom::TreeWalker)
 
 
 
 /*
  * nsIDOMTreeWalker Getters/Setters
  */
 
-/* readonly attribute nsIDOMNode root; */
 NS_IMETHODIMP TreeWalker::GetRoot(nsIDOMNode * *aRoot)
 {
     NS_ADDREF(*aRoot = Root()->AsDOMNode());
     return NS_OK;
 }
 
-/* readonly attribute unsigned long whatToShow; */
 NS_IMETHODIMP TreeWalker::GetWhatToShow(uint32_t *aWhatToShow)
 {
     *aWhatToShow = WhatToShow();
     return NS_OK;
 }
 
-/* readonly attribute nsIDOMNodeFilter filter; */
 NS_IMETHODIMP TreeWalker::GetFilter(nsIDOMNodeFilter * *aFilter)
 {
     NS_ENSURE_ARG_POINTER(aFilter);
 
     *aFilter = mFilter.ToXPCOMCallback().take();
 
     return NS_OK;
 }
 
-/* attribute nsIDOMNode currentNode; */
 NS_IMETHODIMP TreeWalker::GetCurrentNode(nsIDOMNode * *aCurrentNode)
 {
     if (mCurrentNode) {
         return CallQueryInterface(mCurrentNode, aCurrentNode);
     }
 
     *aCurrentNode = nullptr;
 
@@ -119,17 +115,16 @@ TreeWalker::SetCurrentNode(nsINode& aNod
 
     mCurrentNode = &aNode;
 }
 
 /*
  * nsIDOMTreeWalker functions
  */
 
-/* nsIDOMNode parentNode (); */
 NS_IMETHODIMP TreeWalker::ParentNode(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::ParentNode, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::ParentNode(ErrorResult& aResult)
 {
@@ -148,65 +143,60 @@ TreeWalker::ParentNode(ErrorResult& aRes
                 return node.forget();
             }
         }
     }
 
     return nullptr;
 }
 
-/* nsIDOMNode firstChild (); */
 NS_IMETHODIMP TreeWalker::FirstChild(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::FirstChild, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::FirstChild(ErrorResult& aResult)
 {
     return FirstChildInternal(false, aResult);
 }
 
-/* nsIDOMNode lastChild (); */
 NS_IMETHODIMP TreeWalker::LastChild(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::LastChild, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::LastChild(ErrorResult& aResult)
 {
     return FirstChildInternal(true, aResult);
 }
 
-/* nsIDOMNode previousSibling (); */
 NS_IMETHODIMP TreeWalker::PreviousSibling(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::PreviousSibling, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::PreviousSibling(ErrorResult& aResult)
 {
     return NextSiblingInternal(true, aResult);
 }
 
-/* nsIDOMNode nextSibling (); */
 NS_IMETHODIMP TreeWalker::NextSibling(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::NextSibling, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::NextSibling(ErrorResult& aResult)
 {
     return NextSiblingInternal(false, aResult);
 }
 
-/* nsIDOMNode previousNode (); */
 NS_IMETHODIMP TreeWalker::PreviousNode(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::PreviousNode, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::PreviousNode(ErrorResult& aResult)
 {
@@ -255,17 +245,16 @@ TreeWalker::PreviousNode(ErrorResult& aR
             mCurrentNode = node;
             return node.forget();
         }
     }
 
     return nullptr;
 }
 
-/* nsIDOMNode nextNode (); */
 NS_IMETHODIMP TreeWalker::NextNode(nsIDOMNode **_retval)
 {
     return ImplNodeGetter(&TreeWalker::NextNode, _retval);
 }
 
 already_AddRefed<nsINode>
 TreeWalker::NextNode(ErrorResult& aResult)
 {
--- a/dom/base/nsGlobalWindowCommands.cpp
+++ b/dom/base/nsGlobalWindowCommands.cpp
@@ -169,38 +169,35 @@ public:
 
 #if 0
 #pragma mark -
 #endif
 
 
 NS_IMPL_ISUPPORTS(nsSelectionCommandsBase, nsIControllerCommand)
 
-/* boolean isCommandEnabled (in string aCommandName, in nsISupports aCommandContext); */
 NS_IMETHODIMP
 nsSelectionCommandsBase::IsCommandEnabled(const char * aCommandName,
                                       nsISupports *aCommandContext,
                                       bool *outCmdEnabled)
 {
   // XXX this needs fixing. e.g. you can't scroll up if you're already at the top of
   // the document.
   *outCmdEnabled = true;
   return NS_OK;
 }
 
-/* void getCommandStateParams (in string aCommandName, in nsICommandParams aParams, in nsISupports aCommandContext); */
 NS_IMETHODIMP
 nsSelectionCommandsBase::GetCommandStateParams(const char *aCommandName,
                                             nsICommandParams *aParams, nsISupports *aCommandContext)
 {
   // XXX we should probably return the enabled state
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void doCommandParams (in string aCommandName, in nsICommandParams aParams, in nsISupports aCommandContext); */
 NS_IMETHODIMP
 nsSelectionCommandsBase::DoCommandParams(const char *aCommandName,
                                        nsICommandParams *aParams, nsISupports *aCommandContext)
 {
   return DoCommand(aCommandName, aCommandContext);
 }
 
 // protected methods
@@ -840,17 +837,16 @@ nsWebNavigationBaseCommand::DoCommand(co
 {
   nsCOMPtr<nsIWebNavigation> webNav;
   GetWebNavigationFromContext(aCommandContext, getter_AddRefs(webNav));
   NS_ENSURE_TRUE(webNav, NS_ERROR_INVALID_ARG);
   
   return DoWebNavCommand(aCommandName, webNav);
 }
 
-/* void doCommandParams (in string aCommandName, in nsICommandParams aParams, in nsISupports aCommandContext); */
 NS_IMETHODIMP
 nsWebNavigationBaseCommand::DoCommandParams(const char *aCommandName,
                                        nsICommandParams *aParams, nsISupports *aCommandContext)
 {
   return DoCommand(aCommandName, aCommandContext);
 }
 
 nsresult
--- a/dom/base/nsInProcessTabChildGlobal.cpp
+++ b/dom/base/nsInProcessTabChildGlobal.cpp
@@ -108,17 +108,16 @@ nsInProcessTabChildGlobal::nsInProcessTa
 }
 
 nsInProcessTabChildGlobal::~nsInProcessTabChildGlobal()
 {
   mAnonymousGlobalScopes.Clear();
   mozilla::DropJSObjects(this);
 }
 
-/* [notxpcom] boolean markForCC (); */
 // This method isn't automatically forwarded safely because it's notxpcom, so
 // the IDL binding doesn't know what value to return.
 NS_IMETHODIMP_(bool)
 nsInProcessTabChildGlobal::MarkForCC()
 {
   MarkScopesForCC();
   return mMessageManager ? mMessageManager->MarkForCC() : false;
 }
--- a/dom/base/nsJSEnvironment.cpp
+++ b/dom/base/nsJSEnvironment.cpp
@@ -3040,40 +3040,37 @@ nsJSArgArray::GetArgs(uint32_t *argc, vo
 
 // nsIArray impl
 NS_IMETHODIMP nsJSArgArray::GetLength(uint32_t *aLength)
 {
   *aLength = mArgc;
   return NS_OK;
 }
 
-/* void queryElementAt (in unsigned long index, in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result); */
 NS_IMETHODIMP nsJSArgArray::QueryElementAt(uint32_t index, const nsIID & uuid, void * *result)
 {
   *result = nullptr;
   if (index >= mArgc)
     return NS_ERROR_INVALID_ARG;
 
   if (uuid.Equals(NS_GET_IID(nsIVariant)) || uuid.Equals(NS_GET_IID(nsISupports))) {
     // Have to copy a Heap into a Rooted to work with it.
     JS::Rooted<JS::Value> val(mContext, mArgv[index]);
     return nsContentUtils::XPConnect()->JSToVariant(mContext, val,
                                                     (nsIVariant **)result);
   }
   NS_WARNING("nsJSArgArray only handles nsIVariant");
   return NS_ERROR_NO_INTERFACE;
 }
 
-/* unsigned long indexOf (in unsigned long startIndex, in nsISupports element); */
 NS_IMETHODIMP nsJSArgArray::IndexOf(uint32_t startIndex, nsISupports *element, uint32_t *_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* nsISimpleEnumerator enumerate (); */
 NS_IMETHODIMP nsJSArgArray::Enumerate(nsISimpleEnumerator **_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 // The factory function
 nsresult NS_CreateJSArgv(JSContext *aContext, uint32_t argc,
                          const JS::Value* argv, nsIJSArgArray **aArray)
--- a/dom/base/nsOpenURIInFrameParams.cpp
+++ b/dom/base/nsOpenURIInFrameParams.cpp
@@ -11,31 +11,29 @@ NS_IMPL_ISUPPORTS(nsOpenURIInFrameParams
 nsOpenURIInFrameParams::nsOpenURIInFrameParams() :
   mIsPrivate(false)
 {
 }
 
 nsOpenURIInFrameParams::~nsOpenURIInFrameParams() {
 }
 
-/* attribute DOMString referrer; */
 NS_IMETHODIMP
 nsOpenURIInFrameParams::GetReferrer(nsAString& aReferrer)
 {
   aReferrer = mReferrer;
   return NS_OK;
 }
 NS_IMETHODIMP
 nsOpenURIInFrameParams::SetReferrer(const nsAString& aReferrer)
 {
   mReferrer = aReferrer;
   return NS_OK;
 }
 
-/* attribute boolean isPrivate; */
 NS_IMETHODIMP
 nsOpenURIInFrameParams::GetIsPrivate(bool* aIsPrivate)
 {
   NS_ENSURE_ARG_POINTER(aIsPrivate);
   *aIsPrivate = mIsPrivate;
   return NS_OK;
 }
 NS_IMETHODIMP
--- a/dom/base/nsXMLHttpRequest.cpp
+++ b/dom/base/nsXMLHttpRequest.cpp
@@ -575,17 +575,16 @@ nsXMLHttpRequest::SizeOfEventTargetInclu
 
   return n;
 
   // Measurement of the following members may be added later if DMD finds it is
   // worthwhile:
   // - lots
 }
 
-/* readonly attribute nsIChannel channel; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetChannel(nsIChannel **aChannel)
 {
   NS_ENSURE_ARG_POINTER(aChannel);
   NS_IF_ADDREF(*aChannel = mChannel);
 
   return NS_OK;
 }
@@ -597,17 +596,16 @@ static void LogMessage(const char* aWarn
     doc = aWindow->GetExtantDoc();
   }
   nsContentUtils::ReportToConsole(nsIScriptError::warningFlag,
                                   NS_LITERAL_CSTRING("DOM"), doc,
                                   nsContentUtils::eDOM_PROPERTIES,
                                   aWarning);
 }
 
-/* readonly attribute nsIDOMDocument responseXML; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetResponseXML(nsIDOMDocument **aResponseXML)
 {
   ErrorResult rv;
   nsIDocument* responseXML = GetResponseXML(rv);
   if (rv.Failed()) {
     return rv.StealNSResult();
   }
@@ -711,17 +709,16 @@ nsXMLHttpRequest::AppendToResponseText(c
   if (!totalChars.isValid()) {
     return NS_ERROR_OUT_OF_MEMORY;
   }
 
   mResponseText.SetLength(totalChars.value());
   return NS_OK;
 }
 
-/* readonly attribute AString responseText; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetResponseText(nsAString& aResponseText)
 {
   ErrorResult rv;
   nsString responseText;
   GetResponseText(responseText, rv);
   aResponseText = responseText;
   return rv.StealNSResult();
@@ -829,17 +826,16 @@ nsXMLHttpRequest::CreatePartialBlob()
   nsAutoCString contentType;
   if (mLoadTotal == mLoadTransferred) {
     mChannel->GetContentType(contentType);
   }
 
   mResponseBlob = mBlobSet->GetBlobInternal(GetOwner(), contentType);
 }
 
-/* attribute AString responseType; */
 NS_IMETHODIMP nsXMLHttpRequest::GetResponseType(nsAString& aResponseType)
 {
   switch (mResponseType) {
   case XML_HTTP_RESPONSE_TYPE_DEFAULT:
     aResponseType.Truncate();
     break;
   case XML_HTTP_RESPONSE_TYPE_ARRAYBUFFER:
     aResponseType.AssignLiteral("arraybuffer");
@@ -890,17 +886,16 @@ nsXMLHttpRequest::StaticAssertions()
   ASSERT_ENUM_EQUAL(Text, TEXT);
   ASSERT_ENUM_EQUAL(Moz_chunked_text, CHUNKED_TEXT);
   ASSERT_ENUM_EQUAL(Moz_chunked_arraybuffer, CHUNKED_ARRAYBUFFER);
   ASSERT_ENUM_EQUAL(Moz_blob, MOZ_BLOB);
 #undef ASSERT_ENUM_EQUAL
 }
 #endif
 
-/* attribute AString responseType; */
 NS_IMETHODIMP nsXMLHttpRequest::SetResponseType(const nsAString& aResponseType)
 {
   nsXMLHttpRequest::ResponseTypeEnum responseType;
   if (aResponseType.IsEmpty()) {
     responseType = XML_HTTP_RESPONSE_TYPE_DEFAULT;
   } else if (aResponseType.EqualsLiteral("arraybuffer")) {
     responseType = XML_HTTP_RESPONSE_TYPE_ARRAYBUFFER;
   } else if (aResponseType.EqualsLiteral("blob")) {
@@ -959,17 +954,16 @@ nsXMLHttpRequest::SetResponseType(nsXMLH
     return;
   }
 
   // Set the responseType attribute's value to the given value.
   mResponseType = aResponseType;
 
 }
 
-/* readonly attribute jsval response; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetResponse(JSContext *aCx, JS::MutableHandle<JS::Value> aResult)
 {
   ErrorResult rv;
   GetResponse(aCx, aResult, rv);
   return rv.StealNSResult();
 }
 
@@ -1088,17 +1082,16 @@ nsXMLHttpRequest::IsDeniedCrossSiteReque
     mChannel->GetStatus(&rv);
     if (NS_FAILED(rv)) {
       return true;
     }
   }
   return false;
 }
 
-/* readonly attribute AString responseURL; */
 void
 nsXMLHttpRequest::GetResponseURL(nsAString& aUrl)
 {
   aUrl.Truncate();
 
   uint16_t readyState = ReadyState();
   if ((readyState == UNSENT || readyState == OPENED) || !mChannel) {
     return;
@@ -1117,17 +1110,16 @@ nsXMLHttpRequest::GetResponseURL(nsAStri
     return;
   }
 
   nsAutoCString temp;
   responseUrl->GetSpecIgnoringRef(temp);
   CopyUTF8toUTF16(temp, aUrl);
 }
 
-/* readonly attribute unsigned long status; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetStatus(uint32_t *aStatus)
 {
   *aStatus = Status();
   return NS_OK;
 }
 
 uint32_t
@@ -1254,17 +1246,16 @@ nsXMLHttpRequest::CloseRequestWithError(
   // the abort state bit. If this occurs we're not uninitialized (bug 361773).
   if (mState & XML_HTTP_REQUEST_ABORTED) {
     ChangeState(XML_HTTP_REQUEST_UNSENT, false);  // IE seems to do it
   }
 
   mState &= ~XML_HTTP_REQUEST_SYNCLOOPING;
 }
 
-/* void abort (); */
 void
 nsXMLHttpRequest::Abort()
 {
   CloseRequestWithError(NS_LITERAL_STRING(ABORT_STR), XML_HTTP_REQUEST_ABORTED);
 }
 
 NS_IMETHODIMP
 nsXMLHttpRequest::SlowAbort()
@@ -1324,17 +1315,16 @@ nsXMLHttpRequest::IsSafeHeader(const nsA
     }
     if (header.Equals(token, nsCaseInsensitiveCStringComparator())) {
       isSafe = true;
     }
   }
   return isSafe;
 }
 
-/* ByteString getAllResponseHeaders(); */
 IMPL_CSTRING_GETTER(GetAllResponseHeaders)
 void
 nsXMLHttpRequest::GetAllResponseHeaders(nsCString& aResponseHeaders)
 {
   aResponseHeaders.Truncate();
 
   // If the state is UNSENT or OPENED,
   // return the empty string and terminate these steps.
@@ -1979,17 +1969,16 @@ nsXMLHttpRequest::OnDataAvailable(nsIReq
 
   ChangeState(XML_HTTP_REQUEST_LOADING);
   
   MaybeDispatchProgressEvents(false);
 
   return NS_OK;
 }
 
-/* void onStartRequest (in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 nsXMLHttpRequest::OnStartRequest(nsIRequest *request, nsISupports *ctxt)
 {
   PROFILER_LABEL("nsXMLHttpRequest", "OnStartRequest",
     js::ProfileEntry::Category::NETWORK);
 
   nsresult rv = NS_OK;
   if (!mFirstStartRequestSeen && mRequestObserver) {
@@ -2214,17 +2203,16 @@ nsXMLHttpRequest::OnStartRequest(nsIRequ
       (mState & XML_HTTP_REQUEST_ASYNC) &&
       HasListenersFor(nsGkAtoms::onprogress)) {
     StartProgressEventTimer();
   }
 
   return NS_OK;
 }
 
-/* void onStopRequest (in nsIRequest request, in nsISupports ctxt, in nsresult status, in wstring statusArg); */
 NS_IMETHODIMP
 nsXMLHttpRequest::OnStopRequest(nsIRequest *request, nsISupports *ctxt, nsresult status)
 {
   PROFILER_LABEL("nsXMLHttpRequest", "OnStopRequest",
     js::ProfileEntry::Category::NETWORK);
 
   if (request != mChannel) {
     // Can this still happen?
@@ -2629,17 +2617,16 @@ nsXMLHttpRequest::GetRequestBody(nsIVari
       return NS_ERROR_FAILURE;
     }
   }
 
   NS_NOTREACHED("Default cases exist for a reason");
   return NS_OK;
 }
 
-/* void send (in nsIVariant aBody); */
 NS_IMETHODIMP
 nsXMLHttpRequest::Send(nsIVariant *aBody)
 {
   return Send(aBody, Nullable<RequestBody>());
 }
 
 nsresult
 nsXMLHttpRequest::Send(nsIVariant* aVariant, const Nullable<RequestBody>& aBody)
@@ -3033,17 +3020,16 @@ nsXMLHttpRequest::Send(nsIVariant* aVari
 
   if (!mChannel) {
     return NS_ERROR_FAILURE;
   }
 
   return rv;
 }
 
-/* void setRequestHeader (in ByteString header, in ByteString value); */
 // http://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#dom-xmlhttprequest-setrequestheader
 NS_IMETHODIMP
 nsXMLHttpRequest::SetRequestHeader(const nsACString& header,
                                    const nsACString& value)
 {
   // Step 1 and 2
   if (!(mState & XML_HTTP_REQUEST_OPENED)) {
     return NS_ERROR_DOM_INVALID_STATE_ERR;
@@ -3139,17 +3125,16 @@ nsXMLHttpRequest::SetRequestHeader(const
     RequestHeader reqHeader = {
       nsCString(header), nsCString(value)
     };
     mModifiedRequestHeaders.AppendElement(reqHeader);
   }
   return rv;
 }
 
-/* attribute unsigned long timeout; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetTimeout(uint32_t *aTimeout)
 {
   *aTimeout = Timeout();
   return NS_OK;
 }
 
 NS_IMETHODIMP
@@ -3203,17 +3188,16 @@ nsXMLHttpRequest::StartTimeoutTimer()
     (uint32_t)((PR_Now() - mRequestSentTime) / PR_USEC_PER_MSEC);
   mTimeoutTimer->InitWithCallback(
     this,
     mTimeoutMilliseconds > elapsed ? mTimeoutMilliseconds - elapsed : 0,
     nsITimer::TYPE_ONE_SHOT
   );
 }
 
-/* readonly attribute unsigned short readyState; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetReadyState(uint16_t *aState)
 {
   *aState = ReadyState();
   return NS_OK;
 }
 
 uint16_t
@@ -3231,25 +3215,23 @@ nsXMLHttpRequest::ReadyState()
   }
   if (mState & XML_HTTP_REQUEST_LOADING) {
     return LOADING;
   }
   MOZ_ASSERT(mState & XML_HTTP_REQUEST_DONE);
   return DONE;
 }
 
-/* void overrideMimeType(in DOMString mimetype); */
 NS_IMETHODIMP
 nsXMLHttpRequest::SlowOverrideMimeType(const nsAString& aMimeType)
 {
   OverrideMimeType(aMimeType);
   return NS_OK;
 }
 
-/* attribute boolean mozBackgroundRequest; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetMozBackgroundRequest(bool *_retval)
 {
   *_retval = MozBackgroundRequest();
   return NS_OK;
 }
 
 bool
@@ -3282,17 +3264,16 @@ nsXMLHttpRequest::SetMozBackgroundReques
 
   if (aMozBackgroundRequest) {
     mState |= XML_HTTP_REQUEST_BACKGROUND;
   } else {
     mState &= ~XML_HTTP_REQUEST_BACKGROUND;
   }
 }
 
-/* attribute boolean withCredentials; */
 NS_IMETHODIMP
 nsXMLHttpRequest::GetWithCredentials(bool *_retval)
 {
   *_retval = WithCredentials();
   return NS_OK;
 }
 
 bool
--- a/dom/bindings/Exceptions.cpp
+++ b/dom/bindings/Exceptions.cpp
@@ -347,24 +347,22 @@ NS_IMPL_CYCLE_COLLECTION_TRACE_BEGIN_INH
 NS_IMPL_CYCLE_COLLECTION_TRACE_END
 
 NS_IMPL_ADDREF_INHERITED(JSStackFrame, StackFrame)
 NS_IMPL_RELEASE_INHERITED(JSStackFrame, StackFrame)
 
 NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_INHERITED(JSStackFrame)
 NS_INTERFACE_MAP_END_INHERITING(StackFrame)
 
-/* readonly attribute uint32_t language; */
 NS_IMETHODIMP StackFrame::GetLanguage(uint32_t* aLanguage)
 {
   *aLanguage = mLanguage;
   return NS_OK;
 }
 
-/* readonly attribute string languageName; */
 NS_IMETHODIMP StackFrame::GetLanguageName(nsACString& aLanguageName)
 {
   aLanguageName.AssignLiteral("C++");
   return NS_OK;
 }
 
 NS_IMETHODIMP JSStackFrame::GetLanguageName(nsACString& aLanguageName)
 {
@@ -404,17 +402,16 @@ GetValueIfNotCached(JSContext* aCx, JSOb
   }
 
   *aUseCachedValue = false;
   JS::ExposeObjectToActiveJS(stack);
 
   aPropGetter(aCx, stack, aValue);
 }
 
-/* readonly attribute AString filename; */
 NS_IMETHODIMP JSStackFrame::GetFilename(nsAString& aFilename)
 {
   if (!mStack) {
     aFilename.Truncate();
     return NS_OK;
   }
 
   ThreadsafeAutoJSContext cx;
@@ -449,17 +446,16 @@ NS_IMETHODIMP StackFrame::GetFilename(ns
     aFilename.SetIsVoid(true);
   } else {
     aFilename.Assign(mFilename);
   }
 
   return NS_OK;
 }
 
-/* readonly attribute AString name; */
 NS_IMETHODIMP JSStackFrame::GetName(nsAString& aFunction)
 {
   if (!mStack) {
     aFunction.Truncate();
     return NS_OK;
   }
 
   ThreadsafeAutoJSContext cx;
@@ -526,17 +522,16 @@ JSStackFrame::GetLineno()
   if (canCache) {
     mLineno = line;
     mLinenoInitialized = true;
   }
 
   return line;
 }
 
-/* readonly attribute int32_t lineNumber; */
 NS_IMETHODIMP StackFrame::GetLineNumber(int32_t* aLineNumber)
 {
   *aLineNumber = GetLineno();
   return NS_OK;
 }
 
 // virtual
 int32_t
@@ -559,31 +554,28 @@ JSStackFrame::GetColNo()
   if (canCache) {
     mColNo = col;
     mColNoInitialized = true;
   }
 
   return col;
 }
 
-/* readonly attribute int32_t columnNumber; */
 NS_IMETHODIMP StackFrame::GetColumnNumber(int32_t* aColumnNumber)
 {
   *aColumnNumber = GetColNo();
   return NS_OK;
 }
 
-/* readonly attribute AUTF8String sourceLine; */
 NS_IMETHODIMP StackFrame::GetSourceLine(nsACString& aSourceLine)
 {
   aSourceLine.Truncate();
   return NS_OK;
 }
 
-/* readonly attribute AString asyncCause; */
 NS_IMETHODIMP JSStackFrame::GetAsyncCause(nsAString& aAsyncCause)
 {
   if (!mStack) {
     aAsyncCause.Truncate();
     return NS_OK;
   }
 
   ThreadsafeAutoJSContext cx;
@@ -624,17 +616,16 @@ NS_IMETHODIMP StackFrame::GetAsyncCause(
     aAsyncCause.SetIsVoid(true);
   } else {
     aAsyncCause.Assign(mAsyncCause);
   }
 
   return NS_OK;
 }
 
-/* readonly attribute nsIStackFrame asyncCaller; */
 NS_IMETHODIMP JSStackFrame::GetAsyncCaller(nsIStackFrame** aAsyncCaller)
 {
   if (!mStack) {
     *aAsyncCaller = nullptr;
     return NS_OK;
   }
 
   ThreadsafeAutoJSContext cx;
@@ -661,17 +652,16 @@ NS_IMETHODIMP JSStackFrame::GetAsyncCall
 }
 
 NS_IMETHODIMP StackFrame::GetAsyncCaller(nsIStackFrame** aAsyncCaller)
 {
   NS_IF_ADDREF(*aAsyncCaller = mAsyncCaller);
   return NS_OK;
 }
 
-/* readonly attribute nsIStackFrame caller; */
 NS_IMETHODIMP JSStackFrame::GetCaller(nsIStackFrame** aCaller)
 {
   if (!mStack) {
     *aCaller = nullptr;
     return NS_OK;
   }
 
   ThreadsafeAutoJSContext cx;
@@ -759,30 +749,28 @@ NS_IMETHODIMP JSStackFrame::GetFormatted
 }
 
 NS_IMETHODIMP StackFrame::GetFormattedStack(nsAString& aStack)
 {
   aStack.Truncate();
   return NS_OK;
 }
 
-/* readonly attribute jsval nativeSavedFrame; */
 NS_IMETHODIMP JSStackFrame::GetNativeSavedFrame(JS::MutableHandle<JS::Value> aSavedFrame)
 {
   aSavedFrame.setObjectOrNull(mStack);
   return NS_OK;
 }
 
 NS_IMETHODIMP StackFrame::GetNativeSavedFrame(JS::MutableHandle<JS::Value> aSavedFrame)
 {
   aSavedFrame.setNull();
   return NS_OK;
 }
 
-/* AUTF8String toString (); */
 NS_IMETHODIMP StackFrame::ToString(nsACString& _retval)
 {
   _retval.Truncate();
 
   const char* frametype = IsJSFrame() ? "JS" : "native";
 
   nsString filename;
   nsresult rv = GetFilename(filename);
--- a/dom/canvas/WebGLContext.cpp
+++ b/dom/canvas/WebGLContext.cpp
@@ -1303,17 +1303,16 @@ WebGLContext::GetContextAttributes(dom::
     result.mDepth = mOptions.depth;
     result.mStencil = mOptions.stencil;
     result.mAntialias = mOptions.antialias;
     result.mPremultipliedAlpha = mOptions.premultipliedAlpha;
     result.mPreserveDrawingBuffer = mOptions.preserveDrawingBuffer;
     result.mFailIfMajorPerformanceCaveat = mOptions.failIfMajorPerformanceCaveat;
 }
 
-/* [noscript] DOMString mozGetUnderlyingParamString(in GLenum pname); */
 NS_IMETHODIMP
 WebGLContext::MozGetUnderlyingParamString(uint32_t pname, nsAString& retval)
 {
     if (IsContextLost())
         return NS_OK;
 
     retval.SetIsVoid(true);
 
--- a/dom/events/FocusEvent.cpp
+++ b/dom/events/FocusEvent.cpp
@@ -22,17 +22,16 @@ FocusEvent::FocusEvent(EventTarget* aOwn
   if (aEvent) {
     mEventIsInternal = false;
   } else {
     mEventIsInternal = true;
     mEvent->time = PR_Now();
   }
 }
 
-/* readonly attribute nsIDOMEventTarget relatedTarget; */
 NS_IMETHODIMP
 FocusEvent::GetRelatedTarget(nsIDOMEventTarget** aRelatedTarget)
 {
   NS_ENSURE_ARG_POINTER(aRelatedTarget);
   NS_IF_ADDREF(*aRelatedTarget = GetRelatedTarget());
   return NS_OK;
 }
 
--- a/dom/events/SimpleGestureEvent.cpp
+++ b/dom/events/SimpleGestureEvent.cpp
@@ -34,17 +34,16 @@ SimpleGestureEvent::SimpleGestureEvent(E
 
 NS_IMPL_ADDREF_INHERITED(SimpleGestureEvent, MouseEvent)
 NS_IMPL_RELEASE_INHERITED(SimpleGestureEvent, MouseEvent)
 
 NS_INTERFACE_MAP_BEGIN(SimpleGestureEvent)
   NS_INTERFACE_MAP_ENTRY(nsIDOMSimpleGestureEvent)
 NS_INTERFACE_MAP_END_INHERITING(MouseEvent)
 
-/* attribute unsigned long allowedDirections; */
 uint32_t
 SimpleGestureEvent::AllowedDirections()
 {
   return mEvent->AsSimpleGestureEvent()->allowedDirections;
 }
 
 NS_IMETHODIMP
 SimpleGestureEvent::GetAllowedDirections(uint32_t* aAllowedDirections)
@@ -56,47 +55,44 @@ SimpleGestureEvent::GetAllowedDirections
 
 NS_IMETHODIMP
 SimpleGestureEvent::SetAllowedDirections(uint32_t aAllowedDirections)
 {
   mEvent->AsSimpleGestureEvent()->allowedDirections = aAllowedDirections;
   return NS_OK;
 }
 
-/* readonly attribute unsigned long direction; */
 uint32_t
 SimpleGestureEvent::Direction()
 {
   return mEvent->AsSimpleGestureEvent()->direction;
 }
 
 NS_IMETHODIMP
 SimpleGestureEvent::GetDirection(uint32_t* aDirection)
 {
   NS_ENSURE_ARG_POINTER(aDirection);
   *aDirection = Direction();
   return NS_OK;
 }
 
-/* readonly attribute float delta; */
 double
 SimpleGestureEvent::Delta()
 {
   return mEvent->AsSimpleGestureEvent()->delta;
 }
 
 NS_IMETHODIMP
 SimpleGestureEvent::GetDelta(double* aDelta)
 {
   NS_ENSURE_ARG_POINTER(aDelta);
   *aDelta = Delta();
   return NS_OK;
 }
 
-/* readonly attribute unsigned long clickCount; */
 uint32_t
 SimpleGestureEvent::ClickCount()
 {
   return mEvent->AsSimpleGestureEvent()->clickCount;
 }
 
 NS_IMETHODIMP
 SimpleGestureEvent::GetClickCount(uint32_t* aClickCount)
--- a/dom/gamepad/GamepadServiceTest.cpp
+++ b/dom/gamepad/GamepadServiceTest.cpp
@@ -34,32 +34,30 @@ GamepadServiceTest::GamepadServiceTest()
   mService(GamepadService::GetService())
 {
 }
 
 GamepadServiceTest::~GamepadServiceTest()
 {
 }
 
-/* uint32_t addGamepad(in unsigned long index, in string id, in unsigned long mapping, in unsigned long numButtons, in unsigned long numAxes); */
 NS_IMETHODIMP
 GamepadServiceTest::AddGamepad(const char* aID,
                                uint32_t aMapping,
                                uint32_t aNumButtons,
                                uint32_t aNumAxes,
                                uint32_t* aGamepadIndex)
 {
   *aGamepadIndex = GamepadFunctions::AddGamepad(aID,
                                                 static_cast<GamepadMappingType>(aMapping),
                                                 aNumButtons,
                                                 aNumAxes);
   return NS_OK;
 }
 
-/* void removeGamepad (in uint32_t index); */
 NS_IMETHODIMP GamepadServiceTest::RemoveGamepad(uint32_t aIndex)
 {
   GamepadFunctions::RemoveGamepad(aIndex);
   return NS_OK;
 }
 
 /* void newButtonEvent (in uint32_t index, in uint32_t button,
    in boolean pressed); */
--- a/dom/html/HTMLMediaElement.cpp
+++ b/dom/html/HTMLMediaElement.cpp
@@ -568,33 +568,30 @@ HTMLMediaElement::SetMozSrcObject(DOMMed
 
 void
 HTMLMediaElement::SetMozSrcObject(DOMMediaStream* aValue)
 {
   mSrcAttrStream = aValue;
   DoLoad();
 }
 
-/* readonly attribute nsIDOMHTMLMediaElement mozAutoplayEnabled; */
 NS_IMETHODIMP HTMLMediaElement::GetMozAutoplayEnabled(bool *aAutoplayEnabled)
 {
   *aAutoplayEnabled = mAutoplayEnabled;
 
   return NS_OK;
 }
 
-/* readonly attribute nsIDOMMediaError error; */
 NS_IMETHODIMP HTMLMediaElement::GetError(nsIDOMMediaError * *aError)
 {
   NS_IF_ADDREF(*aError = mError);
 
   return NS_OK;
 }
 
-/* readonly attribute boolean ended; */
 bool
 HTMLMediaElement::Ended()
 {
   if (mSrcStream) {
     return GetSrcMediaStream()->IsFinished();
   }
 
   if (mDecoder) {
@@ -605,26 +602,24 @@ HTMLMediaElement::Ended()
 }
 
 NS_IMETHODIMP HTMLMediaElement::GetEnded(bool* aEnded)
 {
   *aEnded = Ended();
   return NS_OK;
 }
 
-/* readonly attribute DOMString currentSrc; */
 NS_IMETHODIMP HTMLMediaElement::GetCurrentSrc(nsAString & aCurrentSrc)
 {
   nsAutoCString src;
   GetCurrentSpec(src);
   aCurrentSrc = NS_ConvertUTF8toUTF16(src);
   return NS_OK;
 }
 
-/* readonly attribute unsigned short networkState; */
 NS_IMETHODIMP HTMLMediaElement::GetNetworkState(uint16_t* aNetworkState)
 {
   *aNetworkState = NetworkState();
   return NS_OK;
 }
 
 nsresult
 HTMLMediaElement::OnChannelRedirect(nsIChannel* aChannel,
@@ -806,17 +801,16 @@ void HTMLMediaElement::QueueSelectResour
   if (mHaveQueuedSelectResource)
     return;
   mHaveQueuedSelectResource = true;
   ChangeNetworkState(nsIDOMHTMLMediaElement::NETWORK_NO_SOURCE);
   RunInStableState(
     NS_NewRunnableMethod(this, &HTMLMediaElement::SelectResourceWrapper));
 }
 
-/* void load (); */
 NS_IMETHODIMP HTMLMediaElement::Load()
 {
   if (mIsRunningLoadMethod) {
     return NS_OK;
   }
 
   mIsDoingExplicitLoad = true;
   DoLoad();
@@ -1342,38 +1336,35 @@ nsresult HTMLMediaElement::LoadWithChann
   }
 
   SetPlaybackRate(mDefaultPlaybackRate);
   DispatchAsyncEvent(NS_LITERAL_STRING("loadstart"));
 
   return NS_OK;
 }
 
-/* readonly attribute unsigned short readyState; */
 NS_IMETHODIMP HTMLMediaElement::GetReadyState(uint16_t* aReadyState)
 {
   *aReadyState = ReadyState();
 
   return NS_OK;
 }
 
-/* readonly attribute boolean seeking; */
 bool
 HTMLMediaElement::Seeking() const
 {
   return mDecoder && mDecoder->IsSeeking();
 }
 
 NS_IMETHODIMP HTMLMediaElement::GetSeeking(bool* aSeeking)
 {
   *aSeeking = Seeking();
   return NS_OK;
 }
 
-/* attribute double currentTime; */
 double
 HTMLMediaElement::CurrentTime() const
 {
   if (mSrcStream) {
     MediaStream* stream = GetSrcMediaStream();
     if (stream) {
       return stream->StreamTimeToSeconds(stream->GetCurrentTime());
     }
@@ -1585,17 +1576,16 @@ NS_IMETHODIMP HTMLMediaElement::SetCurre
     return NS_ERROR_FAILURE;
   }
 
   ErrorResult rv;
   SetCurrentTime(aCurrentTime, rv);
   return rv.StealNSResult();
 }
 
-/* readonly attribute double duration; */
 double
 HTMLMediaElement::Duration() const
 {
   if (mSrcStream) {
     return std::numeric_limits<double>::infinity();
   }
 
   if (mDecoder) {
@@ -1616,25 +1606,23 @@ HTMLMediaElement::Seekable() const
 {
   nsRefPtr<TimeRanges> ranges = new TimeRanges();
   if (mDecoder && mReadyState > nsIDOMHTMLMediaElement::HAVE_NOTHING) {
     mDecoder->GetSeekable().ToTimeRanges(ranges);
   }
   return ranges.forget();
 }
 
-/* readonly attribute nsIDOMHTMLTimeRanges seekable; */
 NS_IMETHODIMP HTMLMediaElement::GetSeekable(nsIDOMTimeRanges** aSeekable)
 {
   nsRefPtr<TimeRanges> ranges = Seekable();
   ranges.forget(aSeekable);
   return NS_OK;
 }
 
-/* readonly attribute boolean paused; */
 NS_IMETHODIMP HTMLMediaElement::GetPaused(bool* aPaused)
 {
   *aPaused = Paused();
 
   return NS_OK;
 }
 
 already_AddRefed<TimeRanges>
@@ -1660,25 +1648,23 @@ HTMLMediaElement::Played()
       ranges->Add(mCurrentPlayRangeStart, now);
     }
   }
 
   ranges->Normalize();
   return ranges.forget();
 }
 
-/* readonly attribute nsIDOMHTMLTimeRanges played; */
 NS_IMETHODIMP HTMLMediaElement::GetPlayed(nsIDOMTimeRanges** aPlayed)
 {
   nsRefPtr<TimeRanges> ranges = Played();
   ranges.forget(aPlayed);
   return NS_OK;
 }
 
-/* void pause (); */
 void
 HTMLMediaElement::Pause(ErrorResult& aRv)
 {
   if (mNetworkState == nsIDOMHTMLMediaElement::NETWORK_EMPTY) {
     LOG(LogLevel::Debug, ("Loading due to Pause()"));
     DoLoad();
   } else if (mDecoder) {
     mDecoder->Pause();
@@ -1704,17 +1690,16 @@ HTMLMediaElement::Pause(ErrorResult& aRv
 
 NS_IMETHODIMP HTMLMediaElement::Pause()
 {
   ErrorResult rv;
   Pause(rv);
   return rv.StealNSResult();
 }
 
-/* attribute double volume; */
 NS_IMETHODIMP HTMLMediaElement::GetVolume(double* aVolume)
 {
   *aVolume = Volume();
   return NS_OK;
 }
 
 void
 HTMLMediaElement::SetVolume(double aVolume, ErrorResult& aRv)
@@ -1783,17 +1768,16 @@ HTMLMediaElement::MozGetMetadata(JSConte
   if (!rv.Failed()) {
     MOZ_ASSERT(obj);
     aValue.setObject(*obj);
   }
 
   return rv.StealNSResult();
 }
 
-/* attribute boolean muted; */
 NS_IMETHODIMP HTMLMediaElement::GetMuted(bool* aMuted)
 {
   *aMuted = Muted();
   return NS_OK;
 }
 
 void HTMLMediaElement::SetMutedInternal(uint32_t aMuted)
 {
@@ -4332,17 +4316,16 @@ void HTMLMediaElement::GetCurrentSpec(ns
 {
   if (mLoadingSrc) {
     mLoadingSrc->GetSpec(aString);
   } else {
     aString.Truncate();
   }
 }
 
-/* attribute double mozFragmentEnd; */
 double
 HTMLMediaElement::MozFragmentEnd()
 {
   double duration = Duration();
 
   // If there is no end fragment, or the fragment end is greater than the
   // duration, return the duration.
   return (mFragmentEnd < 0.0 || mFragmentEnd > duration) ? duration : mFragmentEnd;
@@ -4363,17 +4346,16 @@ static double ClampPlaybackRate(double a
     return aPlaybackRate < 0 ? -MIN_PLAYBACKRATE : MIN_PLAYBACKRATE;
   }
   if (Abs(aPlaybackRate) > MAX_PLAYBACKRATE) {
     return aPlaybackRate < 0 ? -MAX_PLAYBACKRATE : MAX_PLAYBACKRATE;
   }
   return aPlaybackRate;
 }
 
-/* attribute double defaultPlaybackRate; */
 NS_IMETHODIMP HTMLMediaElement::GetDefaultPlaybackRate(double* aDefaultPlaybackRate)
 {
   *aDefaultPlaybackRate = DefaultPlaybackRate();
   return NS_OK;
 }
 
 void
 HTMLMediaElement::SetDefaultPlaybackRate(double aDefaultPlaybackRate, ErrorResult& aRv)
@@ -4389,17 +4371,16 @@ HTMLMediaElement::SetDefaultPlaybackRate
 
 NS_IMETHODIMP HTMLMediaElement::SetDefaultPlaybackRate(double aDefaultPlaybackRate)
 {
   ErrorResult rv;
   SetDefaultPlaybackRate(aDefaultPlaybackRate, rv);
   return rv.StealNSResult();
 }
 
-/* attribute double playbackRate; */
 NS_IMETHODIMP HTMLMediaElement::GetPlaybackRate(double* aPlaybackRate)
 {
   *aPlaybackRate = PlaybackRate();
   return NS_OK;
 }
 
 void
 HTMLMediaElement::SetPlaybackRate(double aPlaybackRate, ErrorResult& aRv)
@@ -4429,17 +4410,16 @@ HTMLMediaElement::SetPlaybackRate(double
 
 NS_IMETHODIMP HTMLMediaElement::SetPlaybackRate(double aPlaybackRate)
 {
   ErrorResult rv;
   SetPlaybackRate(aPlaybackRate, rv);
   return rv.StealNSResult();
 }
 
-/* attribute bool mozPreservesPitch; */
 NS_IMETHODIMP HTMLMediaElement::GetMozPreservesPitch(bool* aPreservesPitch)
 {
   *aPreservesPitch = MozPreservesPitch();
   return NS_OK;
 }
 
 NS_IMETHODIMP HTMLMediaElement::SetMozPreservesPitch(bool aPreservesPitch)
 {
@@ -4761,17 +4741,16 @@ HTMLMediaElement::VideoTracks()
 {
   if (!mVideoTrackList) {
     nsCOMPtr<nsPIDOMWindow> window = do_QueryInterface(OwnerDoc()->GetParentObject());
     mVideoTrackList = new VideoTrackList(window, this);
   }
   return mVideoTrackList;
 }
 
-/* readonly attribute TextTrackList? textTracks; */
 TextTrackList*
 HTMLMediaElement::GetTextTracks()
 {
   return GetOrCreateTextTrackManager()->GetTextTracks();
 }
 
 already_AddRefed<TextTrack>
 HTMLMediaElement::AddTextTrack(TextTrackKind aKind,
--- a/dom/html/UndoManager.cpp
+++ b/dom/html/UndoManager.cpp
@@ -52,48 +52,43 @@ using namespace mozilla::dom;
  * UndoManager transactions.
  */
 class UndoTxn : public nsITransaction {
   NS_DECL_NSITRANSACTION
 protected:
   virtual ~UndoTxn() {}
 };
 
-/* void doTransaction (); */
 NS_IMETHODIMP
 UndoTxn::DoTransaction()
 {
   // Do not do anything the first time we apply this transaction,
   // changes should already have been applied.
   return NS_OK;
 }
 
-/* void doTransaction (); */
 NS_IMETHODIMP
 UndoTxn::RedoTransaction()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void doTransaction (); */
 NS_IMETHODIMP
 UndoTxn::UndoTransaction()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* readonly attribute boolean isTransient; */
 NS_IMETHODIMP
 UndoTxn::GetIsTransient(bool* aIsTransient)
 {
   *aIsTransient = false;
   return NS_OK;
 }
 
-/* boolean merge (in nsITransaction aTransaction); */
 NS_IMETHODIMP
 UndoTxn::Merge(nsITransaction* aTransaction, bool* aResult)
 {
   *aResult = false;
   return NS_OK;
 }
 
 /////////////////////////////////////////////////
--- a/dom/html/nsHTMLDocument.cpp
+++ b/dom/html/nsHTMLDocument.cpp
@@ -2471,17 +2471,16 @@ nsHTMLDocument::GenerateParserKey(void)
       // participate in the context of the script that document.open()ed
       // this document.
       return nullptr;
     }
   }
   return script;
 }
 
-/* attribute DOMString designMode; */
 NS_IMETHODIMP
 nsHTMLDocument::GetDesignMode(nsAString & aDesignMode)
 {
   if (HasFlag(NODE_IS_EDITABLE)) {
     aDesignMode.AssignLiteral("on");
   }
   else {
     aDesignMode.AssignLiteral("off");
@@ -3324,17 +3323,16 @@ nsHTMLDocument::ExecCommand(const nsAStr
       return false;
     }
     rv = cmdMgr->DoCommand(cmdToDispatch.get(), cmdParams, window);
   }
 
   return !rv.Failed();
 }
 
-/* boolean queryCommandEnabled(in DOMString commandID); */
 NS_IMETHODIMP
 nsHTMLDocument::QueryCommandEnabled(const nsAString& commandID,
                                     bool* _retval)
 {
   ErrorResult rv;
   *_retval = QueryCommandEnabled(commandID, rv);
   return rv.StealNSResult();
 }
@@ -3379,17 +3377,16 @@ nsHTMLDocument::QueryCommandEnabled(cons
     return false;
   }
 
   bool retval;
   rv = cmdMgr->IsCommandEnabled(cmdToDispatch.get(), window, &retval);
   return retval;
 }
 
-/* boolean queryCommandIndeterm (in DOMString commandID); */
 NS_IMETHODIMP
 nsHTMLDocument::QueryCommandIndeterm(const nsAString & commandID,
                                      bool *_retval)
 {
   ErrorResult rv;
   *_retval = QueryCommandIndeterm(commandID, rv);
   return rv.StealNSResult();
 }
@@ -3437,17 +3434,16 @@ nsHTMLDocument::QueryCommandIndeterm(con
   // If command does not have a state_mixed value, this call fails and sets
   // retval to false.  This is fine -- we want to return false in that case
   // anyway (bug 738385), so we just don't throw regardless.
   bool retval = false;
   cmdParams->GetBooleanValue("state_mixed", &retval);
   return retval;
 }
 
-/* boolean queryCommandState(in DOMString commandID); */
 NS_IMETHODIMP
 nsHTMLDocument::QueryCommandState(const nsAString & commandID, bool *_retval)
 {
   ErrorResult rv;
   *_retval = QueryCommandState(commandID, rv);
   return rv.StealNSResult();
 }
 
@@ -3521,17 +3517,16 @@ nsHTMLDocument::QueryCommandState(const 
   // If command does not have a state_all value, this call fails and sets
   // retval to false.  This is fine -- we want to return false in that case
   // anyway (bug 738385), so we just succeed and return false regardless.
   bool retval = false;
   cmdParams->GetBooleanValue("state_all", &retval);
   return retval;
 }
 
-/* boolean queryCommandSupported(in DOMString commandID); */
 NS_IMETHODIMP
 nsHTMLDocument::QueryCommandSupported(const nsAString & commandID,
                                       bool *_retval)
 {
   *_retval = QueryCommandSupported(commandID);
   return NS_OK;
 }
 
@@ -3556,17 +3551,16 @@ nsHTMLDocument::QueryCommandSupported(co
     }
   }
 
   // commandID is supported if it can be converted to a Midas command
   nsAutoCString cmdToDispatch;
   return ConvertToMidasInternalCommand(commandID, cmdToDispatch);
 }
 
-/* DOMString queryCommandValue(in DOMString commandID); */
 NS_IMETHODIMP
 nsHTMLDocument::QueryCommandValue(const nsAString & commandID,
                                   nsAString &_retval)
 {
   ErrorResult rv;
   QueryCommandValue(commandID, _retval, rv);
   return rv.StealNSResult();
 }
--- a/dom/ipc/TabChild.cpp
+++ b/dom/ipc/TabChild.cpp
@@ -3041,17 +3041,16 @@ NS_INTERFACE_MAP_BEGIN_CYCLE_COLLECTION_
   NS_INTERFACE_MAP_ENTRY(nsIGlobalObject)
   NS_INTERFACE_MAP_ENTRY(nsISupportsWeakReference)
   NS_DOM_INTERFACE_MAP_ENTRY_CLASSINFO(ContentFrameMessageManager)
 NS_INTERFACE_MAP_END_INHERITING(DOMEventTargetHelper)
 
 NS_IMPL_ADDREF_INHERITED(TabChildGlobal, DOMEventTargetHelper)
 NS_IMPL_RELEASE_INHERITED(TabChildGlobal, DOMEventTargetHelper)
 
-/* [notxpcom] boolean markForCC (); */
 // This method isn't automatically forwarded safely because it's notxpcom, so
 // the IDL binding doesn't know what value to return.
 NS_IMETHODIMP_(bool)
 TabChildGlobal::MarkForCC()
 {
   if (mTabChild) {
     mTabChild->MarkScopesForCC();
   }
--- a/dom/svg/SVGGradientElement.cpp
+++ b/dom/svg/SVGGradientElement.cpp
@@ -72,17 +72,16 @@ SVGGradientElement::GetStringInfo()
 }
 
 already_AddRefed<SVGAnimatedEnumeration>
 SVGGradientElement::GradientUnits()
 {
   return mEnumAttributes[GRADIENTUNITS].ToDOMAnimatedEnum(this);
 }
 
-/* readonly attribute SVGAnimatedTransformList gradientTransform; */
 already_AddRefed<SVGAnimatedTransformList>
 SVGGradientElement::GradientTransform()
 {
   // We're creating a DOM wrapper, so we must tell GetAnimatedTransformList
   // to allocate the SVGAnimatedTransformList if it hasn't already done so:
   return SVGAnimatedTransformList::GetDOMWrapper(
            GetAnimatedTransformList(DO_ALLOCATE), this);
 }
--- a/dom/svg/SVGSVGElement.cpp
+++ b/dom/svg/SVGSVGElement.cpp
@@ -286,24 +286,22 @@ SVGSVGElement::CurrentTranslate()
 uint32_t
 SVGSVGElement::SuspendRedraw(uint32_t max_wait_milliseconds)
 {
   // suspendRedraw is a no-op in Mozilla, so it doesn't matter what
   // we return
   return 1;
 }
 
-/* void unsuspendRedraw (in unsigned long suspend_handle_id); */
 void
 SVGSVGElement::UnsuspendRedraw(uint32_t suspend_handle_id)
 {
   // no-op
 }
 
-/* void unsuspendRedrawAll (); */
 void
 SVGSVGElement::UnsuspendRedrawAll()
 {
   // no-op
 }
 
 void
 SVGSVGElement::ForceRedraw()
--- a/dom/svg/nsSVGElement.cpp
+++ b/dom/svg/nsSVGElement.cpp
@@ -96,25 +96,23 @@ nsSVGElement::nsSVGElement(already_AddRe
 JSObject*
 nsSVGElement::WrapNode(JSContext *aCx, JS::Handle<JSObject*> aGivenProto)
 {
   return SVGElementBinding::Wrap(aCx, this, aGivenProto);
 }
 
 //----------------------------------------------------------------------
 
-/* readonly attribute SVGAnimatedString className; */
 NS_IMETHODIMP
 nsSVGElement::GetSVGClassName(nsISupports** aClassName)
 {
   *aClassName = ClassName().take();
   return NS_OK;
 }
 
-/* readonly attribute nsIDOMCSSStyleDeclaration style; */
 NS_IMETHODIMP
 nsSVGElement::GetStyle(nsIDOMCSSStyleDeclaration** aStyle)
 {
   NS_ADDREF(*aStyle = Style());
   return NS_OK;
 }
 
 //----------------------------------------------------------------------
@@ -1079,31 +1077,29 @@ nsSVGElement::sMaskMap[] = {
 // nsIDOMElement methods
 
 // forwarded to Element implementations
 
 
 //----------------------------------------------------------------------
 // nsIDOMSVGElement methods
 
-/* readonly attribute nsIDOMSVGSVGElement ownerSVGElement; */
 NS_IMETHODIMP
 nsSVGElement::GetOwnerSVGElement(nsIDOMSVGElement * *aOwnerSVGElement)
 {
   NS_IF_ADDREF(*aOwnerSVGElement = GetOwnerSVGElement());
   return NS_OK;
 }
 
 SVGSVGElement*
 nsSVGElement::GetOwnerSVGElement()
 {
   return GetCtx(); // this may return nullptr
 }
 
-/* readonly attribute nsIDOMSVGElement viewportElement; */
 NS_IMETHODIMP
 nsSVGElement::GetViewportElement(nsIDOMSVGElement * *aViewportElement)
 {
   nsSVGElement* elem = GetViewportElement();
   NS_ADDREF(*aViewportElement = elem);
   return NS_OK;
 }
 
--- a/dom/system/gonk/nsVolumeMountLock.cpp
+++ b/dom/system/gonk/nsVolumeMountLock.cpp
@@ -76,17 +76,16 @@ nsresult nsVolumeMountLock::Init()
     return rv;
   }
   rv = vol->GetMountGeneration(&mVolumeGeneration);
   NS_ENSURE_SUCCESS(rv, rv);
 
   return Lock(vol);
 }
 
-/* void unlock (); */
 NS_IMETHODIMP nsVolumeMountLock::Unlock()
 {
   LOG("nsVolumeMountLock released for '%s'",
       NS_LossyConvertUTF16toASCII(mVolumeName).get());
 
   mUnlocked = true;
   mWakeLock = nullptr;
 
--- a/dom/system/gonk/nsVolumeStat.cpp
+++ b/dom/system/gonk/nsVolumeStat.cpp
@@ -12,24 +12,22 @@ NS_IMPL_ISUPPORTS(nsVolumeStat, nsIVolum
 
 nsVolumeStat::nsVolumeStat(const nsAString& aPath)
 {
   if (statfs(NS_ConvertUTF16toUTF8(aPath).get(), &mStat) != 0) {
     memset(&mStat, 0, sizeof(mStat));
   }
 }
 
-/* readonly attribute long long totalBytes; */
 NS_IMETHODIMP nsVolumeStat::GetTotalBytes(int64_t* aTotalBytes)
 {
   *aTotalBytes = mStat.f_blocks * mStat.f_bsize;
   return NS_OK;
 }
 
-/* readonly attribute long long freeBytes; */
 NS_IMETHODIMP nsVolumeStat::GetFreeBytes(int64_t* aFreeBytes)
 {
   *aFreeBytes = mStat.f_bfree * mStat.f_bsize;
   return NS_OK;
 }
 
 } // system
 } // mozilla
--- a/dom/xul/nsXULControllers.cpp
+++ b/dom/xul/nsXULControllers.cpp
@@ -196,17 +196,16 @@ nsXULControllers::RemoveController(nsICo
         delete controllerData;
         return NS_OK;
       }
     }
   }
   return NS_ERROR_FAILURE;      // right thing to return if no controller found?
 }
     
-/* unsigned long getControllerId (in nsIController controller); */
 NS_IMETHODIMP
 nsXULControllers::GetControllerId(nsIController *controller, uint32_t *_retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
 
   uint32_t count = mControllers.Length();
   for (uint32_t i = 0; i < count; i++)
   {
@@ -220,17 +219,16 @@ nsXULControllers::GetControllerId(nsICon
         *_retval = controllerData->GetControllerID();
         return NS_OK;
       }
     }
   }
   return NS_ERROR_FAILURE;  // none found
 }
 
-/* nsIController getControllerById (in unsigned long controllerID); */
 NS_IMETHODIMP
 nsXULControllers::GetControllerById(uint32_t controllerID, nsIController **_retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
     
   uint32_t count = mControllers.Length();
   for (uint32_t i = 0; i < count; i++)
   {
--- a/dom/xul/templates/nsXULTreeBuilder.cpp
+++ b/dom/xul/templates/nsXULTreeBuilder.cpp
@@ -1835,17 +1835,16 @@ nsXULTreeBuilder::SortSubtree(nsTreeRows
         if (child)
             SortSubtree(child);
     }
 
     return NS_OK;
 }
 
 
-/* boolean canDrop (in long index, in long orientation); */
 NS_IMETHODIMP
 nsXULTreeBuilder::CanDrop(int32_t index, int32_t orientation,
                           nsIDOMDataTransfer* dataTransfer, bool *_retval)
 {
     *_retval = false;
     uint32_t count = mObservers.Count();
     for (uint32_t i = 0; i < count; ++i) {
         nsCOMPtr<nsIXULTreeBuilderObserver> observer = mObservers.SafeObjectAt(i);
--- a/editor/composer/nsEditorSpellCheck.cpp
+++ b/editor/composer/nsEditorSpellCheck.cpp
@@ -661,17 +661,16 @@ nsEditorSpellCheck::UninitSpellChecker()
   DeleteSuggestedWordList();
   mDictionaryList.Clear();
   mDictionaryIndex = 0;
   mSpellChecker = 0;
   return NS_OK;
 }
 
 
-/* void setFilter (in nsITextServicesFilter filter); */
 NS_IMETHODIMP
 nsEditorSpellCheck::SetFilter(nsITextServicesFilter *filter)
 {
   mTxtSrvFilter = filter;
   return NS_OK;
 }
 
 nsresult
--- a/editor/libeditor/nsEditor.cpp
+++ b/editor/libeditor/nsEditor.cpp
@@ -595,17 +595,16 @@ nsEditor::GetWidget()
   NS_ENSURE_TRUE(ps, nullptr);
   nsPresContext* pc = ps->GetPresContext();
   NS_ENSURE_TRUE(pc, nullptr);
   nsCOMPtr<nsIWidget> widget = pc->GetRootWidget();
   NS_ENSURE_TRUE(widget.get(), nullptr);
   return widget.forget();
 }
 
-/* attribute string contentsMIMEType; */
 NS_IMETHODIMP
 nsEditor::GetContentsMIMEType(char * *aContentsMIMEType)
 {
   NS_ENSURE_ARG_POINTER(aContentsMIMEType);
   *aContentsMIMEType = ToNewCString(mContentMIMEType);
   return NS_OK;
 }
 
--- a/editor/txmgr/nsTransactionList.cpp
+++ b/editor/txmgr/nsTransactionList.cpp
@@ -34,17 +34,16 @@ nsTransactionList::nsTransactionList(nsI
 }
 
 nsTransactionList::~nsTransactionList()
 {
   mTxnStack = 0;
   mTxnItem  = 0;
 }
 
-/* readonly attribute long numItems; */
 NS_IMETHODIMP nsTransactionList::GetNumItems(int32_t *aNumItems)
 {
   NS_ENSURE_TRUE(aNumItems, NS_ERROR_NULL_POINTER);
 
   *aNumItems = 0;
 
   nsCOMPtr<nsITransactionManager> txMgr = do_QueryReferent(mTxnMgr);
 
@@ -55,17 +54,16 @@ NS_IMETHODIMP nsTransactionList::GetNumI
   if (mTxnStack)
     *aNumItems = mTxnStack->GetSize();
   else if (mTxnItem)
     result = mTxnItem->GetNumberOfChildren(aNumItems);
 
   return result;
 }
 
-/* boolean itemIsBatch (in long aIndex); */
 NS_IMETHODIMP nsTransactionList::ItemIsBatch(int32_t aIndex, bool *aIsBatch)
 {
   NS_ENSURE_TRUE(aIsBatch, NS_ERROR_NULL_POINTER);
 
   *aIsBatch = false;
 
   nsCOMPtr<nsITransactionManager> txMgr = do_QueryReferent(mTxnMgr);
 
@@ -118,17 +116,16 @@ NS_IMETHODIMP nsTransactionList::GetData
   }
 
   *aLength = data.Count();
   *aData = ret;
 
   return NS_OK;
 }
 
-/* nsITransaction getItem (in long aIndex); */
 NS_IMETHODIMP nsTransactionList::GetItem(int32_t aIndex, nsITransaction **aItem)
 {
   NS_ENSURE_TRUE(aItem, NS_ERROR_NULL_POINTER);
 
   *aItem = 0;
 
   nsCOMPtr<nsITransactionManager> txMgr = do_QueryReferent(mTxnMgr);
 
@@ -147,17 +144,16 @@ NS_IMETHODIMP nsTransactionList::GetItem
 
   NS_ENSURE_TRUE(item, NS_ERROR_FAILURE);
 
   *aItem = item->GetTransaction().take();
 
   return NS_OK;
 }
 
-/* long getNumChildrenForItem (in long aIndex); */
 NS_IMETHODIMP nsTransactionList::GetNumChildrenForItem(int32_t aIndex, int32_t *aNumChildren)
 {
   NS_ENSURE_TRUE(aNumChildren, NS_ERROR_NULL_POINTER);
 
   *aNumChildren = 0;
 
   nsCOMPtr<nsITransactionManager> txMgr = do_QueryReferent(mTxnMgr);
 
@@ -174,17 +170,16 @@ NS_IMETHODIMP nsTransactionList::GetNumC
 
   NS_ENSURE_SUCCESS(result, result);
 
   NS_ENSURE_TRUE(item, NS_ERROR_FAILURE);
 
   return item->GetNumberOfChildren(aNumChildren);
 }
 
-/* nsITransactionList getChildListForItem (in long aIndex); */
 NS_IMETHODIMP nsTransactionList::GetChildListForItem(int32_t aIndex, nsITransactionList **aTxnList)
 {
   NS_ENSURE_TRUE(aTxnList, NS_ERROR_NULL_POINTER);
 
   *aTxnList = 0;
 
   nsCOMPtr<nsITransactionManager> txMgr = do_QueryReferent(mTxnMgr);
 
--- a/embedding/components/printingui/mac/nsPrintProgress.cpp
+++ b/embedding/components/printingui/mac/nsPrintProgress.cpp
@@ -30,67 +30,62 @@ nsPrintProgress::nsPrintProgress()
   m_pendingStateValue = NS_OK;
 }
 
 nsPrintProgress::~nsPrintProgress()
 {
   (void)ReleaseListeners();
 }
 
-/* void openProgressDialog (in nsIDOMWindow parent, in string dialogURL, in nsISupports parameters); */
 NS_IMETHODIMP nsPrintProgress::OpenProgressDialog(nsIDOMWindow *parent,
                                                   const char *dialogURL,
                                                   nsISupports *parameters, 
                                                   nsIObserver *openDialogObserver,
                                                   bool *notifyOnOpen)
 {
   MOZ_ASSERT_UNREACHABLE("The nsPrintingPromptService::ShowProgress "
                          "implementation for OS X returns "
                          "NS_ERROR_NOT_IMPLEMENTED, so we should never get "
                          "here.");
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void closeProgressDialog (in boolean forceClose); */
 NS_IMETHODIMP nsPrintProgress::CloseProgressDialog(bool forceClose)
 {
   MOZ_ASSERT_UNREACHABLE("The nsPrintingPromptService::ShowProgress "
                          "implementation for OS X returns "
                          "NS_ERROR_NOT_IMPLEMENTED, so we should never get "
                          "here.");
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* nsIPrompt GetPrompter (); */
 NS_IMETHODIMP nsPrintProgress::GetPrompter(nsIPrompt **_retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = nullptr;
 
   if (! m_closeProgress && m_dialog)
     return m_dialog->GetPrompter(_retval);
     
   return NS_ERROR_FAILURE;
 }
 
-/* attribute boolean processCanceledByUser; */
 NS_IMETHODIMP nsPrintProgress::GetProcessCanceledByUser(bool *aProcessCanceledByUser)
 {
   NS_ENSURE_ARG_POINTER(aProcessCanceledByUser);
   *aProcessCanceledByUser = m_processCanceled;
   return NS_OK;
 }
 NS_IMETHODIMP nsPrintProgress::SetProcessCanceledByUser(bool aProcessCanceledByUser)
 {
   m_processCanceled = aProcessCanceledByUser;
   OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP, NS_OK);
   return NS_OK;
 }
 
-/* void RegisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::RegisterListener(nsIWebProgressListener * listener)
 {
   if (!listener) //Nothing to do with a null listener!
     return NS_OK;
   
   m_listenerList.AppendObject(listener);
   if (m_closeProgress || m_processCanceled)
     listener->OnStateChange(nullptr, nullptr,
@@ -100,127 +95,115 @@ NS_IMETHODIMP nsPrintProgress::RegisterL
     listener->OnStatusChange(nullptr, nullptr, NS_OK, m_pendingStatus.get());
     if (m_pendingStateFlags != -1)
       listener->OnStateChange(nullptr, nullptr, m_pendingStateFlags, m_pendingStateValue);
   }
     
   return NS_OK;
 }
 
-/* void UnregisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listener)
 {
   if (listener)
     m_listenerList.RemoveObject(listener);
   
   return NS_OK;
 }
 
-/* void doneIniting (); */
 NS_IMETHODIMP nsPrintProgress::DoneIniting()
 {
   if (m_observer) {
     m_observer->Observe(nullptr, nullptr, nullptr);
   }
   return NS_OK;
 }
 
-/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aStateFlags, in nsresult aStatus); */
 NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t aStateFlags, nsresult aStatus)
 {
   m_pendingStateFlags = aStateFlags;
   m_pendingStateValue = aStatus;
   
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStateChange(aWebProgress, aRequest, aStateFlags, aStatus);
   }
   
   return NS_OK;
 }
 
-/* void onProgressChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aCurSelfProgress, in long aMaxSelfProgress, in long aCurTotalProgress, in long aMaxTotalProgress); */
 NS_IMETHODIMP nsPrintProgress::OnProgressChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, int32_t aCurSelfProgress, int32_t aMaxSelfProgress, int32_t aCurTotalProgress, int32_t aMaxTotalProgress)
 {
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
   }
   
   return NS_OK;
 }
 
-/* void onLocationChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI location, in unsigned long aFlags); */
 NS_IMETHODIMP nsPrintProgress::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *location, uint32_t aFlags)
 {
     return NS_OK;
 }
 
-/* void onStatusChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage); */
 NS_IMETHODIMP nsPrintProgress::OnStatusChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsresult aStatus, const char16_t *aMessage)
 {
   if (aMessage && *aMessage)
   m_pendingStatus = aMessage;
 
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStatusChange(aWebProgress, aRequest, aStatus, aMessage);
   }
   
   return NS_OK;
 }
 
-/* void onSecurityChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long state); */
 NS_IMETHODIMP nsPrintProgress::OnSecurityChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t state)
 {
     return NS_OK;
 }
 
 nsresult nsPrintProgress::ReleaseListeners()
 {
   m_listenerList.Clear();
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgress::ShowStatusString(const char16_t *status)
 {
   return OnStatusChange(nullptr, nullptr, NS_OK, status);
 }
 
-/* void startMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StartMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void stopMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StopMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void showProgress (in long percent); */
 NS_IMETHODIMP nsPrintProgress::ShowProgress(int32_t percent)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* [noscript] void setDocShell (in nsIDocShell shell, in nsIDOMWindow window); */
 NS_IMETHODIMP nsPrintProgress::SetDocShell(nsIDocShell *shell, nsIDOMWindow *window)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void closeWindow (); */
 NS_IMETHODIMP nsPrintProgress::CloseWindow()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
--- a/embedding/components/printingui/mac/nsPrintProgressParams.cpp
+++ b/embedding/components/printingui/mac/nsPrintProgressParams.cpp
@@ -12,32 +12,30 @@ NS_IMPL_ISUPPORTS(nsPrintProgressParams,
 nsPrintProgressParams::nsPrintProgressParams()
 {
 }
 
 nsPrintProgressParams::~nsPrintProgressParams()
 {
 }
 
-/* attribute wstring docTitle; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocTitle(char16_t * *aDocTitle)
 {
   NS_ENSURE_ARG(aDocTitle);
   
   *aDocTitle = ToNewUnicode(mDocTitle);
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgressParams::SetDocTitle(const char16_t * aDocTitle)
 {
   mDocTitle = aDocTitle;
   return NS_OK;
 }
 
-/* attribute wstring docURL; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocURL(char16_t * *aDocURL)
 {
   NS_ENSURE_ARG(aDocURL);
   
   *aDocURL = ToNewUnicode(mDocURL);
   return NS_OK;
 }
 
--- a/embedding/components/printingui/unixshared/nsPrintProgress.cpp
+++ b/embedding/components/printingui/unixshared/nsPrintProgress.cpp
@@ -37,17 +37,16 @@ nsPrintProgress::nsPrintProgress(nsIPrin
   m_PrintSetting = aPrintSettings;
 }
 
 nsPrintProgress::~nsPrintProgress()
 {
   (void)ReleaseListeners();
 }
 
-/* void openProgressDialog (in nsIDOMWindow parent, in string dialogURL, in nsISupports parameters); */
 NS_IMETHODIMP nsPrintProgress::OpenProgressDialog(nsIDOMWindow *parent,
                                                   const char *dialogURL,
                                                   nsISupports *parameters, 
                                                   nsIObserver *openDialogObserver,
                                                   bool *notifyOnOpen)
 {
   *notifyOnOpen = true;
   m_observer = openDialogObserver;
@@ -100,54 +99,50 @@ NS_IMETHODIMP nsPrintProgress::OpenProgr
                                  NS_LITERAL_STRING("_blank"),
                                  NS_LITERAL_STRING("chrome,titlebar,dependent,centerscreen"),
                                  array, getter_AddRefs(newWindow));
   }
 
   return rv;
 }
 
-/* void closeProgressDialog (in boolean forceClose); */
 NS_IMETHODIMP nsPrintProgress::CloseProgressDialog(bool forceClose)
 {
   m_closeProgress = true;
   // XXX Invalid cast of bool to nsresult (bug 778106)
   return OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP,
                        (nsresult)forceClose);
 }
 
-/* nsIPrompt GetPrompter (); */
 NS_IMETHODIMP nsPrintProgress::GetPrompter(nsIPrompt **_retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = nullptr;
 
   if (! m_closeProgress && m_dialog)
     return m_dialog->GetPrompter(_retval);
     
   return NS_ERROR_FAILURE;
 }
 
-/* attribute boolean processCanceledByUser; */
 NS_IMETHODIMP nsPrintProgress::GetProcessCanceledByUser(bool *aProcessCanceledByUser)
 {
   NS_ENSURE_ARG_POINTER(aProcessCanceledByUser);
   *aProcessCanceledByUser = m_processCanceled;
   return NS_OK;
 }
 NS_IMETHODIMP nsPrintProgress::SetProcessCanceledByUser(bool aProcessCanceledByUser)
 {
   if(m_PrintSetting)
     m_PrintSetting->SetIsCancelled(true);
   m_processCanceled = aProcessCanceledByUser;
   OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP, NS_OK);
   return NS_OK;
 }
 
-/* void RegisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::RegisterListener(nsIWebProgressListener * listener)
 {
   if (!listener) //Nothing to do with a null listener!
     return NS_OK;
   
   m_listenerList.AppendObject(listener);
   if (m_closeProgress || m_processCanceled)
     listener->OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP, NS_OK);
@@ -156,89 +151,82 @@ NS_IMETHODIMP nsPrintProgress::RegisterL
     listener->OnStatusChange(nullptr, nullptr, NS_OK, m_pendingStatus.get());
     if (m_pendingStateFlags != -1)
       listener->OnStateChange(nullptr, nullptr, m_pendingStateFlags, m_pendingStateValue);
   }
     
   return NS_OK;
 }
 
-/* void UnregisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listener)
 {
   if (listener)
     m_listenerList.RemoveObject(listener);
   
   return NS_OK;
 }
 
-/* void doneIniting (); */
 NS_IMETHODIMP nsPrintProgress::DoneIniting()
 {
   if (m_observer) {
     m_observer->Observe(nullptr, nullptr, nullptr);
   }
   return NS_OK;
 }
 
-/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aStateFlags, in nsresult aStatus); */
 NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t aStateFlags, nsresult aStatus)
 {
   m_pendingStateFlags = aStateFlags;
   m_pendingStateValue = aStatus;
   
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStateChange(aWebProgress, aRequest, aStateFlags, aStatus);
   }
   
   return NS_OK;
 }
 
-/* void onProgressChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aCurSelfProgress, in long aMaxSelfProgress, in long aCurTotalProgress, in long aMaxTotalProgress); */
 NS_IMETHODIMP nsPrintProgress::OnProgressChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, int32_t aCurSelfProgress, int32_t aMaxSelfProgress, int32_t aCurTotalProgress, int32_t aMaxTotalProgress)
 {
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
   }
   
   return NS_OK;
 }
 
-/* void onLocationChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI location, in unsigned long aFlags); */
 NS_IMETHODIMP nsPrintProgress::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *location, uint32_t aFlags)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void onStatusChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage); */
 NS_IMETHODIMP nsPrintProgress::OnStatusChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsresult aStatus, const char16_t *aMessage)
 {
   if (aMessage && *aMessage)
   m_pendingStatus = aMessage;
 
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStatusChange(aWebProgress, aRequest, aStatus, aMessage);
   }
   
   return NS_OK;
 }
 
-/* void onSecurityChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long state); */
 NS_IMETHODIMP nsPrintProgress::OnSecurityChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t state)
 {
     return NS_OK;
 }
 
 nsresult nsPrintProgress::ReleaseListeners()
 {
   m_listenerList.Clear();
@@ -246,38 +234,33 @@ nsresult nsPrintProgress::ReleaseListene
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgress::ShowStatusString(const char16_t *status)
 {
   return OnStatusChange(nullptr, nullptr, NS_OK, status);
 }
 
-/* void startMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StartMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void stopMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StopMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void showProgress (in long percent); */
 NS_IMETHODIMP nsPrintProgress::ShowProgress(int32_t percent)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* [noscript] void setDocShell (in nsIDocShell shell, in nsIDOMWindow window); */
 NS_IMETHODIMP nsPrintProgress::SetDocShell(nsIDocShell *shell, nsIDOMWindow *window)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void closeWindow (); */
 NS_IMETHODIMP nsPrintProgress::CloseWindow()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
--- a/embedding/components/printingui/unixshared/nsPrintProgressParams.cpp
+++ b/embedding/components/printingui/unixshared/nsPrintProgressParams.cpp
@@ -12,32 +12,30 @@ NS_IMPL_ISUPPORTS(nsPrintProgressParams,
 nsPrintProgressParams::nsPrintProgressParams()
 {
 }
 
 nsPrintProgressParams::~nsPrintProgressParams()
 {
 }
 
-/* attribute wstring docTitle; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocTitle(char16_t * *aDocTitle)
 {
   NS_ENSURE_ARG(aDocTitle);
   
   *aDocTitle = ToNewUnicode(mDocTitle);
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgressParams::SetDocTitle(const char16_t * aDocTitle)
 {
   mDocTitle = aDocTitle;
   return NS_OK;
 }
 
-/* attribute wstring docURL; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocURL(char16_t * *aDocURL)
 {
   NS_ENSURE_ARG(aDocURL);
   
   *aDocURL = ToNewUnicode(mDocURL);
   return NS_OK;
 }
 
--- a/embedding/components/printingui/unixshared/nsPrintingPromptService.cpp
+++ b/embedding/components/printingui/unixshared/nsPrintingPromptService.cpp
@@ -66,17 +66,16 @@ nsPrintingPromptService::~nsPrintingProm
 nsresult
 nsPrintingPromptService::Init()
 {
     nsresult rv;
     mWatcher = do_GetService(NS_WINDOWWATCHER_CONTRACTID, &rv);
     return rv;
 }
 
-/* void showPrintDialog (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPrintDialog(nsIDOMWindow *parent, nsIWebBrowserPrint *webBrowserPrint, nsIPrintSettings *printSettings)
 {
     NS_ENSURE_ARG(webBrowserPrint);
     NS_ENSURE_ARG(printSettings);
 
     // Try to access a component dialog
     nsCOMPtr<nsIPrintDialogService> dlgPrint(do_GetService(
@@ -89,17 +88,16 @@ nsPrintingPromptService::ShowPrintDialog
     nsresult rv = block.Init();
     if (NS_FAILED(rv))
       return rv;
 
     block->SetInt(0, 0);
     return DoDialog(parent, block, webBrowserPrint, printSettings, kPrintDialogURL);
 }
 
-/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowProgress(nsIDOMWindow*            parent, 
                                       nsIWebBrowserPrint*      webBrowserPrint,    // ok to be null
                                       nsIPrintSettings*        printSettings,      // ok to be null
                                       nsIObserver*             openDialogObserver, // ok to be null
                                       bool                     isForPrinting,
                                       nsIWebProgressListener** webProgressListener,
                                       nsIPrintProgressParams** printProgressParams, 
@@ -130,17 +128,16 @@ nsPrintingPromptService::ShowProgress(ns
     }
 
     prtProgressParams.forget(printProgressParams);
     NS_ADDREF(*webProgressListener = this);
 
     return NS_OK;
 }
 
-/* void showPageSetup (in nsIDOMWindow parent, in nsIPrintSettings printSettings); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPageSetup(nsIDOMWindow *parent, nsIPrintSettings *printSettings, nsIObserver *aObs)
 {
     NS_ENSURE_ARG(printSettings);
 
     // Try to access a component dialog
     nsCOMPtr<nsIPrintDialogService> dlgPrint(do_GetService(
                                              NS_PRINTDIALOGSERVICE_CONTRACTID));
@@ -151,17 +148,16 @@ nsPrintingPromptService::ShowPageSetup(n
     nsresult rv = block.Init();
     if (NS_FAILED(rv))
       return rv;
 
     block->SetInt(0, 0);
     return DoDialog(parent, block, nullptr, printSettings, kPageSetupDialogURL);
 }
 
-/* void showPrinterProperties (in nsIDOMWindow parent, in wstring printerName, in nsIPrintSettings printSettings); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPrinterProperties(nsIDOMWindow *parent, const char16_t *printerName, nsIPrintSettings *printSettings)
 {
     /* fixme: We simply ignore the |aPrinter| argument here
      * We should get the supported printer attributes from the printer and 
      * populate the print job options dialog with these data instead of using 
      * the "default set" here.
      * However, this requires changes on all platforms and is another big chunk
@@ -246,62 +242,57 @@ nsPrintingPromptService::DoDialog(nsIDOM
 
     return rv;
 }
 
 //////////////////////////////////////////////////////////////////////
 // nsIWebProgressListener
 //////////////////////////////////////////////////////////////////////
 
-/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aStateFlags, in nsresult aStatus); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t aStateFlags, nsresult aStatus)
 {
   if ((aStateFlags & STATE_STOP) && mWebProgressListener) {
     mWebProgressListener->OnStateChange(aWebProgress, aRequest, aStateFlags, aStatus);
     if (mPrintProgress) {
       mPrintProgress->CloseProgressDialog(true);
     }
     mPrintProgress       = nullptr;
     mWebProgressListener = nullptr;
   }
   return NS_OK;
 }
 
-/* void onProgressChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aCurSelfProgress, in long aMaxSelfProgress, in long aCurTotalProgress, in long aMaxTotalProgress); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnProgressChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, int32_t aCurSelfProgress, int32_t aMaxSelfProgress, int32_t aCurTotalProgress, int32_t aMaxTotalProgress)
 {
   if (mWebProgressListener) {
     return mWebProgressListener->OnProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
   }
   return NS_OK;
 }
 
-/* void onLocationChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI location, in unsigned long aFlags); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *location, uint32_t aFlags)
 {
   if (mWebProgressListener) {
     return mWebProgressListener->OnLocationChange(aWebProgress, aRequest, location, aFlags);
   }
   return NS_OK;
 }
 
-/* void onStatusChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnStatusChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsresult aStatus, const char16_t *aMessage)
 {
   if (mWebProgressListener) {
     return mWebProgressListener->OnStatusChange(aWebProgress, aRequest, aStatus, aMessage);
   }
   return NS_OK;
 }
 
-/* void onSecurityChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long state); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnSecurityChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t state)
 {
   if (mWebProgressListener) {
     return mWebProgressListener->OnSecurityChange(aWebProgress, aRequest, state);
   }
   return NS_OK;
 }
--- a/embedding/components/printingui/win/nsPrintProgress.cpp
+++ b/embedding/components/printingui/win/nsPrintProgress.cpp
@@ -64,17 +64,16 @@ nsPrintProgress::nsPrintProgress()
   m_pendingStateValue = NS_OK;
 }
 
 nsPrintProgress::~nsPrintProgress()
 {
   (void)ReleaseListeners();
 }
 
-/* void openProgressDialog (in nsIDOMWindow parent, in string dialogURL, in nsISupports parameters); */
 NS_IMETHODIMP nsPrintProgress::OpenProgressDialog(nsIDOMWindow *parent,
                                                   const char *dialogURL,
                                                   nsISupports *parameters, 
                                                   nsIObserver *openDialogObserver, 
                                                   bool *notifyOnOpen)
 {
   *notifyOnOpen = true;
   m_observer = openDialogObserver;
@@ -127,52 +126,48 @@ NS_IMETHODIMP nsPrintProgress::OpenProgr
                                  NS_LITERAL_STRING("_blank"),
                                  NS_LITERAL_STRING("chrome,titlebar,dependent,centerscreen"),
                                  array, getter_AddRefs(newWindow));
   }
 
   return rv;
 }
 
-/* void closeProgressDialog (in boolean forceClose); */
 NS_IMETHODIMP nsPrintProgress::CloseProgressDialog(bool forceClose)
 {
   m_closeProgress = true;
   // XXX Casting from bool to nsresult
   return OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP,
                        static_cast<nsresult>(forceClose));
 }
 
-/* nsIPrompt GetPrompter (); */
 NS_IMETHODIMP nsPrintProgress::GetPrompter(nsIPrompt **_retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = nullptr;
 
   if (! m_closeProgress && m_dialog)
     return m_dialog->GetPrompter(_retval);
     
   return NS_ERROR_FAILURE;
 }
 
-/* attribute boolean processCanceledByUser; */
 NS_IMETHODIMP nsPrintProgress::GetProcessCanceledByUser(bool *aProcessCanceledByUser)
 {
   NS_ENSURE_ARG_POINTER(aProcessCanceledByUser);
   *aProcessCanceledByUser = m_processCanceled;
   return NS_OK;
 }
 NS_IMETHODIMP nsPrintProgress::SetProcessCanceledByUser(bool aProcessCanceledByUser)
 {
   m_processCanceled = aProcessCanceledByUser;
   OnStateChange(nullptr, nullptr, nsIWebProgressListener::STATE_STOP, NS_OK);
   return NS_OK;
 }
 
-/* void RegisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::RegisterListener(nsIWebProgressListener * listener)
 {
   if (!listener) //Nothing to do with a null listener!
     return NS_OK;
   
   m_listenerList.AppendObject(listener);
   if (m_closeProgress || m_processCanceled)
     listener->OnStateChange(nullptr, nullptr,
@@ -182,126 +177,114 @@ NS_IMETHODIMP nsPrintProgress::RegisterL
     listener->OnStatusChange(nullptr, nullptr, NS_OK, m_pendingStatus.get());
     if (m_pendingStateFlags != -1)
       listener->OnStateChange(nullptr, nullptr, m_pendingStateFlags, m_pendingStateValue);
   }
     
   return NS_OK;
 }
 
-/* void UnregisterListener (in nsIWebProgressListener listener); */
 NS_IMETHODIMP nsPrintProgress::UnregisterListener(nsIWebProgressListener *listener)
 {
   if (listener)
     m_listenerList.RemoveObject(listener);
   
   return NS_OK;
 }
 
-/* void doneIniting (); */
 NS_IMETHODIMP nsPrintProgress::DoneIniting()
 {
   if (m_observer) {
     m_observer->Observe(nullptr, nullptr, nullptr);
   }
   return NS_OK;
 }
 
-/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long aStateFlags, in nsresult aStatus); */
 NS_IMETHODIMP nsPrintProgress::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t aStateFlags, nsresult aStatus)
 {
   m_pendingStateFlags = aStateFlags;
   m_pendingStateValue = aStatus;
   
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStateChange(aWebProgress, aRequest, aStateFlags, aStatus);
   }
   
   return NS_OK;
 }
 
-/* void onProgressChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aCurSelfProgress, in long aMaxSelfProgress, in long aCurTotalProgress, in long aMaxTotalProgress); */
 NS_IMETHODIMP nsPrintProgress::OnProgressChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, int32_t aCurSelfProgress, int32_t aMaxSelfProgress, int32_t aCurTotalProgress, int32_t aMaxTotalProgress)
 {
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
   }
   
   return NS_OK;
 }
 
-/* void onLocationChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI location, in unsigned long aFlags); */
 NS_IMETHODIMP nsPrintProgress::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *location, uint32_t aFlags)
 {
     return NS_OK;
 }
 
-/* void onStatusChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage); */
 NS_IMETHODIMP nsPrintProgress::OnStatusChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsresult aStatus, const char16_t *aMessage)
 {
   if (aMessage && *aMessage)
   m_pendingStatus = aMessage;
 
   uint32_t count = m_listenerList.Count();
   for (uint32_t i = count - 1; i < count; i --)
   {
     nsCOMPtr<nsIWebProgressListener> progressListener = m_listenerList.SafeObjectAt(i);
     if (progressListener)
       progressListener->OnStatusChange(aWebProgress, aRequest, aStatus, aMessage);
   }
   
   return NS_OK;
 }
 
-/* void onSecurityChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long state); */
 NS_IMETHODIMP nsPrintProgress::OnSecurityChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t state)
 {
     return NS_OK;
 }
 
 nsresult nsPrintProgress::ReleaseListeners()
 {
   m_listenerList.Clear();
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgress::ShowStatusString(const char16_t *status)
 {
   return OnStatusChange(nullptr, nullptr, NS_OK, status);
 }
 
-/* void startMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StartMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void stopMeteors (); */
 NS_IMETHODIMP nsPrintProgress::StopMeteors()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void showProgress (in long percent); */
 NS_IMETHODIMP nsPrintProgress::ShowProgress(int32_t percent)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* [noscript] void setDocShell (in nsIDocShell shell, in nsIDOMWindow window); */
 NS_IMETHODIMP nsPrintProgress::SetDocShell(nsIDocShell *shell, nsIDOMWindow *window)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void closeWindow (); */
 NS_IMETHODIMP nsPrintProgress::CloseWindow()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
--- a/embedding/components/printingui/win/nsPrintProgressParams.cpp
+++ b/embedding/components/printingui/win/nsPrintProgressParams.cpp
@@ -12,32 +12,30 @@ NS_IMPL_ISUPPORTS(nsPrintProgressParams,
 nsPrintProgressParams::nsPrintProgressParams()
 {
 }
 
 nsPrintProgressParams::~nsPrintProgressParams()
 {
 }
 
-/* attribute wstring docTitle; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocTitle(char16_t * *aDocTitle)
 {
   NS_ENSURE_ARG(aDocTitle);
   
   *aDocTitle = ToNewUnicode(mDocTitle);
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPrintProgressParams::SetDocTitle(const char16_t * aDocTitle)
 {
   mDocTitle = aDocTitle;
   return NS_OK;
 }
 
-/* attribute wstring docURL; */
 NS_IMETHODIMP nsPrintProgressParams::GetDocURL(char16_t * *aDocURL)
 {
   NS_ENSURE_ARG(aDocURL);
   
   *aDocURL = ToNewUnicode(mDocURL);
   return NS_OK;
 }
 
--- a/embedding/components/printingui/win/nsPrintingPromptService.cpp
+++ b/embedding/components/printingui/win/nsPrintingPromptService.cpp
@@ -152,17 +152,16 @@ nsPrintingPromptService::ShowPrintDialog
 
     HWND hWnd = GetHWNDForDOMWindow(parent);
     NS_ASSERTION(hWnd, "Couldn't get native window for PRint Dialog!");
 
     return NativeShowPrintDialog(hWnd, webBrowserPrint, printSettings);
 }
 
 
-/* void showProgress (in nsIDOMWindow parent, in nsIWebBrowserPrint webBrowserPrint, in nsIPrintSettings printSettings, in nsIObserver openDialogObserver, in boolean isForPrinting, out nsIWebProgressListener webProgressListener, out nsIPrintProgressParams printProgressParams, out boolean notifyOnOpen); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowProgress(nsIDOMWindow*            parent, 
                                       nsIWebBrowserPrint*      webBrowserPrint,    // ok to be null
                                       nsIPrintSettings*        printSettings,      // ok to be null
                                       nsIObserver*             openDialogObserver, // ok to be null
                                       bool                     isForPrinting,
                                       nsIWebProgressListener** webProgressListener,
                                       nsIPrintProgressParams** printProgressParams,
@@ -198,17 +197,16 @@ nsPrintingPromptService::ShowProgress(ns
     }
 
     prtProgressParams.forget(printProgressParams);
     NS_ADDREF(*webProgressListener = this);
 
     return NS_OK;
 }
 
-/* void showPageSetup (in nsIDOMWindow parent, in nsIPrintSettings printSettings); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPageSetup(nsIDOMWindow *parent, nsIPrintSettings *printSettings, nsIObserver *aObs)
 {
     NS_ENSURE_ARG(printSettings);
 
     ParamBlock block;
     nsresult rv = block.Init();
     if (NS_FAILED(rv))
@@ -224,17 +222,16 @@ nsPrintingPromptService::ShowPageSetup(n
       int32_t status;
       block->GetInt(0, &status);
       return status == 0?NS_ERROR_ABORT:NS_OK;
     }
 
     return rv;
 }
 
-/* void showPrinterProperties (in nsIDOMWindow parent, in wstring printerName, in nsIPrintSettings printSettings); */
 NS_IMETHODIMP 
 nsPrintingPromptService::ShowPrinterProperties(nsIDOMWindow *parent, const char16_t *printerName, nsIPrintSettings *printSettings)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 //-----------------------------------------------------------
 // Helper to Fly XP Dialog
@@ -288,67 +285,62 @@ nsPrintingPromptService::DoDialog(nsIDOM
 
     return rv;
 }
 
 //////////////////////////////////////////////////////////////////////
 // nsIWebProgressListener
 //////////////////////////////////////////////////////////////////////
 
-/* void onStateChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aStateFlags, in nsresult aStatus); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnStateChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t aStateFlags, nsresult aStatus)
 {
     if ((aStateFlags & STATE_STOP) && mWebProgressListener) 
     {
         mWebProgressListener->OnStateChange(aWebProgress, aRequest, aStateFlags, aStatus);
         if (mPrintProgress) 
         {
             mPrintProgress->CloseProgressDialog(true);
         }
         mPrintProgress       = nullptr;
         mWebProgressListener = nullptr;
     }
     return NS_OK;
 }
 
-/* void onProgressChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in long aCurSelfProgress, in long aMaxSelfProgress, in long aCurTotalProgress, in long aMaxTotalProgress); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnProgressChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, int32_t aCurSelfProgress, int32_t aMaxSelfProgress, int32_t aCurTotalProgress, int32_t aMaxTotalProgress)
 {
   if (mWebProgressListener) 
   {
       return mWebProgressListener->OnProgressChange(aWebProgress, aRequest, aCurSelfProgress, aMaxSelfProgress, aCurTotalProgress, aMaxTotalProgress);
   }
   return NS_ERROR_FAILURE;
 }
 
-/* void onLocationChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsIURI location, in unsigned long aFlags); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnLocationChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsIURI *location, uint32_t aFlags)
 {
   if (mWebProgressListener) 
   {
       return mWebProgressListener->OnLocationChange(aWebProgress, aRequest, location, aFlags);
   }
   return NS_ERROR_FAILURE;
 }
 
-/* void onStatusChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in nsresult aStatus, in wstring aMessage); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnStatusChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, nsresult aStatus, const char16_t *aMessage)
 {
   if (mWebProgressListener) 
   {
       return mWebProgressListener->OnStatusChange(aWebProgress, aRequest, aStatus, aMessage);
   }
   return NS_ERROR_FAILURE;
 }
 
-/* void onSecurityChange (in nsIWebProgress aWebProgress, in nsIRequest aRequest, in unsigned long state); */
 NS_IMETHODIMP 
 nsPrintingPromptService::OnSecurityChange(nsIWebProgress *aWebProgress, nsIRequest *aRequest, uint32_t state)
 {
   if (mWebProgressListener) 
   {
       return mWebProgressListener->OnSecurityChange(aWebProgress, aRequest, state);
   }
   return NS_ERROR_FAILURE;
--- a/embedding/components/webbrowserpersist/nsWebBrowserPersist.cpp
+++ b/embedding/components/webbrowserpersist/nsWebBrowserPersist.cpp
@@ -265,32 +265,30 @@ NS_IMETHODIMP nsWebBrowserPersist::GetIn
     return NS_ERROR_NO_INTERFACE;
 }
 
 
 //*****************************************************************************
 // nsWebBrowserPersist::nsIWebBrowserPersist
 //*****************************************************************************
 
-/* attribute unsigned long persistFlags; */
 NS_IMETHODIMP nsWebBrowserPersist::GetPersistFlags(uint32_t *aPersistFlags)
 {
     NS_ENSURE_ARG_POINTER(aPersistFlags);
     *aPersistFlags = mPersistFlags;
     return NS_OK;
 }
 NS_IMETHODIMP nsWebBrowserPersist::SetPersistFlags(uint32_t aPersistFlags)
 {
     mPersistFlags = aPersistFlags;
     mReplaceExisting = (mPersistFlags & PERSIST_FLAGS_REPLACE_EXISTING_FILES) ? true : false;
     mSerializingOutput = (mPersistFlags & PERSIST_FLAGS_SERIALIZE_OUTPUT) ? true : false;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long currentState; */
 NS_IMETHODIMP nsWebBrowserPersist::GetCurrentState(uint32_t *aCurrentState)
 {
     NS_ENSURE_ARG_POINTER(aCurrentState);
     if (mCompleted)
     {
         *aCurrentState = PERSIST_STATE_FINISHED;
     }
     else if (mFirstAndOnlyUse)
@@ -299,25 +297,23 @@ NS_IMETHODIMP nsWebBrowserPersist::GetCu
     }
     else
     {
         *aCurrentState = PERSIST_STATE_READY;
     }
     return NS_OK;
 }
 
-/* readonly attribute unsigned long result; */
 NS_IMETHODIMP nsWebBrowserPersist::GetResult(nsresult *aResult)
 {
     NS_ENSURE_ARG_POINTER(aResult);
     *aResult = mPersistResult;
     return NS_OK;
 }
 
-/* attribute nsIWebBrowserPersistProgress progressListener; */
 NS_IMETHODIMP nsWebBrowserPersist::GetProgressListener(
     nsIWebProgressListener * *aProgressListener)
 {
     NS_ENSURE_ARG_POINTER(aProgressListener);
     *aProgressListener = mProgressListener;
     NS_IF_ADDREF(*aProgressListener);
     return NS_OK;
 }
@@ -361,17 +357,16 @@ NS_IMETHODIMP nsWebBrowserPersist::SaveP
 
     // SaveURI doesn't like broken uris.
     mPersistFlags |= PERSIST_FLAGS_FAIL_ON_BROKEN_LINKS;
     rv = SaveURIInternal(aURI, aCacheKey, aReferrer, aReferrerPolicy,
                          aPostData, aExtraHeaders, fileAsURI, false, aIsPrivate);
     return NS_FAILED(rv) ? rv : NS_OK;
 }
 
-/* void saveChannel (in nsIChannel aChannel, in nsISupports aFile); */
 NS_IMETHODIMP nsWebBrowserPersist::SaveChannel(
     nsIChannel *aChannel, nsISupports *aFile)
 {
     NS_ENSURE_TRUE(mFirstAndOnlyUse, NS_ERROR_FAILURE);
     mFirstAndOnlyUse = false; // Stop people from reusing this object!
 
     nsCOMPtr<nsIURI> fileAsURI;
     nsresult rv;
@@ -475,26 +470,24 @@ NS_IMETHODIMP nsWebBrowserPersist::SaveD
                                          nsIWebProgressListener::STATE_STOP |
                                          nsIWebProgressListener::STATE_IS_NETWORK,
                                          rv);
     }
 
     return rv;
 }
 
-/* void cancel(nsresult aReason); */
 NS_IMETHODIMP nsWebBrowserPersist::Cancel(nsresult aReason)
 {
     mCancel = true;
     EndDownload(aReason);
     return NS_OK;
 }
 
 
-/* void cancelSave(); */
 NS_IMETHODIMP nsWebBrowserPersist::CancelSave()
 {
     return Cancel(NS_BINDING_ABORTED);
 }
 
 
 nsresult
 nsWebBrowserPersist::StartUpload(nsIStorageStream *storStream,
--- a/extensions/spellcheck/hunspell/src/mozHunspell.cpp
+++ b/extensions/spellcheck/hunspell/src/mozHunspell.cpp
@@ -131,17 +131,16 @@ mozHunspell::Init()
 mozHunspell::~mozHunspell()
 {
   mozilla::UnregisterWeakMemoryReporter(this);
 
   mPersonalDictionary = nullptr;
   delete mHunspell;
 }
 
-/* attribute wstring dictionary; */
 NS_IMETHODIMP mozHunspell::GetDictionary(char16_t **aDictionary)
 {
   NS_ENSURE_ARG_POINTER(aDictionary);
 
   *aDictionary = ToNewUnicode(mDictionary);
   return *aDictionary ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
@@ -232,59 +231,53 @@ NS_IMETHODIMP mozHunspell::SetDictionary
     obs->NotifyObservers(nullptr,
                          SPELLCHECK_DICTIONARY_UPDATE_NOTIFICATION,
                          nullptr);
   }
 
   return NS_OK;
 }
 
-/* readonly attribute wstring language; */
 NS_IMETHODIMP mozHunspell::GetLanguage(char16_t **aLanguage)
 {
   NS_ENSURE_ARG_POINTER(aLanguage);
 
   if (mDictionary.IsEmpty())
     return NS_ERROR_NOT_INITIALIZED;
 
   *aLanguage = ToNewUnicode(mLanguage);
   return *aLanguage ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute boolean providesPersonalDictionary; */
 NS_IMETHODIMP mozHunspell::GetProvidesPersonalDictionary(bool *aProvidesPersonalDictionary)
 {
   NS_ENSURE_ARG_POINTER(aProvidesPersonalDictionary);
 
   *aProvidesPersonalDictionary = false;
   return NS_OK;
 }
 
-/* readonly attribute boolean providesWordUtils; */
 NS_IMETHODIMP mozHunspell::GetProvidesWordUtils(bool *aProvidesWordUtils)
 {
   NS_ENSURE_ARG_POINTER(aProvidesWordUtils);
 
   *aProvidesWordUtils = false;
   return NS_OK;
 }
 
-/* readonly attribute wstring name; */
 NS_IMETHODIMP mozHunspell::GetName(char16_t * *aName)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* readonly attribute wstring copyright; */
 NS_IMETHODIMP mozHunspell::GetCopyright(char16_t * *aCopyright)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* attribute mozIPersonalDictionary personalDictionary; */
 NS_IMETHODIMP mozHunspell::GetPersonalDictionary(mozIPersonalDictionary * *aPersonalDictionary)
 {
   *aPersonalDictionary = mPersonalDictionary;
   NS_IF_ADDREF(*aPersonalDictionary);
   return NS_OK;
 }
 
 NS_IMETHODIMP mozHunspell::SetPersonalDictionary(mozIPersonalDictionary * aPersonalDictionary)
@@ -309,17 +302,16 @@ AppendNewString(const nsAString& aString
     ans->failed = true;
     return PL_DHASH_STOP;
   }
 
   ++ans->count;
   return PL_DHASH_NEXT;
 }
 
-/* void GetDictionaryList ([array, size_is (count)] out wstring dictionaries, out uint32_t count); */
 NS_IMETHODIMP mozHunspell::GetDictionaryList(char16_t ***aDictionaries,
                                             uint32_t *aCount)
 {
   if (!aDictionaries || !aCount)
     return NS_ERROR_NULL_POINTER;
 
   AppendNewStruct ans = {
     (char16_t**) moz_xmalloc(sizeof(char16_t*) * mDictionaries.Count()),
@@ -514,17 +506,16 @@ nsresult mozHunspell::ConvertCharset(con
 
   rv = mEncoder->Convert(aStr, &inLength, *aDst, &outLength);
   if (NS_SUCCEEDED(rv))
     (*aDst)[outLength] = '\0';
 
   return rv;
 }
 
-/* boolean Check (in wstring word); */
 NS_IMETHODIMP mozHunspell::Check(const char16_t *aWord, bool *aResult)
 {
   NS_ENSURE_ARG_POINTER(aWord);
   NS_ENSURE_ARG_POINTER(aResult);
   NS_ENSURE_TRUE(mHunspell, NS_ERROR_FAILURE);
 
   nsXPIDLCString charsetWord;
   nsresult rv = ConvertCharset(aWord, getter_Copies(charsetWord));
@@ -534,17 +525,16 @@ NS_IMETHODIMP mozHunspell::Check(const c
 
 
   if (!*aResult && mPersonalDictionary)
     rv = mPersonalDictionary->Check(aWord, mLanguage.get(), aResult);
 
   return rv;
 }
 
-/* void Suggest (in wstring word, [array, size_is (count)] out wstring suggestions, out uint32_t count); */
 NS_IMETHODIMP mozHunspell::Suggest(const char16_t *aWord, char16_t ***aSuggestions, uint32_t *aSuggestionCount)
 {
   NS_ENSURE_ARG_POINTER(aSuggestions);
   NS_ENSURE_ARG_POINTER(aSuggestionCount);
   NS_ENSURE_TRUE(mHunspell, NS_ERROR_FAILURE);
 
   nsresult rv;
   *aSuggestionCount = 0;
@@ -598,23 +588,21 @@ mozHunspell::Observe(nsISupports* aSubj,
                || !strcmp(aTopic, "profile-after-change"),
                "Unexpected observer topic");
 
   LoadDictionaryList(false);
 
   return NS_OK;
 }
 
-/* void addDirectory(in nsIFile dir); */
 NS_IMETHODIMP mozHunspell::AddDirectory(nsIFile *aDir)
 {
   mDynamicDirectories.AppendObject(aDir);
   LoadDictionaryList(true);
   return NS_OK;
 }
 
-/* void removeDirectory(in nsIFile dir); */
 NS_IMETHODIMP mozHunspell::RemoveDirectory(nsIFile *aDir)
 {
   mDynamicDirectories.RemoveObject(aDir);
   LoadDictionaryList(true);
   return NS_OK;
 }
--- a/extensions/spellcheck/src/mozEnglishWordUtils.cpp
+++ b/extensions/spellcheck/src/mozEnglishWordUtils.cpp
@@ -31,28 +31,26 @@ mozEnglishWordUtils::mozEnglishWordUtils
   nsresult rv;
   mURLDetector = do_CreateInstance(MOZ_TXTTOHTMLCONV_CONTRACTID, &rv);
 }
 
 mozEnglishWordUtils::~mozEnglishWordUtils()
 {
 }
 
-/* attribute wstring language; */
 NS_IMETHODIMP mozEnglishWordUtils::GetLanguage(char16_t * *aLanguage)
 {
   nsresult rv = NS_OK;
   NS_ENSURE_ARG_POINTER(aLanguage);
 
   *aLanguage = ToNewUnicode(mLanguage);
   if(!aLanguage) rv = NS_ERROR_OUT_OF_MEMORY;
   return rv;
  }
 
-/* void GetRootForm (in wstring aWord, in uint32_t type, [array, size_is (count)] out wstring words, out uint32_t count); */
 // return the possible root forms of aWord.
 NS_IMETHODIMP mozEnglishWordUtils::GetRootForm(const char16_t *aWord, uint32_t type, char16_t ***words, uint32_t *count)
 {
   nsAutoString word(aWord);
   char16_t **tmpPtr;
   int32_t length = word.Length();
 
   *count = 0;
@@ -133,17 +131,16 @@ NS_IMETHODIMP mozEnglishWordUtils::GetRo
 
 // This needs vast improvement
 bool mozEnglishWordUtils::ucIsAlpha(char16_t aChar)
 {
   // XXX we have to fix callers to handle the full Unicode range
   return nsIUGenCategory::kLetter == mozilla::unicode::GetGenCategory(aChar);
 }
 
-/* void FindNextWord (in wstring word, in uint32_t length, in uint32_t offset, out uint32_t begin, out uint32_t end); */
 NS_IMETHODIMP mozEnglishWordUtils::FindNextWord(const char16_t *word, uint32_t length, uint32_t offset, int32_t *begin, int32_t *end)
 {
   const char16_t *p = word + offset;
   const char16_t *endbuf = word + length;
   const char16_t *startWord=p;
   if(p<endbuf){
     // XXX These loops should be modified to handle non-BMP characters.
     // if previous character is a word character, need to advance out of the word
--- a/extensions/spellcheck/src/mozGenericWordUtils.cpp
+++ b/extensions/spellcheck/src/mozGenericWordUtils.cpp
@@ -13,32 +13,28 @@ mozGenericWordUtils::mozGenericWordUtils
   /* member initializers and constructor code */
 }
 
 mozGenericWordUtils::~mozGenericWordUtils()
 {
   /* destructor code */
 }
 
-/* readonly attribute wstring language; */
 NS_IMETHODIMP mozGenericWordUtils::GetLanguage(char16_t * *aLanguage)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void GetRootForm (in wstring word, in uint32_t type, [array, size_is (count)] out wstring words, out uint32_t count); */
 NS_IMETHODIMP mozGenericWordUtils::GetRootForm(const char16_t *word, uint32_t type, char16_t ***words, uint32_t *count)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void FromRootForm (in wstring word, [array, size_is (icount)] in wstring iwords, in uint32_t icount, [array, size_is (ocount)] out wstring owords, out uint32_t ocount); */
 NS_IMETHODIMP mozGenericWordUtils::FromRootForm(const char16_t *word, const char16_t **iwords, uint32_t icount, char16_t ***owords, uint32_t *ocount)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void FindNextWord (in wstring word, in uint32_t length, in uint32_t offset, out uint32_t begin, out uint32_t end); */
 NS_IMETHODIMP mozGenericWordUtils::FindNextWord(const char16_t *word, uint32_t length, uint32_t offset, int32_t *begin, int32_t *end)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
--- a/extensions/spellcheck/src/mozPersonalDictionary.cpp
+++ b/extensions/spellcheck/src/mozPersonalDictionary.cpp
@@ -384,17 +384,16 @@ NS_IMETHODIMP mozPersonalDictionary::Sav
     new mozPersonalDictionarySave(this, theFile, mozilla::Move(array));
   res = target->Dispatch(runnable, NS_DISPATCH_NORMAL);
   if (NS_WARN_IF(NS_FAILED(res))) {
     return res;
   }
   return res;
 }
 
-/* readonly attribute nsIStringEnumerator GetWordList() */
 NS_IMETHODIMP mozPersonalDictionary::GetWordList(nsIStringEnumerator **aWords)
 {
   NS_ENSURE_ARG_POINTER(aWords);
   *aWords = nullptr;
 
   WaitForLoad();
 
   nsTArray<nsString> *array = new nsTArray<nsString>(mDictionaryTable.Count());
@@ -402,88 +401,79 @@ NS_IMETHODIMP mozPersonalDictionary::Get
     array->AppendElement(nsDependentString(iter.Get()->GetKey()));
   }
 
   array->Sort();
 
   return NS_NewAdoptingStringEnumerator(aWords, array);
 }
 
-/* boolean Check (in wstring word, in wstring language); */
 NS_IMETHODIMP mozPersonalDictionary::Check(const char16_t *aWord, const char16_t *aLanguage, bool *aResult)
 {
   NS_ENSURE_ARG_POINTER(aWord);
   NS_ENSURE_ARG_POINTER(aResult);
 
   WaitForLoad();
 
   *aResult = (mDictionaryTable.GetEntry(aWord) || mIgnoreTable.GetEntry(aWord));
   return NS_OK;
 }
 
-/* void AddWord (in wstring word); */
 NS_IMETHODIMP mozPersonalDictionary::AddWord(const char16_t *aWord, const char16_t *aLang)
 {
   nsresult res;
   WaitForLoad();
 
   mDictionaryTable.PutEntry(aWord);
   res = Save();
   return res;
 }
 
-/* void RemoveWord (in wstring word); */
 NS_IMETHODIMP mozPersonalDictionary::RemoveWord(const char16_t *aWord, const char16_t *aLang)
 {
   nsresult res;
   WaitForLoad();
 
   mDictionaryTable.RemoveEntry(aWord);
   res = Save();
   return res;
 }
 
-/* void IgnoreWord (in wstring word); */
 NS_IMETHODIMP mozPersonalDictionary::IgnoreWord(const char16_t *aWord)
 {
   // avoid adding duplicate words to the ignore list
   if (aWord && !mIgnoreTable.GetEntry(aWord)) 
     mIgnoreTable.PutEntry(aWord);
   return NS_OK;
 }
 
-/* void EndSession (); */
 NS_IMETHODIMP mozPersonalDictionary::EndSession()
 {
   WaitForLoad();
 
   WaitForSave();
   mIgnoreTable.Clear();
   return NS_OK;
 }
 
-/* void AddCorrection (in wstring word, in wstring correction); */
 NS_IMETHODIMP mozPersonalDictionary::AddCorrection(const char16_t *word, const char16_t *correction, const char16_t *lang)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void RemoveCorrection (in wstring word, in wstring correction); */
 NS_IMETHODIMP mozPersonalDictionary::RemoveCorrection(const char16_t *word, const char16_t *correction, const char16_t *lang)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void GetCorrection (in wstring word, [array, size_is (count)] out wstring words, out uint32_t count); */
 NS_IMETHODIMP mozPersonalDictionary::GetCorrection(const char16_t *word, char16_t ***words, uint32_t *count)
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void observe (in nsISupports aSubject, in string aTopic, in wstring aData); */
 NS_IMETHODIMP mozPersonalDictionary::Observe(nsISupports *aSubject, const char *aTopic, const char16_t *aData)
 {
   if (!nsCRT::strcmp(aTopic, "profile-do-change")) {
     // The observer is registered in Init() which calls Load and in turn
     // LoadInternal(); i.e. Observe() can't be called before Load().
     WaitForLoad();
     mIsLoaded = false;
     Load(); // load automatically clears out the existing dictionary table
--- a/extensions/spellcheck/src/mozSpellI18NManager.cpp
+++ b/extensions/spellcheck/src/mozSpellI18NManager.cpp
@@ -15,17 +15,16 @@ mozSpellI18NManager::mozSpellI18NManager
   /* member initializers and constructor code */
 }
 
 mozSpellI18NManager::~mozSpellI18NManager()
 {
   /* destructor code */
 }
 
-/* mozISpellI18NUtil GetUtil (in wstring language); */
 NS_IMETHODIMP mozSpellI18NManager::GetUtil(const char16_t *aLanguage, mozISpellI18NUtil **_retval)
 {
  if( nullptr == _retval) {
    return NS_ERROR_NULL_POINTER;
  }
  *_retval = nullptr;
  nsAutoString lang;
  lang.Assign(aLanguage);
--- a/image/RasterImage.cpp
+++ b/image/RasterImage.cpp
@@ -336,63 +336,59 @@ RasterImage::RequestRefresh(const TimeSt
 
   if (res.animationFinished) {
     mAnimationFinished = true;
     EvaluateAnimation();
   }
 }
 
 //******************************************************************************
-/* readonly attribute int32_t width; */
 NS_IMETHODIMP
 RasterImage::GetWidth(int32_t* aWidth)
 {
   NS_ENSURE_ARG_POINTER(aWidth);
 
   if (mError) {
     *aWidth = 0;
     return NS_ERROR_FAILURE;
   }
 
   *aWidth = mSize.width;
   return NS_OK;
 }
 
 //******************************************************************************
-/* readonly attribute int32_t height; */
 NS_IMETHODIMP
 RasterImage::GetHeight(int32_t* aHeight)
 {
   NS_ENSURE_ARG_POINTER(aHeight);
 
   if (mError) {
     *aHeight = 0;
     return NS_ERROR_FAILURE;
   }
 
   *aHeight = mSize.height;
   return NS_OK;
 }
 
 //******************************************************************************
-/* [noscript] readonly attribute nsSize intrinsicSize; */
 NS_IMETHODIMP
 RasterImage::GetIntrinsicSize(nsSize* aSize)
 {
   if (mError) {
     return NS_ERROR_FAILURE;
   }
 
   *aSize = nsSize(nsPresContext::CSSPixelsToAppUnits(mSize.width),
                   nsPresContext::CSSPixelsToAppUnits(mSize.height));
   return NS_OK;
 }
 
 //******************************************************************************
-/* [noscript] readonly attribute nsSize intrinsicRatio; */
 NS_IMETHODIMP
 RasterImage::GetIntrinsicRatio(nsSize* aRatio)
 {
   if (mError) {
     return NS_ERROR_FAILURE;
   }
 
   *aRatio = nsSize(mSize.width, mSize.height);
@@ -401,17 +397,16 @@ RasterImage::GetIntrinsicRatio(nsSize* a
 
 NS_IMETHODIMP_(Orientation)
 RasterImage::GetOrientation()
 {
   return mOrientation;
 }
 
 //******************************************************************************
-/* unsigned short GetType(); */
 NS_IMETHODIMP
 RasterImage::GetType(uint16_t* aType)
 {
   NS_ENSURE_ARG_POINTER(aType);
 
   *aType = imgIContainer::TYPE_RASTER;
   return NS_OK;
 }
@@ -565,17 +560,16 @@ RasterImage::OnSurfaceDiscarded()
   MOZ_ASSERT(mProgressTracker);
 
   nsCOMPtr<nsIRunnable> runnable =
     NS_NewRunnableMethod(mProgressTracker, &ProgressTracker::OnDiscard);
   NS_DispatchToMainThread(runnable);
 }
 
 //******************************************************************************
-/* readonly attribute boolean animated; */
 NS_IMETHODIMP
 RasterImage::GetAnimated(bool* aAnimated)
 {
   if (mError) {
     return NS_ERROR_FAILURE;
   }
 
   NS_ENSURE_ARG_POINTER(aAnimated);
@@ -594,17 +588,16 @@ RasterImage::GetAnimated(bool* aAnimated
 
   // We know for sure
   *aAnimated = false;
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* [notxpcom] int32_t getFirstFrameDelay (); */
 NS_IMETHODIMP_(int32_t)
 RasterImage::GetFirstFrameDelay()
 {
   if (mError) {
     return -1;
   }
 
   bool animated = false;
@@ -986,17 +979,17 @@ RasterImage::SetAnimationMode(uint16_t a
 {
   if (mAnim) {
     mAnim->SetAnimationMode(aAnimationMode);
   }
   return SetAnimationModeInternal(aAnimationMode);
 }
 
 //******************************************************************************
-/* void StartAnimation () */
+
 nsresult
 RasterImage::StartAnimation()
 {
   if (mError) {
     return NS_ERROR_FAILURE;
   }
 
   MOZ_ASSERT(ShouldAnimate(), "Should not animate!");
@@ -1018,17 +1011,16 @@ RasterImage::StartAnimation()
   // We need to set the time that this initial frame was first displayed, as
   // this is used in AdvanceFrame().
   mAnim->InitAnimationFrameTimeIfNecessary();
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* void stopAnimation (); */
 nsresult
 RasterImage::StopAnimation()
 {
   MOZ_ASSERT(mAnimating, "Should be animating!");
 
   nsresult rv = NS_OK;
   if (mError) {
     rv = NS_ERROR_FAILURE;
@@ -1036,17 +1028,16 @@ RasterImage::StopAnimation()
     mAnim->SetAnimationFrameTime(TimeStamp());
   }
 
   mAnimating = false;
   return rv;
 }
 
 //******************************************************************************
-/* void resetAnimation (); */
 NS_IMETHODIMP
 RasterImage::ResetAnimation()
 {
   if (mError) {
     return NS_ERROR_FAILURE;
     }
 
   mPendingAnimation = false;
@@ -1279,24 +1270,24 @@ RasterImage::Discard()
 
 bool
 RasterImage::CanDiscard() {
   return mHasSourceData &&       // ...have the source data...
          !mAnim;                 // Can never discard animated images
 }
 
 //******************************************************************************
-/* void requestDecode() */
+
 NS_IMETHODIMP
 RasterImage::RequestDecode()
 {
   return RequestDecodeForSize(mSize, DECODE_FLAGS_DEFAULT);
 }
 
-/* void startDecode() */
+
 NS_IMETHODIMP
 RasterImage::StartDecoding()
 {
   return RequestDecodeForSize(mSize, FLAG_SYNC_DECODE_IF_FAST);
 }
 
 NS_IMETHODIMP
 RasterImage::RequestDecodeForSize(const IntSize& aSize, uint32_t aFlags)
@@ -1769,17 +1760,17 @@ RasterImage::Draw(gfxContext* aContext,
                             int32_t(drawLatency.ToMicroseconds()));
       mDrawStartTime = TimeStamp();
   }
 
   return result;
 }
 
 //******************************************************************************
-/* void lockImage() */
+
 NS_IMETHODIMP
 RasterImage::LockImage()
 {
   MOZ_ASSERT(NS_IsMainThread(),
              "Main thread to encourage serialization with UnlockImage");
   if (mError) {
     return NS_ERROR_FAILURE;
   }
@@ -1791,17 +1782,17 @@ RasterImage::LockImage()
   if (mLockCount == 1) {
     SurfaceCache::LockImage(ImageKey(this));
   }
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* void unlockImage() */
+
 NS_IMETHODIMP
 RasterImage::UnlockImage()
 {
   MOZ_ASSERT(NS_IsMainThread(),
              "Main thread to encourage serialization with LockImage");
   if (mError) {
     return NS_ERROR_FAILURE;
   }
@@ -1820,17 +1811,17 @@ RasterImage::UnlockImage()
   if (mLockCount == 0 ) {
     SurfaceCache::UnlockImage(ImageKey(this));
   }
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* void requestDiscard() */
+
 NS_IMETHODIMP
 RasterImage::RequestDiscard()
 {
   if (mDiscardable &&      // Enabled at creation time...
       mLockCount == 0 &&   // ...not temporarily disabled...
       CanDiscard()) {
     Discard();
   }
@@ -1900,17 +1891,16 @@ RasterImage::HandleErrorWorker::Run()
 
 bool
 RasterImage::ShouldAnimate()
 {
   return ImageResource::ShouldAnimate() && GetNumFrames() >= 2 &&
          !mAnimationFinished;
 }
 
-/* readonly attribute uint32_t framesNotified; */
 #ifdef DEBUG
 NS_IMETHODIMP
 RasterImage::GetFramesNotified(uint32_t* aFramesNotified)
 {
   NS_ENSURE_ARG_POINTER(aFramesNotified);
 
   *aFramesNotified = mFramesNotified;
 
--- a/image/SVGDocumentWrapper.cpp
+++ b/image/SVGDocumentWrapper.cpp
@@ -209,17 +209,16 @@ SVGDocumentWrapper::OnDataAvailable(nsIR
                                     uint32_t count)
 {
   return mListener->OnDataAvailable(aRequest, ctxt, inStr,
                                     sourceOffset, count);
 }
 
 /** nsIRequestObserver methods **/
 
-/* void onStartRequest (in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 SVGDocumentWrapper::OnStartRequest(nsIRequest* aRequest, nsISupports* ctxt)
 {
   nsresult rv = SetupViewer(aRequest,
                             getter_AddRefs(mViewer),
                             getter_AddRefs(mLoadGroup));
 
   if (NS_SUCCEEDED(rv) &&
--- a/image/VectorImage.cpp
+++ b/image/VectorImage.cpp
@@ -487,33 +487,31 @@ VectorImage::SetAnimationStartTime(const
 {
   // We don't care about animation start time.
 }
 
 //------------------------------------------------------------------------------
 // imgIContainer methods
 
 //******************************************************************************
-/* readonly attribute int32_t width; */
 NS_IMETHODIMP
 VectorImage::GetWidth(int32_t* aWidth)
 {
   if (mError || !mIsFullyLoaded) {
     *aWidth = -1;
   } else {
     SVGSVGElement* rootElem = mSVGDocumentWrapper->GetRootSVGElem();
     MOZ_ASSERT(rootElem, "Should have a root SVG elem, since we finished "
                          "loading without errors");
     *aWidth = rootElem->GetIntrinsicWidth();
   }
   return *aWidth >= 0 ? NS_OK : NS_ERROR_FAILURE;
 }
 
 //******************************************************************************
-/* [notxpcom] void requestRefresh ([const] in TimeStamp aTime); */
 NS_IMETHODIMP_(void)
 VectorImage::RequestRefresh(const TimeStamp& aTime)
 {
   if (HadRecentRefresh(aTime)) {
     return;
   }
 
   EvaluateAnimation();
@@ -553,33 +551,31 @@ VectorImage::SendInvalidationNotificatio
 
 NS_IMETHODIMP_(IntRect)
 VectorImage::GetImageSpaceInvalidationRect(const IntRect& aRect)
 {
   return aRect;
 }
 
 //******************************************************************************
-/* readonly attribute int32_t height; */
 NS_IMETHODIMP
 VectorImage::GetHeight(int32_t* aHeight)
 {
   if (mError || !mIsFullyLoaded) {
     *aHeight = -1;
   } else {
     SVGSVGElement* rootElem = mSVGDocumentWrapper->GetRootSVGElem();
     MOZ_ASSERT(rootElem, "Should have a root SVG elem, since we finished "
                          "loading without errors");
     *aHeight = rootElem->GetIntrinsicHeight();
   }
   return *aHeight >= 0 ? NS_OK : NS_ERROR_FAILURE;
 }
 
 //******************************************************************************
-/* [noscript] readonly attribute nsSize intrinsicSize; */
 NS_IMETHODIMP
 VectorImage::GetIntrinsicSize(nsSize* aSize)
 {
   if (mError || !mIsFullyLoaded) {
     return NS_ERROR_FAILURE;
   }
 
   nsIFrame* rootFrame = mSVGDocumentWrapper->GetRootLayoutFrame();
@@ -595,17 +591,16 @@ VectorImage::GetIntrinsicSize(nsSize* aS
   if (rfSize.height.GetUnit() == eStyleUnit_Coord) {
     aSize->height = rfSize.height.GetCoordValue();
   }
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* [noscript] readonly attribute nsSize intrinsicRatio; */
 NS_IMETHODIMP
 VectorImage::GetIntrinsicRatio(nsSize* aRatio)
 {
   if (mError || !mIsFullyLoaded) {
     return NS_ERROR_FAILURE;
   }
 
   nsIFrame* rootFrame = mSVGDocumentWrapper->GetRootLayoutFrame();
@@ -619,41 +614,38 @@ VectorImage::GetIntrinsicRatio(nsSize* a
 
 NS_IMETHODIMP_(Orientation)
 VectorImage::GetOrientation()
 {
   return Orientation();
 }
 
 //******************************************************************************
-/* readonly attribute unsigned short type; */
 NS_IMETHODIMP
 VectorImage::GetType(uint16_t* aType)
 {
   NS_ENSURE_ARG_POINTER(aType);
 
   *aType = imgIContainer::TYPE_VECTOR;
   return NS_OK;
 }
 
 //******************************************************************************
-/* readonly attribute boolean animated; */
 NS_IMETHODIMP
 VectorImage::GetAnimated(bool* aAnimated)
 {
   if (mError || !mIsFullyLoaded) {
     return NS_ERROR_FAILURE;
   }
 
   *aAnimated = mSVGDocumentWrapper->IsAnimated();
   return NS_OK;
 }
 
 //******************************************************************************
-/* [notxpcom] int32_t getFirstFrameDelay (); */
 int32_t
 VectorImage::GetFirstFrameDelay()
 {
   if (mError) {
     return -1;
   }
 
   if (!mSVGDocumentWrapper->IsAnimated()) {
@@ -725,17 +717,16 @@ VectorImage::GetFrame(uint32_t aWhichFra
 
 NS_IMETHODIMP_(bool)
 VectorImage::IsImageContainerAvailable(LayerManager* aManager, uint32_t aFlags)
 {
   return false;
 }
 
 //******************************************************************************
-/* [noscript] ImageContainer getImageContainer(); */
 NS_IMETHODIMP_(already_AddRefed<ImageContainer>)
 VectorImage::GetImageContainer(LayerManager* aManager, uint32_t aFlags)
 {
   return nullptr;
 }
 
 struct SVGDrawingParameters
 {
@@ -953,17 +944,17 @@ VectorImage::RecoverFromLossOfSurfaces()
 {
   NS_WARNING("An imgFrame became invalid. Attempting to recover...");
 
   // Discard all existing frames, since they're probably all now invalid.
   SurfaceCache::RemoveImage(ImageKey(this));
 }
 
 //******************************************************************************
-/* void requestDecode() */
+
 NS_IMETHODIMP
 VectorImage::RequestDecode()
 {
   // Nothing to do for SVG images
   return NS_OK;
 }
 
 NS_IMETHODIMP
@@ -978,17 +969,17 @@ VectorImage::RequestDecodeForSize(const 
 {
   // Nothing to do for SVG images, though in theory we could rasterize to the
   // provided size ahead of time if we supported off-main-thread SVG
   // rasterization...
   return NS_OK;
 }
 
 //******************************************************************************
-/* void lockImage() */
+
 NS_IMETHODIMP
 VectorImage::LockImage()
 {
   MOZ_ASSERT(NS_IsMainThread());
 
   if (mError) {
     return NS_ERROR_FAILURE;
   }
@@ -999,17 +990,17 @@ VectorImage::LockImage()
     // Lock this image's surfaces in the SurfaceCache.
     SurfaceCache::LockImage(ImageKey(this));
   }
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* void unlockImage() */
+
 NS_IMETHODIMP
 VectorImage::UnlockImage()
 {
   MOZ_ASSERT(NS_IsMainThread());
 
   if (mError) {
     return NS_ERROR_FAILURE;
   }
@@ -1025,17 +1016,17 @@ VectorImage::UnlockImage()
     // Unlock this image's surfaces in the SurfaceCache.
     SurfaceCache::UnlockImage(ImageKey(this));
   }
 
   return NS_OK;
 }
 
 //******************************************************************************
-/* void requestDiscard() */
+
 NS_IMETHODIMP
 VectorImage::RequestDiscard()
 {
   MOZ_ASSERT(NS_IsMainThread());
 
   if (mDiscardable && mLockCount == 0) {
     SurfaceCache::RemoveImage(ImageKey(this));
     mProgressTracker->OnDiscard();
@@ -1050,17 +1041,16 @@ VectorImage::OnSurfaceDiscarded()
   MOZ_ASSERT(mProgressTracker);
 
   nsCOMPtr<nsIRunnable> runnable =
     NS_NewRunnableMethod(mProgressTracker, &ProgressTracker::OnDiscard);
   NS_DispatchToMainThread(runnable);
 }
 
 //******************************************************************************
-/* void resetAnimation (); */
 NS_IMETHODIMP
 VectorImage::ResetAnimation()
 {
   if (mError) {
     return NS_ERROR_FAILURE;
   }
 
   if (!mIsFullyLoaded || !mHaveAnimations) {
@@ -1080,17 +1070,16 @@ VectorImage::GetFrameIndex(uint32_t aWhi
          ? 0.0f
          : mSVGDocumentWrapper->GetCurrentTime();
 }
 
 //------------------------------------------------------------------------------
 // nsIRequestObserver methods
 
 //******************************************************************************
-/* void onStartRequest(in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 VectorImage::OnStartRequest(nsIRequest* aRequest, nsISupports* aCtxt)
 {
   MOZ_ASSERT(!mSVGDocumentWrapper,
              "Repeated call to OnStartRequest -- can this happen?");
 
   mSVGDocumentWrapper = new SVGDocumentWrapper();
   nsresult rv = mSVGDocumentWrapper->OnStartRequest(aRequest, aCtxt);
--- a/image/encoders/jpeg/nsJPEGEncoder.cpp
+++ b/image/encoders/jpeg/nsJPEGEncoder.cpp
@@ -233,43 +233,40 @@ nsJPEGEncoder::AddImageFrame(const uint8
 
 NS_IMETHODIMP
 nsJPEGEncoder::EndImageEncode()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 
-/* void close (); */
 NS_IMETHODIMP
 nsJPEGEncoder::Close()
 {
   if (mImageBuffer != nullptr) {
     free(mImageBuffer);
     mImageBuffer = nullptr;
     mImageBufferSize = 0;
     mImageBufferUsed = 0;
     mImageBufferReadPoint = 0;
   }
   return NS_OK;
 }
 
-/* unsigned long available (); */
 NS_IMETHODIMP
 nsJPEGEncoder::Available(uint64_t* _retval)
 {
   if (!mImageBuffer) {
     return NS_BASE_STREAM_CLOSED;
   }
 
   *_retval = mImageBufferUsed - mImageBufferReadPoint;
   return NS_OK;
 }
 
-/* [noscript] unsigned long read (in charPtr aBuf, in unsigned long aCount); */
 NS_IMETHODIMP
 nsJPEGEncoder::Read(char* aBuf, uint32_t aCount, uint32_t* _retval)
 {
   return ReadSegments(NS_CopySegmentToBuffer, aBuf, aCount, _retval);
 }
 
 /* [noscript] unsigned long readSegments (in nsWriteSegmentFun aWriter, in
    voidPtr aClosure, in unsigned long aCount); */
@@ -297,17 +294,16 @@ nsJPEGEncoder::ReadSegments(nsWriteSegme
     NS_ASSERTION(*_retval <= aCount, "bad write count");
     mImageBufferReadPoint += *_retval;
   }
 
   // errors returned from the writer end here!
   return NS_OK;
 }
 
-/* boolean isNonBlocking (); */
 NS_IMETHODIMP
 nsJPEGEncoder::IsNonBlocking(bool* _retval)
 {
   *_retval = true;
   return NS_OK;
 }
 
 NS_IMETHODIMP
--- a/image/encoders/png/nsPNGEncoder.cpp
+++ b/image/encoders/png/nsPNGEncoder.cpp
@@ -519,31 +519,29 @@ nsPNGEncoder::ParseOptions(const nsAStri
     }
   }
 
 #endif
   return NS_OK;
 }
 
 
-/* void close (); */
 NS_IMETHODIMP
 nsPNGEncoder::Close()
 {
   if (mImageBuffer != nullptr) {
     free(mImageBuffer);
     mImageBuffer = nullptr;
     mImageBufferSize = 0;
     mImageBufferUsed = 0;
     mImageBufferReadPoint = 0;
   }
   return NS_OK;
 }
 
-/* unsigned long available (); */
 NS_IMETHODIMP
 nsPNGEncoder::Available(uint64_t* _retval)
 {
   if (!mImageBuffer) {
     return NS_BASE_STREAM_CLOSED;
     }
 
   *_retval = mImageBufferUsed - mImageBufferReadPoint;
@@ -587,17 +585,16 @@ nsPNGEncoder::ReadSegments(nsWriteSegmen
     NS_ASSERTION(*_retval <= aCount, "bad write count");
     mImageBufferReadPoint += *_retval;
   }
 
   // errors returned from the writer end here!
   return NS_OK;
 }
 
-/* boolean isNonBlocking (); */
 NS_IMETHODIMP
 nsPNGEncoder::IsNonBlocking(bool* _retval)
 {
   *_retval = true;
   return NS_OK;
 }
 
 NS_IMETHODIMP
--- a/image/imgLoader.cpp
+++ b/image/imgLoader.cpp
@@ -1311,39 +1311,36 @@ void imgLoader::ReadAcceptHeaderPref()
   if (accept) {
     mAcceptHeader = accept;
   } else {
     mAcceptHeader =
         IMAGE_PNG "," IMAGE_WILDCARD ";q=0.8," ANY_WILDCARD ";q=0.5";
   }
 }
 
-/* void clearCache (in boolean chrome); */
 NS_IMETHODIMP
 imgLoader::ClearCache(bool chrome)
 {
   if (chrome) {
     return ClearChromeImageCache();
   } else {
     return ClearImageCache();
   }
 }
 
-/* void removeEntry(in nsIURI uri); */
 NS_IMETHODIMP
 imgLoader::RemoveEntry(nsIURI* aURI)
 {
   if (aURI && RemoveFromCache(ImageCacheKey(aURI))) {
     return NS_OK;
   }
 
   return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* imgIRequest findEntry(in nsIURI uri); */
 NS_IMETHODIMP
 imgLoader::FindEntryProperties(nsIURI* uri, nsIProperties** _retval)
 {
   *_retval = nullptr;
 
   ImageCacheKey key(uri);
   imgCacheTable& cache = GetCache(key);
 
@@ -2574,17 +2571,16 @@ ProxyListener::ProxyListener(nsIStreamLi
 ProxyListener::~ProxyListener()
 {
   /* destructor code */
 }
 
 
 /** nsIRequestObserver methods **/
 
-/* void onStartRequest (in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 ProxyListener::OnStartRequest(nsIRequest* aRequest, nsISupports* ctxt)
 {
   if (!mDestListener) {
     return NS_ERROR_FAILURE;
   }
 
   nsCOMPtr<nsIChannel> channel(do_QueryInterface(aRequest));
@@ -2721,17 +2717,16 @@ imgCacheValidator::AddProxy(imgRequestPr
   // the network.
   aProxy->AddToLoadGroup();
 
   mProxies.AppendObject(aProxy);
 }
 
 /** nsIRequestObserver methods **/
 
-/* void onStartRequest (in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 imgCacheValidator::OnStartRequest(nsIRequest* aRequest, nsISupports* ctxt)
 {
   // We may be holding on to a document, so ensure that it's released.
   nsCOMPtr<nsISupports> context = mContext.forget();
 
   // If for some reason we don't still have an existing request (probably
   // because OnStartRequest got delivered more than once), just bail.
--- a/image/imgRequest.cpp
+++ b/image/imgRequest.cpp
@@ -705,17 +705,16 @@ bool
 imgRequest::HadInsecureRedirect() const
 {
   MutexAutoLock lock(mMutex);
   return mHadInsecureRedirect;
 }
 
 /** nsIRequestObserver methods **/
 
-/* void onStartRequest (in nsIRequest request, in nsISupports ctxt); */
 NS_IMETHODIMP
 imgRequest::OnStartRequest(nsIRequest* aRequest, nsISupports* ctxt)
 {
   LOG_SCOPE(GetImgLog(), "imgRequest::OnStartRequest");
 
   nsRefPtr<Image> image;
 
   // Figure out if we're multipart.
--- a/image/imgRequestProxy.cpp
+++ b/image/imgRequestProxy.cpp
@@ -276,44 +276,40 @@ imgRequestProxy::RemoveFromLoadGroup(boo
     // We're done with the loadgroup, release it.
     mLoadGroup = nullptr;
   }
 }
 
 
 /**  nsIRequest / imgIRequest methods **/
 
-/* readonly attribute wstring name; */
 NS_IMETHODIMP
 imgRequestProxy::GetName(nsACString& aName)
 {
   aName.Truncate();
 
   if (mURI) {
     mURI->GetSpec(aName);
   }
 
   return NS_OK;
 }
 
-/* boolean isPending (); */
 NS_IMETHODIMP
 imgRequestProxy::IsPending(bool* _retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* readonly attribute nsresult status; */
 NS_IMETHODIMP
 imgRequestProxy::GetStatus(nsresult* aStatus)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void cancel (in nsresult status); */
 NS_IMETHODIMP
 imgRequestProxy::Cancel(nsresult status)
 {
   if (mCanceled) {
     return NS_ERROR_FAILURE;
   }
 
   LOG_SCOPE(GetImgLog(), "imgRequestProxy::Cancel");
@@ -329,17 +325,16 @@ imgRequestProxy::DoCancel(nsresult statu
 {
   if (GetOwner()) {
     GetOwner()->RemoveProxy(this, status);
   }
 
   NullOutListener();
 }
 
-/* void cancelAndForgetObserver (in nsresult aStatus); */
 NS_IMETHODIMP
 imgRequestProxy::CancelAndForgetObserver(nsresult aStatus)
 {
   // If mCanceled is true but mListener is non-null, that means
   // someone called Cancel() on us but the imgCancelRunnable is still
   // pending.  We still need to null out mListener before returning
   // from this function in this case.  That means we want to do the
   // RemoveProxy call right now, because we need to deliver the
@@ -368,17 +363,16 @@ imgRequestProxy::CancelAndForgetObserver
     NS_DispatchToCurrentThread(ev);
   }
 
   NullOutListener();
 
   return NS_OK;
 }
 
-/* void startDecode (); */
 NS_IMETHODIMP
 imgRequestProxy::StartDecoding()
 {
   // Flag this, so we know to transfer the request if our owner changes
   mDecodeRequested = true;
 
   nsRefPtr<Image> image = GetImage();
   if (image) {
@@ -387,17 +381,16 @@ imgRequestProxy::StartDecoding()
 
   if (GetOwner()) {
     GetOwner()->RequestDecode();
   }
 
   return NS_OK;
 }
 
-/* void requestDecode (); */
 NS_IMETHODIMP
 imgRequestProxy::RequestDecode()
 {
   // Flag this, so we know to transfer the request if our owner changes
   mDecodeRequested = true;
 
   nsRefPtr<Image> image = GetImage();
   if (image) {
@@ -407,43 +400,40 @@ imgRequestProxy::RequestDecode()
   if (GetOwner()) {
     GetOwner()->RequestDecode();
   }
 
   return NS_OK;
 }
 
 
-/* void lockImage (); */
 NS_IMETHODIMP
 imgRequestProxy::LockImage()
 {
   mLockCount++;
   nsRefPtr<Image> image = GetImage();
   if (image) {
     return image->LockImage();
   }
   return NS_OK;
 }
 
-/* void unlockImage (); */
 NS_IMETHODIMP
 imgRequestProxy::UnlockImage()
 {
   MOZ_ASSERT(mLockCount > 0, "calling unlock but no locks!");
 
   mLockCount--;
   nsRefPtr<Image> image = GetImage();
   if (image) {
     return image->UnlockImage();
   }
   return NS_OK;
 }
 
-/* void requestDiscard (); */
 NS_IMETHODIMP
 imgRequestProxy::RequestDiscard()
 {
   nsRefPtr<Image> image = GetImage();
   if (image) {
     return image->RequestDiscard();
   }
   return NS_OK;
@@ -482,61 +472,56 @@ imgRequestProxy::DecrementAnimationConsu
 void
 imgRequestProxy::ClearAnimationConsumers()
 {
   while (mAnimationConsumers > 0) {
     DecrementAnimationConsumers();
   }
 }
 
-/* void suspend (); */
 NS_IMETHODIMP
 imgRequestProxy::Suspend()
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void resume (); */
 NS_IMETHODIMP
 imgRequestProxy::Resume()
 {
     return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* attribute nsILoadGroup loadGroup */
 NS_IMETHODIMP
 imgRequestProxy::GetLoadGroup(nsILoadGroup** loadGroup)
 {
   NS_IF_ADDREF(*loadGroup = mLoadGroup.get());
   return NS_OK;
 }
 NS_IMETHODIMP
 imgRequestProxy::SetLoadGroup(nsILoadGroup* loadGroup)
 {
   mLoadGroup = loadGroup;
   return NS_OK;
 }
 
-/* attribute nsLoadFlags loadFlags */
 NS_IMETHODIMP
 imgRequestProxy::GetLoadFlags(nsLoadFlags* flags)
 {
   *flags = mLoadFlags;
   return NS_OK;
 }
 NS_IMETHODIMP
 imgRequestProxy::SetLoadFlags(nsLoadFlags flags)
 {
   mLoadFlags = flags;
   return NS_OK;
 }
 
 /**  imgIRequest methods **/
 
-/* attribute imgIContainer image; */
 NS_IMETHODIMP
 imgRequestProxy::GetImage(imgIContainer** aImage)
 {
   NS_ENSURE_TRUE(aImage, NS_ERROR_NULL_POINTER);
   // It's possible that our owner has an image but hasn't notified us of it -
   // that'll happen if we get Canceled before the owner instantiates its image
   // (because Canceling unregisters us as a listener on mOwner). If we're
   // in that situation, just grab the image off of mOwner.
@@ -552,40 +537,37 @@ imgRequestProxy::GetImage(imgIContainer*
     return NS_ERROR_FAILURE;
   }
 
   imageToReturn.swap(*aImage);
 
   return NS_OK;
 }
 
-/* readonly attribute unsigned long imageStatus; */
 NS_IMETHODIMP
 imgRequestProxy::GetImageStatus(uint32_t* aStatus)
 {
   nsRefPtr<ProgressTracker> progressTracker = GetProgressTracker();
   *aStatus = progressTracker->GetImageStatus();
 
   return NS_OK;
 }
 
-/* readonly attribute nresult imageErrorCode; */
 NS_IMETHODIMP
 imgRequestProxy::GetImageErrorCode(nsresult* aStatus)
 {
   if (!GetOwner()) {
     return NS_ERROR_FAILURE;
   }
 
   *aStatus = GetOwner()->GetImageErrorCode();
 
   return NS_OK;
 }
 
-/* readonly attribute nsIURI URI; */
 NS_IMETHODIMP
 imgRequestProxy::GetURI(nsIURI** aURI)
 {
   MOZ_ASSERT(NS_IsMainThread(), "Must be on main thread to convert URI");
   nsCOMPtr<nsIURI> uri = mURI->ToIURI();
   uri.forget(aURI);
   return NS_OK;
 }
@@ -607,26 +589,24 @@ imgRequestProxy::GetURI(ImageURL** aURI)
     return NS_ERROR_FAILURE;
   }
 
   NS_ADDREF(*aURI = mURI);
 
   return NS_OK;
 }
 
-/* readonly attribute imgINotificationObserver notificationObserver; */
 NS_IMETHODIMP
 imgRequestProxy::GetNotificationObserver(imgINotificationObserver** aObserver)
 {
   *aObserver = mListener;
   NS_IF_ADDREF(*aObserver);
   return NS_OK;
 }
 
-/* readonly attribute string mimeType; */
 NS_IMETHODIMP
 imgRequestProxy::GetMimeType(char** aMimeType)
 {
   if (!GetOwner()) {
     return NS_ERROR_FAILURE;
   }
 
   const char* type = GetOwner()->GetMimeType();
@@ -706,42 +686,39 @@ imgRequestProxy::PerformClone(imgINotifi
 
   // This is wrong!!! We need to notify asynchronously, but there's code that
   // assumes that we don't. This will be fixed in bug 580466.
   clone->SyncNotifyListener();
 
   return NS_OK;
 }
 
-/* readonly attribute nsIPrincipal imagePrincipal; */
 NS_IMETHODIMP
 imgRequestProxy::GetImagePrincipal(nsIPrincipal** aPrincipal)
 {
   if (!GetOwner()) {
     return NS_ERROR_FAILURE;
   }
 
   NS_ADDREF(*aPrincipal = GetOwner()->GetPrincipal());
   return NS_OK;
 }
 
-/* readonly attribute bool multipart; */
 NS_IMETHODIMP
 imgRequestProxy::GetMultipart(bool* aMultipart)
 {
   if (!GetOwner()) {
     return NS_ERROR_FAILURE;
   }
 
   *aMultipart = GetOwner()->GetMultipart();
 
   return NS_OK;
 }
 
-/* readonly attribute int32_t CORSMode; */
 NS_IMETHODIMP
 imgRequestProxy::GetCORSMode(int32_t* aCorsMode)
 {
   if (!GetOwner()) {
     return NS_ERROR_FAILURE;
   }
 
   *aCorsMode = GetOwner()->GetCORSMode();
--- a/intl/lwbrk/nsSemanticUnitScanner.cpp
+++ b/intl/lwbrk/nsSemanticUnitScanner.cpp
@@ -13,24 +13,22 @@ nsSemanticUnitScanner::nsSemanticUnitSca
 }
 
 nsSemanticUnitScanner::~nsSemanticUnitScanner()
 {
   /* destructor code */
 }
 
 
-/* void start (in string characterSet); */
 NS_IMETHODIMP nsSemanticUnitScanner::Start(const char *characterSet)
 {
     // do nothing for now.
     return NS_OK;
 }
 
-/* void next (in wstring text, in long length, in long pos, out boolean hasMoreUnits, out long begin, out long end); */
 NS_IMETHODIMP nsSemanticUnitScanner::Next(const char16_t *text, int32_t length, int32_t pos, bool isLastBuffer, int32_t *begin, int32_t *end, bool *_retval)
 {
     // xxx need to bullet proff and check input pointer 
     //  make sure begin, end and _retval is not nullptr here
 
     // if we reach the end, just return
     if (pos >= length) {
        *begin = pos;
--- a/intl/strres/nsStringBundle.cpp
+++ b/intl/strres/nsStringBundle.cpp
@@ -186,17 +186,16 @@ nsStringBundle::FormatStringFromName(con
   if (NS_FAILED(rv)) return rv;
 
   return FormatString(formatStr.get(), aParams, aLength, aResult);
 }
 
 
 NS_IMPL_ISUPPORTS(nsStringBundle, nsIStringBundle)
 
-/* void GetStringFromID (in long aID, out wstring aResult); */
 NS_IMETHODIMP
 nsStringBundle::GetStringFromID(int32_t aID, char16_t **aResult)
 {
   nsresult rv;
   rv = LoadProperties();
   if (NS_FAILED(rv)) return rv;
 
   *aResult = nullptr;
@@ -206,17 +205,16 @@ nsStringBundle::GetStringFromID(int32_t 
   NS_ENSURE_SUCCESS(rv, rv);
 
   *aResult = ToNewUnicode(tmpstr);
   NS_ENSURE_TRUE(*aResult, NS_ERROR_OUT_OF_MEMORY);
 
   return NS_OK;
 }
 
-/* void GetStringFromName (in wstring aName, out wstring aResult); */
 NS_IMETHODIMP
 nsStringBundle::GetStringFromName(const char16_t *aName, char16_t **aResult)
 {
   NS_ENSURE_ARG_POINTER(aName);
   NS_ENSURE_ARG_POINTER(aResult);
 
   nsresult rv;
   rv = LoadProperties();
--- a/intl/uconv/nsScriptableUConv.cpp
+++ b/intl/uconv/nsScriptableUConv.cpp
@@ -50,17 +50,16 @@ nsScriptableUnicodeConverter::ConvertFro
       return NS_OK;
     }
     free(*_retval);
   }
   *_retval = nullptr;
   return NS_ERROR_FAILURE;
 }
 
-/* ACString ConvertFromUnicode (in AString src); */
 NS_IMETHODIMP
 nsScriptableUnicodeConverter::ConvertFromUnicode(const nsAString& aSrc,
                                                  nsACString& _retval)
 {
   int32_t len;
   char* str;
   nsresult rv = ConvertFromUnicodeWithLength(aSrc, &len, &str);
   if (NS_SUCCEEDED(rv)) {
@@ -90,17 +89,16 @@ nsScriptableUnicodeConverter::FinishWith
     *aLength = finLength;
   else
     free(*_retval);
 
   return rv;
 
 }
 
-/* ACString Finish(); */
 NS_IMETHODIMP
 nsScriptableUnicodeConverter::Finish(nsACString& _retval)
 {
   // The documentation for this method says it should be called after
   // ConvertFromUnicode(). However, our own tests called it after
   // convertFromByteArray(), i.e. when *decoding*.
   // Assuming that there exists extensions that similarly call
   // this at the wrong time, let's deal. In general, it is a design
@@ -117,17 +115,16 @@ nsScriptableUnicodeConverter::Finish(nsA
     if (!_retval.Assign(str, len, mozilla::fallible)) {
       rv = NS_ERROR_OUT_OF_MEMORY;
     }
     free(str);
   }
   return rv;
 }
 
-/* AString ConvertToUnicode (in ACString src); */
 NS_IMETHODIMP
 nsScriptableUnicodeConverter::ConvertToUnicode(const nsACString& aSrc, nsAString& _retval)
 {
   nsACString::const_iterator i;
   aSrc.BeginReading(i);
   return ConvertFromByteArray(reinterpret_cast<const uint8_t*>(i.get()),
                               aSrc.Length(),
                               _retval);
@@ -198,17 +195,16 @@ nsScriptableUnicodeConverter::ConvertToB
   *_aData = reinterpret_cast<uint8_t*>(malloc(str.Length()));
   if (!*_aData)
     return NS_ERROR_OUT_OF_MEMORY;
   memcpy(*_aData, str.get(), str.Length());
   *aLen = str.Length();
   return NS_OK;
 }
 
-/* nsIInputStream convertToInputStream(in AString aString); */
 NS_IMETHODIMP
 nsScriptableUnicodeConverter::ConvertToInputStream(const nsAString& aString,
                                                    nsIInputStream** _retval)
 {
   nsresult rv;
   nsCOMPtr<nsIStringInputStream> inputStream =
     do_CreateInstance("@mozilla.org/io/string-input-stream;1", &rv);
   if (NS_FAILED(rv))
@@ -225,17 +221,16 @@ nsScriptableUnicodeConverter::ConvertToI
     free(data);
     return rv;
   }
 
   NS_ADDREF(*_retval = inputStream);
   return rv;
 }
 
-/* attribute string charset; */
 NS_IMETHODIMP
 nsScriptableUnicodeConverter::GetCharset(char * *aCharset)
 {
   *aCharset = ToNewCString(mCharset);
   if (!*aCharset)
     return NS_ERROR_OUT_OF_MEMORY;
 
   return NS_OK;
--- a/js/xpconnect/loader/mozJSComponentLoader.cpp
+++ b/js/xpconnect/loader/mozJSComponentLoader.cpp
@@ -1046,17 +1046,16 @@ mozJSComponentLoader::ImportInto(const n
     RootedObject targetObject(callercx, aTargetObj);
     RootedObject global(callercx);
     rv = ImportInto(aLocation, targetObject, callercx, &global);
     NS_ENSURE_SUCCESS(rv, rv);
     *_retval = global;
     return NS_OK;
 }
 
-/* boolean isModuleLoaded (in AUTF8String registryLocation); */
 NS_IMETHODIMP
 mozJSComponentLoader::IsModuleLoaded(const nsACString& aLocation,
                                      bool* retval)
 {
     MOZ_ASSERT(nsContentUtils::IsCallerChrome());
 
     nsresult rv;
     if (!mInitialized) {
--- a/js/xpconnect/public/xpc_map_end.h
+++ b/js/xpconnect/public/xpc_map_end.h
@@ -68,17 +68,16 @@ XPC_MAP_CLASSNAME::GetScriptableFlags()
     XPC_MAP_FLAGS |
 #endif
     0;
 }
 
 /**************************************************************/
 
 #ifndef XPC_MAP_WANT_PRECREATE
-/* void preCreate (in nsISupports nativeObj, in JSContextPtr cx, in JSObjectPtr globalObj, out JSObjectPtr parentObj); */
 NS_IMETHODIMP XPC_MAP_CLASSNAME::PreCreate(nsISupports* nativeObj, JSContext * cx, JSObject * globalObj, JSObject * *parentObj)
     {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
 #endif
 
 #ifndef XPC_MAP_WANT_ADDPROPERTY
 NS_IMETHODIMP XPC_MAP_CLASSNAME::AddProperty(nsIXPConnectWrappedNative* wrapper, JSContext * cx, JSObject * obj, jsid id, JS::HandleValue val, bool* _retval)
     {NS_ERROR("never called"); return NS_ERROR_NOT_IMPLEMENTED;}
 #endif
--- a/js/xpconnect/src/XPCCallContext.cpp
+++ b/js/xpconnect/src/XPCCallContext.cpp
@@ -228,69 +228,62 @@ XPCCallContext::~XPCCallContext()
     if (mXPCContext) {
         mXPCContext->SetCallingLangType(mPrevCallerLanguage);
 
         DebugOnly<XPCCallContext*> old = XPCJSRuntime::Get()->SetCallContext(mPrevCallContext);
         MOZ_ASSERT(old == this, "bad pop from per thread data");
     }
 }
 
-/* readonly attribute nsISupports Callee; */
 NS_IMETHODIMP
 XPCCallContext::GetCallee(nsISupports * *aCallee)
 {
     nsCOMPtr<nsISupports> rval = mWrapper ? mWrapper->GetIdentityObject() : nullptr;
     rval.forget(aCallee);
     return NS_OK;
 }
 
-/* readonly attribute uint16_t CalleeMethodIndex; */
 NS_IMETHODIMP
 XPCCallContext::GetCalleeMethodIndex(uint16_t* aCalleeMethodIndex)
 {
     *aCalleeMethodIndex = mMethodIndex;
     return NS_OK;
 }
 
-/* readonly attribute XPCNativeInterface CalleeInterface; */
 NS_IMETHODIMP
 XPCCallContext::GetCalleeInterface(nsIInterfaceInfo * *aCalleeInterface)
 {
     nsCOMPtr<nsIInterfaceInfo> rval = mInterface->GetInterfaceInfo();
     rval.forget(aCalleeInterface);
     return NS_OK;
 }
 
-/* readonly attribute nsIClassInfo CalleeClassInfo; */
 NS_IMETHODIMP
 XPCCallContext::GetCalleeClassInfo(nsIClassInfo * *aCalleeClassInfo)
 {
     nsCOMPtr<nsIClassInfo> rval = mWrapper ? mWrapper->GetClassInfo() : nullptr;
     rval.forget(aCalleeClassInfo);
     return NS_OK;
 }
 
-/* readonly attribute JSContextPtr JSContext; */
 NS_IMETHODIMP
 XPCCallContext::GetJSContext(JSContext * *aJSContext)
 {
     JS_AbortIfWrongThread(JS_GetRuntime(mJSContext));
     *aJSContext = mJSContext;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t Argc; */
 NS_IMETHODIMP
 XPCCallContext::GetArgc(uint32_t* aArgc)
 {
     *aArgc = (uint32_t) mArgc;
     return NS_OK;
 }
 
-/* readonly attribute JSValPtr ArgvPtr; */
 NS_IMETHODIMP
 XPCCallContext::GetArgvPtr(Value** aArgvPtr)
 {
     *aArgvPtr = mArgv;
     return NS_OK;
 }
 
 NS_IMETHODIMP
--- a/js/xpconnect/src/XPCComponents.cpp
+++ b/js/xpconnect/src/XPCComponents.cpp
@@ -144,60 +144,54 @@ nsXPCComponents_Interfaces::GetInterface
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_Interfaces";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetFlags(uint32_t* aFlags)
 {
     // Mark ourselves as a DOM object so that instances may be created in
     // unprivileged scopes.
     *aFlags = nsIClassInfo::DOM_OBJECT;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_Interfaces::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_Interfaces::nsXPCComponents_Interfaces()
 {
@@ -377,60 +371,54 @@ nsXPCComponents_InterfacesByID::GetInter
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_InterfacesByID";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetFlags(uint32_t* aFlags)
 {
     // Mark ourselves as a DOM object so that instances may be created in
     // unprivileged scopes.
     *aFlags = nsIClassInfo::DOM_OBJECT;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_InterfacesByID::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_InterfacesByID::nsXPCComponents_InterfacesByID()
 {
@@ -612,58 +600,52 @@ nsXPCComponents_Classes::GetInterfaces(u
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_Classes";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_Classes::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_Classes::nsXPCComponents_Classes()
 {
@@ -827,58 +809,52 @@ nsXPCComponents_ClassesByID::GetInterfac
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_ClassesByID";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_ClassesByID::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_ClassesByID::nsXPCComponents_ClassesByID()
 {
@@ -1065,60 +1041,54 @@ nsXPCComponents_Results::GetInterfaces(u
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_Results";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetFlags(uint32_t* aFlags)
 {
     // Mark ourselves as a DOM object so that instances may be created in
     // unprivileged scopes.
     *aFlags = nsIClassInfo::DOM_OBJECT;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_Results::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_Results::nsXPCComponents_Results()
 {
@@ -1263,58 +1233,52 @@ nsXPCComponents_ID::GetInterfaces(uint32
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_ID";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_ID::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_ID::nsXPCComponents_ID()
 {
@@ -1340,26 +1304,24 @@ NS_IMPL_RELEASE(nsXPCComponents_ID)
 #define XPC_MAP_QUOTED_CLASSNAME   "nsXPCComponents_ID"
 #define                             XPC_MAP_WANT_CALL
 #define                             XPC_MAP_WANT_CONSTRUCT
 #define                             XPC_MAP_WANT_HASINSTANCE
 #define XPC_MAP_FLAGS               nsIXPCScriptable::ALLOW_PROP_MODS_DURING_RESOLVE
 #include "xpc_map_end.h" /* This will #undef the above */
 
 
-/* bool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_ID::Call(nsIXPConnectWrappedNative* wrapper, JSContext* cx, JSObject* objArg,
                          const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
-/* bool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_ID::Construct(nsIXPConnectWrappedNative* wrapper, JSContext* cx, JSObject* objArg,
                               const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
@@ -1399,17 +1361,16 @@ nsXPCComponents_ID::CallOrConstruct(nsIX
     JSObject* newobj = xpc_NewIDObject(cx, obj, id);
     if (!newobj)
         return NS_ERROR_UNEXPECTED;
 
     args.rval().setObject(*newobj);
     return NS_OK;
 }
 
-/* bool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in jsval val, out bool bp); */
 NS_IMETHODIMP
 nsXPCComponents_ID::HasInstance(nsIXPConnectWrappedNative* wrapper,
                                 JSContext* cx, JSObject* obj,
                                 HandleValue val, bool* bp, bool* _retval)
 {
     if (bp)
         *bp = JSValIsInterfaceOfType(cx, val, NS_GET_IID(nsIJSID));
     return NS_OK;
@@ -1471,58 +1432,52 @@ nsXPCComponents_Exception::GetInterfaces
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_Exception";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_Exception::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_Exception::nsXPCComponents_Exception()
 {
@@ -1548,26 +1503,24 @@ NS_IMPL_RELEASE(nsXPCComponents_Exceptio
 #define XPC_MAP_QUOTED_CLASSNAME   "nsXPCComponents_Exception"
 #define                             XPC_MAP_WANT_CALL
 #define                             XPC_MAP_WANT_CONSTRUCT
 #define                             XPC_MAP_WANT_HASINSTANCE
 #define XPC_MAP_FLAGS               nsIXPCScriptable::ALLOW_PROP_MODS_DURING_RESOLVE
 #include "xpc_map_end.h" /* This will #undef the above */
 
 
-/* bool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_Exception::Call(nsIXPConnectWrappedNative* wrapper, JSContext* cx, JSObject* objArg,
                                 const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
-/* bool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_Exception::Construct(nsIXPConnectWrappedNative* wrapper, JSContext* cx,
                                      JSObject* objArg, const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
@@ -1751,17 +1704,16 @@ nsXPCComponents_Exception::CallOrConstru
     if (NS_FAILED(xpc->WrapNative(cx, obj, e, NS_GET_IID(nsIXPCException), newObj.address())) || !newObj) {
         return ThrowAndFail(NS_ERROR_XPC_CANT_CREATE_WN, cx, _retval);
     }
 
     args.rval().setObject(*newObj);
     return NS_OK;
 }
 
-/* bool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in jsval val, out bool bp); */
 NS_IMETHODIMP
 nsXPCComponents_Exception::HasInstance(nsIXPConnectWrappedNative* wrapper,
                                        JSContext * cx, JSObject * obj,
                                        HandleValue val, bool* bp,
                                        bool* _retval)
 {
     using namespace mozilla::dom;
 
@@ -1847,58 +1799,52 @@ nsXPCConstructor::GetInterfaces(uint32_t
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCConstructor::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCConstructor::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCConstructor::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCConstructor";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCConstructor::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCConstructor::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCConstructor::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCConstructor::nsXPCConstructor(nsIJSCID* aClassID,
                                    nsIJSIID* aInterfaceID,
@@ -1912,35 +1858,32 @@ nsXPCConstructor::nsXPCConstructor(nsIJS
 }
 
 nsXPCConstructor::~nsXPCConstructor()
 {
     if (mInitializer)
         free(mInitializer);
 }
 
-/* readonly attribute nsIJSCID classID; */
 NS_IMETHODIMP
 nsXPCConstructor::GetClassID(nsIJSCID * *aClassID)
 {
     nsRefPtr<nsIJSCID> rval = mClassID;
     rval.forget(aClassID);
     return NS_OK;
 }
 
-/* readonly attribute nsIJSIID interfaceID; */
 NS_IMETHODIMP
 nsXPCConstructor::GetInterfaceID(nsIJSIID * *aInterfaceID)
 {
     nsRefPtr<nsIJSIID> rval = mInterfaceID;
     rval.forget(aInterfaceID);
     return NS_OK;
 }
 
-/* readonly attribute string initializer; */
 NS_IMETHODIMP
 nsXPCConstructor::GetInitializer(char * *aInitializer)
 {
     XPC_STRING_GETTER_BODY(aInitializer, mInitializer);
 }
 
 NS_INTERFACE_MAP_BEGIN(nsXPCConstructor)
   NS_INTERFACE_MAP_ENTRY(nsIXPCConstructor)
@@ -1956,27 +1899,25 @@ NS_IMPL_RELEASE(nsXPCConstructor)
 #define XPC_MAP_CLASSNAME           nsXPCConstructor
 #define XPC_MAP_QUOTED_CLASSNAME   "nsXPCConstructor"
 #define                             XPC_MAP_WANT_CALL
 #define                             XPC_MAP_WANT_CONSTRUCT
 #define XPC_MAP_FLAGS               0
 #include "xpc_map_end.h" /* This will #undef the above */
 
 
-/* bool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCConstructor::Call(nsIXPConnectWrappedNative* wrapper, JSContext* cx, JSObject* objArg,
                        const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 
 }
 
-/* bool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCConstructor::Construct(nsIXPConnectWrappedNative* wrapper, JSContext* cx, JSObject* objArg,
                             const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
@@ -2085,58 +2026,52 @@ nsXPCComponents_Constructor::GetInterfac
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper(); */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     *retval = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "XPCComponents_Constructor";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetFlags(uint32_t* aFlags)
 {
     *aFlags = 0;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 nsXPCComponents_Constructor::nsXPCComponents_Constructor()
 {
@@ -2162,26 +2097,24 @@ NS_IMPL_RELEASE(nsXPCComponents_Construc
 #define XPC_MAP_QUOTED_CLASSNAME   "nsXPCComponents_Constructor"
 #define                             XPC_MAP_WANT_CALL
 #define                             XPC_MAP_WANT_CONSTRUCT
 #define                             XPC_MAP_WANT_HASINSTANCE
 #define XPC_MAP_FLAGS               nsIXPCScriptable::ALLOW_PROP_MODS_DURING_RESOLVE
 #include "xpc_map_end.h" /* This will #undef the above */
 
 
-/* bool call (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::Call(nsIXPConnectWrappedNative* wrapper, JSContext* cx,
                                   JSObject* objArg, const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
-/* bool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::Construct(nsIXPConnectWrappedNative* wrapper, JSContext* cx,
                                        JSObject* objArg, const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     return CallOrConstruct(wrapper, cx, obj, args, _retval);
 }
 
@@ -2312,17 +2245,16 @@ nsXPCComponents_Constructor::CallOrConst
     if (NS_FAILED(xpc->WrapNative(cx, obj, ctor, NS_GET_IID(nsIXPCConstructor), newObj.address())) || !newObj) {
         return ThrowAndFail(NS_ERROR_XPC_CANT_CREATE_WN, cx, _retval);
     }
 
     args.rval().setObject(*newObj);
     return NS_OK;
 }
 
-/* bool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in jsval val, out bool bp); */
 NS_IMETHODIMP
 nsXPCComponents_Constructor::HasInstance(nsIXPConnectWrappedNative* wrapper,
                                          JSContext * cx, JSObject * obj,
                                          HandleValue val, bool* bp,
                                          bool* _retval)
 {
     if (bp)
         *bp = JSValIsInterfaceOfType(cx, val, NS_GET_IID(nsIXPCConstructor));
@@ -2369,17 +2301,16 @@ nsXPCComponents_Utils::GetSandbox(nsIXPC
     if (!mSandbox)
         mSandbox = NewSandboxConstructor();
 
     nsCOMPtr<nsIXPCComponents_utils_Sandbox> rval = mSandbox;
     rval.forget(aSandbox);
     return NS_OK;
 }
 
-/* void reportError (); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ReportError(HandleValue error, JSContext* cx)
 {
     // This function shall never fail! Silently eat any failure conditions.
 
     nsCOMPtr<nsIConsoleService> console(do_GetService(NS_CONSOLESERVICE_CONTRACTID));
 
     nsCOMPtr<nsIScriptError> scripterr(do_CreateInstance(NS_SCRIPTERROR_CONTRACTID));
@@ -2439,17 +2370,16 @@ nsXPCComponents_Utils::ReportError(Handl
             msg, fileName, EmptyString(), lineNo, 0, 0,
             "XPConnect JavaScript", innerWindowID);
     NS_ENSURE_SUCCESS(rv, NS_OK);
 
     console->LogMessage(scripterr);
     return NS_OK;
 }
 
-/* void evalInSandbox(in AString source, in nativeobj sandbox); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::EvalInSandbox(const nsAString& source,
                                      HandleValue sandboxVal,
                                      HandleValue version,
                                      const nsACString& filenameArg,
                                      int32_t lineNumber,
                                      JSContext* cx,
                                      uint8_t optionalArgc,
@@ -2621,79 +2551,71 @@ nsXPCComponents_Utils::ImportGlobalPrope
         !options.Define(cx, global))
     {
         return NS_ERROR_FAILURE;
     }
 
     return NS_OK;
 }
 
-/* xpcIJSWeakReference getWeakReference (); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::GetWeakReference(HandleValue object, JSContext* cx,
                                         xpcIJSWeakReference** _retval)
 {
     nsRefPtr<xpcJSWeakReference> ref = new xpcJSWeakReference();
     nsresult rv = ref->Init(cx, object);
     NS_ENSURE_SUCCESS(rv, rv);
     ref.forget(_retval);
     return NS_OK;
 }
 
-/* void forceGC (); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ForceGC()
 {
     JSRuntime* rt = nsXPConnect::GetRuntimeInstance()->Runtime();
     PrepareForFullGC(rt);
     GCForReason(rt, GC_NORMAL, gcreason::COMPONENT_UTILS);
     return NS_OK;
 }
 
-/* void forceCC (); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ForceCC(nsICycleCollectorListener* listener)
 {
     nsJSContext::CycleCollectNow(listener);
     return NS_OK;
 }
 
-/* void finishCC(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::FinishCC()
 {
     nsCycleCollector_finishAnyCurrentCollection();
     return NS_OK;
 }
 
-/* void ccSlice(in long long budget); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::CcSlice(int64_t budget)
 {
     nsJSContext::RunCycleCollectorWorkSlice(budget);
     return NS_OK;
 }
 
-/* long getMaxCCSliceTimeSinceClear(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::GetMaxCCSliceTimeSinceClear(int32_t* out)
 {
     *out = nsJSContext::GetMaxCCSliceTimeSinceClear();
     return NS_OK;
 }
 
-/* void clearMaxCCTime(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ClearMaxCCTime()
 {
     nsJSContext::ClearMaxCCSliceTime();
     return NS_OK;
 }
 
-/* void forceShrinkingGC (); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ForceShrinkingGC()
 {
     JSRuntime* rt = nsXPConnect::GetRuntimeInstance()->Runtime();
     PrepareForFullGC(rt);
     GCForReason(rt, GC_SHRINK, gcreason::COMPONENT_UTILS);
     return NS_OK;
 }
@@ -2726,45 +2648,41 @@ class PreciseGCRunnable : public nsRunna
         return NS_OK;
     }
 
   private:
     nsRefPtr<ScheduledGCCallback> mCallback;
     bool mShrinking;
 };
 
-/* void schedulePreciseGC(in ScheduledGCCallback callback); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::SchedulePreciseGC(ScheduledGCCallback* aCallback)
 {
     nsRefPtr<PreciseGCRunnable> event = new PreciseGCRunnable(aCallback, false);
     return NS_DispatchToMainThread(event);
 }
 
-/* void schedulePreciseShrinkingGC(in ScheduledGCCallback callback); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::SchedulePreciseShrinkingGC(ScheduledGCCallback* aCallback)
 {
     nsRefPtr<PreciseGCRunnable> event = new PreciseGCRunnable(aCallback, true);
     return NS_DispatchToMainThread(event);
 }
 
-/* void unlinkGhostWindows(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::UnlinkGhostWindows()
 {
 #ifdef DEBUG
     nsWindowMemoryReporter::UnlinkGhostWindows();
     return NS_OK;
 #else
     return NS_ERROR_NOT_IMPLEMENTED;
 #endif
 }
 
-/* [implicit_jscontext] jsval nondeterministicGetWeakMapKeys(in jsval aMap); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::NondeterministicGetWeakMapKeys(HandleValue aMap,
                                                       JSContext* aCx,
                                                       MutableHandleValue aKeys)
 {
     if (!aMap.isObject()) {
         aKeys.setUndefined();
         return NS_OK;
@@ -2772,17 +2690,16 @@ nsXPCComponents_Utils::NondeterministicG
     RootedObject objRet(aCx);
     RootedObject mapObj(aCx, &aMap.toObject());
     if (!JS_NondeterministicGetWeakMapKeys(aCx, mapObj, &objRet))
         return NS_ERROR_OUT_OF_MEMORY;
      aKeys.set(objRet ? ObjectValue(*objRet) : UndefinedValue());
     return NS_OK;
 }
 
-/* [implicit_jscontext] jsval getJSTestingFunctions(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::GetJSTestingFunctions(JSContext* cx,
                                              MutableHandleValue retval)
 {
     JSObject* obj = js::GetTestingFunctions(cx);
     if (!obj)
         return NS_ERROR_XPC_JAVASCRIPT_ERROR;
     retval.setObject(*obj);
@@ -2826,17 +2743,16 @@ nsXPCComponents_Utils::CallFunctionWithA
                               JS::HandleValueArray::empty(), retval))
     {
         return NS_ERROR_XPC_JAVASCRIPT_ERROR;
     }
 
     return NS_OK;
 }
 
-/* void getGlobalForObject(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::GetGlobalForObject(HandleValue object,
                                           JSContext* cx,
                                           MutableHandleValue retval)
 {
     // First argument must be an object.
     if (object.isPrimitive())
         return NS_ERROR_XPC_BAD_CONVERT_JS;
@@ -2859,45 +2775,42 @@ nsXPCComponents_Utils::GetGlobalForObjec
     // Outerize if necessary.
     if (js::ObjectOp outerize = js::GetObjectClass(obj)->ext.outerObject)
       obj = outerize(cx, obj);
 
     retval.setObject(*obj);
     return NS_OK;
 }
 
-/* boolean isProxy(in value vobj); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::IsProxy(HandleValue vobj, JSContext* cx, bool* rval)
 {
     if (!vobj.isObject()) {
         *rval = false;
         return NS_OK;
     }
 
     RootedObject obj(cx, &vobj.toObject());
     obj = js::CheckedUnwrap(obj, /* stopAtOuter = */ false);
     NS_ENSURE_TRUE(obj, NS_ERROR_FAILURE);
 
     *rval = js::IsScriptedProxy(obj);
     return NS_OK;
 }
 
-/* jsval exportFunction(in jsval vfunction, in jsval vscope, in jsval voptions); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ExportFunction(HandleValue vfunction, HandleValue vscope,
                                       HandleValue voptions, JSContext* cx,
                                       MutableHandleValue rval)
 {
     if (!xpc::ExportFunction(cx, vfunction, vscope, voptions, rval))
         return NS_ERROR_FAILURE;
     return NS_OK;
 }
 
-/* jsval createObjectIn(in jsval vobj, [optional] in jsval voptions); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::CreateObjectIn(HandleValue vobj, HandleValue voptions,
                                       JSContext* cx, MutableHandleValue rval)
 {
     RootedObject optionsObject(cx, voptions.isObject() ? &voptions.toObject()
                                                        : nullptr);
     CreateObjectInOptions options(cx, optionsObject);
     if (voptions.isObject() &&
@@ -2906,17 +2819,16 @@ nsXPCComponents_Utils::CreateObjectIn(Ha
         return NS_ERROR_FAILURE;
     }
 
     if (!xpc::CreateObjectIn(cx, vobj, options, rval))
         return NS_ERROR_FAILURE;
     return NS_OK;
 }
 
-/* void makeObjectPropsNormal(jsval vobj); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::MakeObjectPropsNormal(HandleValue vobj, JSContext* cx)
 {
     if (!cx)
         return NS_ERROR_FAILURE;
 
     // first argument must be an object
     if (vobj.isPrimitive())
@@ -2983,17 +2895,16 @@ nsXPCComponents_Utils::GetCrossProcessWr
 {
     if (obj.isPrimitive() || !jsipc::IsWrappedCPOW(&obj.toObject()))
         return NS_ERROR_INVALID_ARG;
 
     jsipc::GetWrappedCPOWTag(&obj.toObject(), out);
     return NS_OK;
 }
 
-/* void recomputerWrappers(jsval vobj); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::RecomputeWrappers(HandleValue vobj, JSContext* cx)
 {
     // Determine the compartment of the given object, if any.
     JSCompartment* c = vobj.isObject()
                        ? js::GetObjectCompartment(js::UncheckedUnwrap(&vobj.toObject()))
                        : nullptr;
 
@@ -3003,63 +2914,58 @@ nsXPCComponents_Utils::RecomputeWrappers
     // Otherwise, recompute wrappers for the given compartment.
     else
         js::RecomputeWrappers(cx, js::SingleCompartment(c), js::AllCompartments()) &&
         js::RecomputeWrappers(cx, js::AllCompartments(), js::SingleCompartment(c));
 
     return NS_OK;
 }
 
-/* jsval setWantXrays(jsval vscope); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::SetWantXrays(HandleValue vscope, JSContext* cx)
 {
     if (!vscope.isObject())
         return NS_ERROR_INVALID_ARG;
     JSObject* scopeObj = js::UncheckedUnwrap(&vscope.toObject());
     JSCompartment* compartment = js::GetObjectCompartment(scopeObj);
     CompartmentPrivate::Get(scopeObj)->wantXrays = true;
     bool ok = js::RecomputeWrappers(cx, js::SingleCompartment(compartment),
                                     js::AllCompartments());
     NS_ENSURE_TRUE(ok, NS_ERROR_FAILURE);
     return NS_OK;
 }
 
-/* jsval forcePermissiveCOWs(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ForcePermissiveCOWs(JSContext* cx)
 {
     CrashIfNotInAutomation();
     CompartmentPrivate::Get(CurrentGlobalOrNull(cx))->forcePermissiveCOWs = true;
     return NS_OK;
 }
 
-/* jsval skipCOWCallableChecks(); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::SkipCOWCallableChecks(JSContext* cx)
 {
     CompartmentPrivate::Get(CurrentGlobalOrNull(cx))->skipCOWCallableChecks = true;
     return NS_OK;
 }
 
-/* jsval forcePrivilegedComponentsForScope(jsval vscope); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::ForcePrivilegedComponentsForScope(HandleValue vscope,
                                                          JSContext* cx)
 {
     if (!vscope.isObject())
         return NS_ERROR_INVALID_ARG;
     CrashIfNotInAutomation();
     JSObject* scopeObj = js::UncheckedUnwrap(&vscope.toObject());
     XPCWrappedNativeScope* scope = ObjectScope(scopeObj);
     scope->ForcePrivilegedComponents();
     return NS_OK;
 }
 
-/* jsval getComponentsForScope(jsval vscope); */
 NS_IMETHODIMP
 nsXPCComponents_Utils::GetComponentsForScope(HandleValue vscope, JSContext* cx,
                                              MutableHandleValue rval)
 {
     if (!vscope.isObject())
         return NS_ERROR_INVALID_ARG;
     JSObject* scopeObj = js::UncheckedUnwrap(&vscope.toObject());
     XPCWrappedNativeScope* scope = ObjectScope(scopeObj);
@@ -3607,17 +3513,16 @@ nsXPCComponents::SetReturnCode(JSContext
     if (!ToUint32(aCx, aCode, (uint32_t*)&rv))
         return NS_ERROR_FAILURE;
     xpcc->SetPendingResult(rv);
     xpcc->SetLastResult(rv);
     return NS_OK;
 }
 
 // static
-/* void reportError (); */
 NS_IMETHODIMP nsXPCComponents::ReportError(HandleValue error, JSContext* cx)
 {
     NS_WARNING("Components.reportError deprecated, use Components.utils.reportError");
 
     nsCOMPtr<nsIXPCComponents_Utils> utils;
     nsresult rv = GetUtils(getter_AddRefs(utils));
     if (NS_FAILED(rv))
         return rv;
--- a/js/xpconnect/src/XPCJSID.cpp
+++ b/js/xpconnect/src/XPCJSID.cpp
@@ -403,17 +403,16 @@ nsJSIID::Resolve(nsIXPConnectWrappedNati
         *_retval = JS_DefinePropertyById(cx, obj, id, val,
                                          JSPROP_ENUMERATE | JSPROP_READONLY |
                                          JSPROP_PERMANENT | JSPROP_RESOLVING);
     }
 
     return NS_OK;
 }
 
-/* bool enumerate (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj); */
 NS_IMETHODIMP
 nsJSIID::Enumerate(nsIXPConnectWrappedNative* wrapper,
                    JSContext * cx, JSObject * objArg, bool* _retval)
 {
     // In this case, let's just eagerly resolve...
 
     RootedObject obj(cx, objArg);
     XPCCallContext ccx(JS_CALLER, cx);
@@ -500,17 +499,16 @@ xpc::HasInstance(JSContext* cx, HandleOb
     // preserve that behavior. This is just a compatibility hack, so we don't
     // really care if it fails.
     if (IS_WN_REFLECTOR(obj))
         (void) XPCWrappedNative::Get(obj)->FindTearOff(*iid);
 
     return NS_OK;
 }
 
-/* bool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in jsval val, out bool bp); */
 NS_IMETHODIMP
 nsJSIID::HasInstance(nsIXPConnectWrappedNative* wrapper,
                      JSContext* cx, JSObject * /* unused */,
                      HandleValue val, bool* bp, bool* _retval)
 {
     *bp = false;
 
     if (val.isPrimitive())
@@ -619,17 +617,16 @@ GetIIDArg(uint32_t argc, const JS::Value
             return nullptr;
         }
     } else
         iid = &NS_GET_IID(nsISupports);
 
     return iid;
 }
 
-/* nsISupports createInstance (); */
 NS_IMETHODIMP
 nsJSCID::CreateInstance(HandleValue iidval, JSContext* cx,
                         uint8_t optionalArgc, MutableHandleValue retval)
 {
     if (!mDetails->IsValid())
         return NS_ERROR_XPC_BAD_CID;
 
     if (NS_FAILED(nsXPConnect::SecurityManager()->CanCreateInstance(cx, mDetails->ID()))) {
@@ -655,17 +652,16 @@ nsJSCID::CreateInstance(HandleValue iidv
         return NS_ERROR_XPC_CI_RETURNED_FAILURE;
 
     rv = nsContentUtils::WrapNative(cx, inst, iid, retval);
     if (NS_FAILED(rv) || retval.isPrimitive())
         return NS_ERROR_XPC_CANT_CREATE_WN;
     return NS_OK;
 }
 
-/* nsISupports getService (); */
 NS_IMETHODIMP
 nsJSCID::GetService(HandleValue iidval, JSContext* cx, uint8_t optionalArgc,
                     MutableHandleValue retval)
 {
     if (!mDetails->IsValid())
         return NS_ERROR_XPC_BAD_CID;
 
     if (NS_FAILED(nsXPConnect::SecurityManager()->CanCreateInstance(cx, mDetails->ID()))) {
@@ -694,17 +690,16 @@ nsJSCID::GetService(HandleValue iidval, 
     rv = nsContentUtils::WrapNative(cx, srvc, iid, &v);
     if (NS_FAILED(rv) || !v.isObject())
         return NS_ERROR_XPC_CANT_CREATE_WN;
 
     retval.set(v);
     return NS_OK;
 }
 
-/* bool construct (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in uint32_t argc, in JSValPtr argv, in JSValPtr vp); */
 NS_IMETHODIMP
 nsJSCID::Construct(nsIXPConnectWrappedNative* wrapper,
                    JSContext* cx, JSObject* objArg,
                    const CallArgs& args, bool* _retval)
 {
     RootedObject obj(cx, objArg);
     XPCJSRuntime* rt = nsXPConnect::GetRuntimeInstance();
     if (!rt)
@@ -714,17 +709,16 @@ nsJSCID::Construct(nsIXPConnectWrappedNa
     RootedId name(cx, rt->GetStringID(XPCJSRuntime::IDX_CREATE_INSTANCE));
     XPCCallContext ccx(JS_CALLER, cx, obj, nullptr, name, args.length(), args.array(),
                        args.rval().address());
 
     *_retval = XPCWrappedNative::CallMethod(ccx);
     return NS_OK;
 }
 
-/* bool hasInstance (in nsIXPConnectWrappedNative wrapper, in JSContextPtr cx, in JSObjectPtr obj, in jsval val, out bool bp); */
 NS_IMETHODIMP
 nsJSCID::HasInstance(nsIXPConnectWrappedNative* wrapper,
                      JSContext* cx, JSObject * /* unused */,
                      HandleValue val, bool* bp, bool* _retval)
 {
     *bp = false;
     nsresult rv = NS_OK;
 
--- a/js/xpconnect/src/XPCRuntimeService.cpp
+++ b/js/xpconnect/src/XPCRuntimeService.cpp
@@ -108,59 +108,53 @@ BackstagePass::GetInterfaces(uint32_t* a
 oom:
     while (index)
         free(array[--index]);
     free(array);
     *aArray = nullptr;
     return NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* nsIXPCScriptable getScriptableHelper (); */
 NS_IMETHODIMP
 BackstagePass::GetScriptableHelper(nsIXPCScriptable** retval)
 {
     nsCOMPtr<nsIXPCScriptable> scriptable = this;
     scriptable.forget(retval);
     return NS_OK;
 }
 
-/* readonly attribute string contractID; */
 NS_IMETHODIMP
 BackstagePass::GetContractID(char * *aContractID)
 {
     *aContractID = nullptr;
     return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* readonly attribute string classDescription; */
 NS_IMETHODIMP
 BackstagePass::GetClassDescription(char * *aClassDescription)
 {
     static const char classDescription[] = "BackstagePass";
     *aClassDescription = (char*)nsMemory::Clone(classDescription, sizeof(classDescription));
     return *aClassDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute nsCIDPtr classID; */
 NS_IMETHODIMP
 BackstagePass::GetClassID(nsCID * *aClassID)
 {
     *aClassID = nullptr;
     return NS_OK;
 }
 
-/* readonly attribute uint32_t flags; */
 NS_IMETHODIMP
 BackstagePass::GetFlags(uint32_t* aFlags)
 {
     *aFlags = nsIClassInfo::MAIN_THREAD_ONLY;
     return NS_OK;
 }
 
-/* [notxpcom] readonly attribute nsCID classIDNoAlloc; */
 NS_IMETHODIMP
 BackstagePass::GetClassIDNoAlloc(nsCID* aClassIDNoAlloc)
 {
     return NS_ERROR_NOT_AVAILABLE;
 }
 
 NS_IMETHODIMP
 BackstagePass::Finalize(nsIXPConnectWrappedNative* wrapper, JSFreeOp * fop, JSObject * obj)
--- a/js/xpconnect/src/XPCShellImpl.cpp
+++ b/js/xpconnect/src/XPCShellImpl.cpp
@@ -1184,17 +1184,16 @@ NS_IMPL_ISUPPORTS(nsXPCFunctionThisTrans
 nsXPCFunctionThisTranslator::nsXPCFunctionThisTranslator()
 {
 }
 
 nsXPCFunctionThisTranslator::~nsXPCFunctionThisTranslator()
 {
 }
 
-/* nsISupports TranslateThis (in nsISupports aInitialThis); */
 NS_IMETHODIMP
 nsXPCFunctionThisTranslator::TranslateThis(nsISupports* aInitialThis,
                                            nsISupports** _retval)
 {
     nsCOMPtr<nsISupports> temp = aInitialThis;
     temp.forget(_retval);
     return NS_OK;
 }
--- a/js/xpconnect/src/XPCVariant.cpp
+++ b/js/xpconnect/src/XPCVariant.cpp
@@ -635,167 +635,141 @@ XPCVariant::VariantDataToJS(nsIVariant* 
 }
 
 /***************************************************************************/
 /***************************************************************************/
 // XXX These default implementations need to be improved to allow for
 // some more interesting conversions.
 
 
-/* readonly attribute uint16_t dataType; */
 NS_IMETHODIMP XPCVariant::GetDataType(uint16_t* aDataType)
 {
     *aDataType = mData.GetType();
     return NS_OK;
 }
 
-/* uint8_t getAsInt8 (); */
 NS_IMETHODIMP XPCVariant::GetAsInt8(uint8_t* _retval)
 {
     return mData.ConvertToInt8(_retval);
 }
 
-/* int16_t getAsInt16 (); */
 NS_IMETHODIMP XPCVariant::GetAsInt16(int16_t* _retval)
 {
     return mData.ConvertToInt16(_retval);
 }
 
-/* int32_t getAsInt32 (); */
 NS_IMETHODIMP XPCVariant::GetAsInt32(int32_t* _retval)
 {
     return mData.ConvertToInt32(_retval);
 }
 
-/* int64_t getAsInt64 (); */
 NS_IMETHODIMP XPCVariant::GetAsInt64(int64_t* _retval)
 {
     return mData.ConvertToInt64(_retval);
 }
 
-/* uint8_t getAsUint8 (); */
 NS_IMETHODIMP XPCVariant::GetAsUint8(uint8_t* _retval)
 {
     return mData.ConvertToUint8(_retval);
 }
 
-/* uint16_t getAsUint16 (); */
 NS_IMETHODIMP XPCVariant::GetAsUint16(uint16_t* _retval)
 {
     return mData.ConvertToUint16(_retval);
 }
 
-/* uint32_t getAsUint32 (); */
 NS_IMETHODIMP XPCVariant::GetAsUint32(uint32_t* _retval)
 {
     return mData.ConvertToUint32(_retval);
 }
 
-/* uint64_t getAsUint64 (); */
 NS_IMETHODIMP XPCVariant::GetAsUint64(uint64_t* _retval)
 {
     return mData.ConvertToUint64(_retval);
 }
 
-/* float getAsFloat (); */
 NS_IMETHODIMP XPCVariant::GetAsFloat(float* _retval)
 {
     return mData.ConvertToFloat(_retval);
 }
 
-/* double getAsDouble (); */
 NS_IMETHODIMP XPCVariant::GetAsDouble(double* _retval)
 {
     return mData.ConvertToDouble(_retval);
 }
 
-/* bool getAsBool (); */
 NS_IMETHODIMP XPCVariant::GetAsBool(bool* _retval)
 {
     return mData.ConvertToBool(_retval);
 }
 
-/* char getAsChar (); */
 NS_IMETHODIMP XPCVariant::GetAsChar(char* _retval)
 {
     return mData.ConvertToChar(_retval);
 }
 
-/* wchar getAsWChar (); */
 NS_IMETHODIMP XPCVariant::GetAsWChar(char16_t* _retval)
 {
     return mData.ConvertToWChar(_retval);
 }
 
-/* [notxpcom] nsresult getAsID (out nsID retval); */
 NS_IMETHODIMP_(nsresult) XPCVariant::GetAsID(nsID* retval)
 {
     return mData.ConvertToID(retval);
 }
 
-/* AString getAsAString (); */
 NS_IMETHODIMP XPCVariant::GetAsAString(nsAString & _retval)
 {
     return mData.ConvertToAString(_retval);
 }
 
-/* DOMString getAsDOMString (); */
 NS_IMETHODIMP XPCVariant::GetAsDOMString(nsAString & _retval)
 {
     // A DOMString maps to an AString internally, so we can re-use
     // ConvertToAString here.
     return mData.ConvertToAString(_retval);
 }
 
-/* ACString getAsACString (); */
 NS_IMETHODIMP XPCVariant::GetAsACString(nsACString & _retval)
 {
     return mData.ConvertToACString(_retval);
 }
 
-/* AUTF8String getAsAUTF8String (); */
 NS_IMETHODIMP XPCVariant::GetAsAUTF8String(nsAUTF8String & _retval)
 {
     return mData.ConvertToAUTF8String(_retval);
 }
 
-/* string getAsString (); */
 NS_IMETHODIMP XPCVariant::GetAsString(char** _retval)
 {
     return mData.ConvertToString(_retval);
 }
 
-/* wstring getAsWString (); */
 NS_IMETHODIMP XPCVariant::GetAsWString(char16_t** _retval)
 {
     return mData.ConvertToWString(_retval);
 }
 
-/* nsISupports getAsISupports (); */
 NS_IMETHODIMP XPCVariant::GetAsISupports(nsISupports** _retval)
 {
     return mData.ConvertToISupports(_retval);
 }
 
-/* void getAsInterface (out nsIIDPtr iid, [iid_is (iid), retval] out nsQIResult iface); */
 NS_IMETHODIMP XPCVariant::GetAsInterface(nsIID** iid, void** iface)
 {
     return mData.ConvertToInterface(iid, iface);
 }
 
 
-/* [notxpcom] nsresult getAsArray (out uint16_t type, out nsIID iid, out uint32_t count, out voidPtr ptr); */
 NS_IMETHODIMP_(nsresult) XPCVariant::GetAsArray(uint16_t* type, nsIID* iid, uint32_t* count, void * *ptr)
 {
     return mData.ConvertToArray(type, iid, count, ptr);
 }
 
-/* void getAsStringWithSize (out uint32_t size, [size_is (size), retval] out string str); */
 NS_IMETHODIMP XPCVariant::GetAsStringWithSize(uint32_t* size, char** str)
 {
     return mData.ConvertToStringWithSize(size, str);
 }
 
-/* void getAsWStringWithSize (out uint32_t size, [size_is (size), retval] out wstring str); */
 NS_IMETHODIMP XPCVariant::GetAsWStringWithSize(uint32_t* size, char16_t** str)
 {
     return mData.ConvertToWStringWithSize(size, str);
 }
--- a/js/xpconnect/src/XPCWrappedJS.cpp
+++ b/js/xpconnect/src/XPCWrappedJS.cpp
@@ -574,30 +574,28 @@ nsXPCWrappedJS::SizeOfIncludingThis(mozi
     if (mNext)
         n += mNext->SizeOfIncludingThis(mallocSizeOf);
 
     return n;
 }
 
 /***************************************************************************/
 
-/* readonly attribute nsISimpleEnumerator enumerator; */
 NS_IMETHODIMP
 nsXPCWrappedJS::GetEnumerator(nsISimpleEnumerator * *aEnumerate)
 {
     AutoJSContext cx;
     XPCCallContext ccx(NATIVE_CALLER, cx);
     if (!ccx.IsValid())
         return NS_ERROR_UNEXPECTED;
 
     return nsXPCWrappedJSClass::BuildPropertyEnumerator(ccx, GetJSObject(),
                                                         aEnumerate);
 }
 
-/* nsIVariant getProperty (in AString name); */
 NS_IMETHODIMP
 nsXPCWrappedJS::GetProperty(const nsAString & name, nsIVariant** _retval)
 {
     AutoJSContext cx;
     XPCCallContext ccx(NATIVE_CALLER, cx);
     if (!ccx.IsValid())
         return NS_ERROR_UNEXPECTED;
 
--- a/js/xpconnect/src/XPCWrappedJSClass.cpp
+++ b/js/xpconnect/src/XPCWrappedJSClass.cpp
@@ -402,24 +402,22 @@ nsXPCWrappedJSClass::BuildPropertyEnumer
 NS_IMPL_ISUPPORTS(xpcProperty, nsIProperty)
 
 xpcProperty::xpcProperty(const char16_t* aName, uint32_t aNameLen,
                          nsIVariant* aValue)
     : mName(aName, aNameLen), mValue(aValue)
 {
 }
 
-/* readonly attribute AString name; */
 NS_IMETHODIMP xpcProperty::GetName(nsAString & aName)
 {
     aName.Assign(mName);
     return NS_OK;
 }
 
-/* readonly attribute nsIVariant value; */
 NS_IMETHODIMP xpcProperty::GetValue(nsIVariant * *aValue)
 {
     nsCOMPtr<nsIVariant> rval = mValue;
     rval.forget(aValue);
     return NS_OK;
 }
 
 /***************************************************************************/
--- a/js/xpconnect/src/XPCWrappedNative.cpp
+++ b/js/xpconnect/src/XPCWrappedNative.cpp
@@ -2093,34 +2093,31 @@ CallMethodHelper::Invoke()
     nsXPTCVariant* argv = mDispatchParams.Elements();
 
     return NS_InvokeByIndex(mCallee, mVTableIndex, argc, argv);
 }
 
 /***************************************************************************/
 // interface methods
 
-/* JSObjectPtr GetJSObject(); */
 JSObject*
 XPCWrappedNative::GetJSObject()
 {
     return GetFlatJSObject();
 }
 
-/* readonly attribute nsISupports Native; */
 NS_IMETHODIMP XPCWrappedNative::GetNative(nsISupports * *aNative)
 {
     // No need to QI here, we already have the correct nsISupports
     // vtable.
     nsCOMPtr<nsISupports> rval = mIdentity;
     rval.forget(aNative);
     return NS_OK;
 }
 
-/* reaonly attribute JSObjectPtr JSObjectPrototype; */
 NS_IMETHODIMP XPCWrappedNative::GetJSObjectPrototype(JSObject * *aJSObjectPrototype)
 {
     *aJSObjectPrototype = HasProto() ?
                 GetProto()->GetJSProtoObject() : GetFlatJSObject();
     return NS_OK;
 }
 
 nsIPrincipal*
@@ -2139,54 +2136,50 @@ XPCWrappedNative::GetObjectPrincipal() c
         else
             principal->Equals(objPrin->GetPrincipal(), &equal);
         MOZ_ASSERT(equal, "Principal mismatch.  Expect bad things to happen");
     }
 #endif
     return principal;
 }
 
-/* XPCNativeInterface FindInterfaceWithMember (in JSHandleId name); */
 NS_IMETHODIMP XPCWrappedNative::FindInterfaceWithMember(HandleId name,
                                                         nsIInterfaceInfo * *_retval)
 {
     XPCNativeInterface* iface;
     XPCNativeMember*  member;
 
     if (GetSet()->FindMember(name, &member, &iface) && iface) {
         nsCOMPtr<nsIInterfaceInfo> temp = iface->GetInterfaceInfo();
         temp.forget(_retval);
     } else
         *_retval = nullptr;
     return NS_OK;
 }
 
-/* XPCNativeInterface FindInterfaceWithName (in JSHandleId name); */
 NS_IMETHODIMP XPCWrappedNative::FindInterfaceWithName(HandleId name,
                                                       nsIInterfaceInfo * *_retval)
 {
     XPCNativeInterface* iface = GetSet()->FindNamedInterface(name);
     if (iface) {
         nsCOMPtr<nsIInterfaceInfo> temp = iface->GetInterfaceInfo();
         temp.forget(_retval);
     } else
         *_retval = nullptr;
     return NS_OK;
 }
 
-/* [notxpcom] bool HasNativeMember (in JSHandleId name); */
 NS_IMETHODIMP_(bool)
 XPCWrappedNative::HasNativeMember(HandleId name)
 {
     XPCNativeMember* member = nullptr;
     uint16_t ignored;
     return GetSet()->FindMember(name, &member, &ignored) && !!member;
 }
 
-/* void debugDump (in short depth); */
 NS_IMETHODIMP XPCWrappedNative::DebugDump(int16_t depth)
 {
 #ifdef DEBUG
     depth-- ;
     XPC_LOG_ALWAYS(("XPCWrappedNative @ %x with mRefCnt = %d", this, mRefCnt.get()));
     XPC_LOG_INDENT();
 
         if (HasProto()) {
--- a/js/xpconnect/src/nsXPConnect.cpp
+++ b/js/xpconnect/src/nsXPConnect.cpp
@@ -500,17 +500,16 @@ NativeInterface2JSObject(HandleObject aS
         return rv;
 
     MOZ_ASSERT(aAllowWrapping || !xpc::WrapperFactory::IsXrayWrapper(&aVal.toObject()),
                "Shouldn't be returning a xray wrapper here");
 
     return NS_OK;
 }
 
-/* JSObjectPtr wrapNative (in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDRef aIID); */
 NS_IMETHODIMP
 nsXPConnect::WrapNative(JSContext * aJSContext,
                         JSObject * aScopeArg,
                         nsISupports* aCOMObj,
                         const nsIID & aIID,
                         JSObject** aRetVal)
 {
     MOZ_ASSERT(aJSContext, "bad param");
@@ -526,17 +525,16 @@ nsXPConnect::WrapNative(JSContext * aJSC
 
     if (!v.isObjectOrNull())
         return NS_ERROR_FAILURE;
 
     *aRetVal = v.toObjectOrNull();
     return NS_OK;
 }
 
-/* nsIXPConnectJSObjectHolder wrapNativeHolder(in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDRef aIID); */
 NS_IMETHODIMP
 nsXPConnect::WrapNativeHolder(JSContext * aJSContext,
                               JSObject * aScopeArg,
                               nsISupports* aCOMObj,
                               const nsIID & aIID,
                               nsIXPConnectJSObjectHolder **aHolder)
 {
     MOZ_ASSERT(aHolder, "bad param");
@@ -545,17 +543,16 @@ nsXPConnect::WrapNativeHolder(JSContext 
     MOZ_ASSERT(aCOMObj, "bad param");
 
     RootedObject aScope(aJSContext, aScopeArg);
     RootedValue v(aJSContext);
     return NativeInterface2JSObject(aScope, aCOMObj, nullptr, &aIID,
                                     true, &v, aHolder);
 }
 
-/* void wrapNativeToJSVal (in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDPtr aIID, out jsval aVal); */
 NS_IMETHODIMP
 nsXPConnect::WrapNativeToJSVal(JSContext* aJSContext,
                                JSObject* aScopeArg,
                                nsISupports* aCOMObj,
                                nsWrapperCache* aCache,
                                const nsIID* aIID,
                                bool aAllowWrapping,
                                MutableHandleValue aVal)
@@ -564,17 +561,16 @@ nsXPConnect::WrapNativeToJSVal(JSContext
     MOZ_ASSERT(aScopeArg, "bad param");
     MOZ_ASSERT(aCOMObj, "bad param");
 
     RootedObject aScope(aJSContext, aScopeArg);
     return NativeInterface2JSObject(aScope, aCOMObj, aCache, aIID,
                                     aAllowWrapping, aVal, nullptr);
 }
 
-/* void wrapJS (in JSContextPtr aJSContext, in JSObjectPtr aJSObj, in nsIIDRef aIID, [iid_is (aIID), retval] out nsQIResult result); */
 NS_IMETHODIMP
 nsXPConnect::WrapJS(JSContext * aJSContext,
                     JSObject * aJSObjArg,
                     const nsIID & aIID,
                     void * *result)
 {
     MOZ_ASSERT(aJSContext, "bad param");
     MOZ_ASSERT(aJSObjArg, "bad param");
@@ -601,17 +597,16 @@ nsXPConnect::JSValToVariant(JSContext* c
 
     nsRefPtr<XPCVariant> variant = XPCVariant::newVariant(cx, aJSVal);
     variant.forget(aResult);
     NS_ENSURE_TRUE(*aResult, NS_ERROR_OUT_OF_MEMORY);
 
     return NS_OK;
 }
 
-/* void wrapJSAggregatedToNative (in nsISupports aOuter, in JSContextPtr aJSContext, in JSObjectPtr aJSObj, in nsIIDRef aIID, [iid_is (aIID), retval] out nsQIResult result); */
 NS_IMETHODIMP
 nsXPConnect::WrapJSAggregatedToNative(nsISupports* aOuter,
                                       JSContext* aJSContext,
                                       JSObject* aJSObjArg,
                                       const nsIID& aIID,
                                       void** result)
 {
     MOZ_ASSERT(aOuter, "bad param");
@@ -624,17 +619,16 @@ nsXPConnect::WrapJSAggregatedToNative(ns
     RootedObject aJSObj(aJSContext, aJSObjArg);
     nsresult rv;
     if (!XPCConvert::JSObject2NativeInterface(result, aJSObj,
                                               &aIID, aOuter, &rv))
         return rv;
     return NS_OK;
 }
 
-/* nsIXPConnectWrappedNative getWrappedNativeOfJSObject (in JSContextPtr aJSContext, in JSObjectPtr aJSObj); */
 NS_IMETHODIMP
 nsXPConnect::GetWrappedNativeOfJSObject(JSContext * aJSContext,
                                         JSObject * aJSObjArg,
                                         nsIXPConnectWrappedNative** _retval)
 {
     MOZ_ASSERT(aJSContext, "bad param");
     MOZ_ASSERT(aJSObjArg, "bad param");
     MOZ_ASSERT(_retval, "bad param");
@@ -668,25 +662,23 @@ xpc::UnwrapReflectorToISupports(JSObject
     }
 
     // Try DOM objects.
     nsCOMPtr<nsISupports> canonical =
         do_QueryInterface(mozilla::dom::UnwrapDOMObjectToISupports(reflector));
     return canonical;
 }
 
-/* nsISupports getNativeOfWrapper(in JSContextPtr aJSContext, in JSObjectPtr  aJSObj); */
 NS_IMETHODIMP_(nsISupports*)
 nsXPConnect::GetNativeOfWrapper(JSContext* aJSContext,
                                 JSObject* aJSObj)
 {
     return UnwrapReflectorToISupports(aJSObj);
 }
 
-/* nsIXPConnectWrappedNative getWrappedNativeOfNativeObject (in JSContextPtr aJSContext, in JSObjectPtr aScope, in nsISupports aCOMObj, in nsIIDRef aIID); */
 NS_IMETHODIMP
 nsXPConnect::GetWrappedNativeOfNativeObject(JSContext * aJSContext,
                                             JSObject * aScopeArg,
                                             nsISupports* aCOMObj,
                                             const nsIID & aIID,
                                             nsIXPConnectWrappedNative** _retval)
 {
     MOZ_ASSERT(aJSContext, "bad param");
@@ -711,39 +703,36 @@ nsXPConnect::GetWrappedNativeOfNativeObj
 
     nsresult rv = XPCWrappedNative::GetUsedOnly(aCOMObj, scope, iface, &wrapper);
     if (NS_FAILED(rv))
         return NS_ERROR_FAILURE;
     *_retval = static_cast<nsIXPConnectWrappedNative*>(wrapper);
     return NS_OK;
 }
 
-/* readonly attribute nsIStackFrame CurrentJSStack; */
 NS_IMETHODIMP
 nsXPConnect::GetCurrentJSStack(nsIStackFrame * *aCurrentJSStack)
 {
     MOZ_ASSERT(aCurrentJSStack, "bad param");
 
     nsCOMPtr<nsIStackFrame> currentStack = dom::GetCurrentJSStack();
     currentStack.forget(aCurrentJSStack);
 
     return NS_OK;
 }
 
-/* readonly attribute nsIXPCNativeCallContext CurrentNativeCallContext; */
 NS_IMETHODIMP
 nsXPConnect::GetCurrentNativeCallContext(nsAXPCNativeCallContext * *aCurrentNativeCallContext)
 {
     MOZ_ASSERT(aCurrentNativeCallContext, "bad param");
 
     *aCurrentNativeCallContext = XPCJSRuntime::Get()->GetCallContext();
     return NS_OK;
 }
 
-/* void setFunctionThisTranslator (in nsIIDRef aIID, in nsIXPCFunctionThisTranslator aTranslator); */
 NS_IMETHODIMP
 nsXPConnect::SetFunctionThisTranslator(const nsIID & aIID,
                                        nsIXPCFunctionThisTranslator* aTranslator)
 {
     XPCJSRuntime* rt = GetRuntime();
     IID2ThisTranslatorMap* map = rt->GetThisTranslatorMap();
     map->Add(aIID, aTranslator);
     return NS_OK;
@@ -789,17 +778,16 @@ nsXPConnect::EvalInSandboxObject(const n
         filenameStr.Assign(filename);
     } else {
         filenameStr = NS_LITERAL_CSTRING("x-bogus://XPConnect/Sandbox");
     }
     return EvalInSandbox(cx, sandbox, source, filenameStr, 1,
                          JSVersion(jsVersion), rval);
 }
 
-/* JSObjectPtr getWrappedNativePrototype (in JSContextPtr aJSContext, in JSObjectPtr aScope); */
 NS_IMETHODIMP
 nsXPConnect::GetWrappedNativePrototype(JSContext* aJSContext,
                                        JSObject* aScopeArg,
                                        nsIClassInfo* aClassInfo,
                                        JSObject** aRetVal)
 {
     RootedObject aScope(aJSContext, aScopeArg);
     JSAutoCompartment ac(aJSContext, aScope);
@@ -820,17 +808,16 @@ nsXPConnect::GetWrappedNativePrototype(J
     if (!protoObj)
         return UnexpectedFailure(NS_ERROR_FAILURE);
 
     *aRetVal = protoObj;
 
     return NS_OK;
 }
 
-/* void debugDump (in short depth); */
 NS_IMETHODIMP
 nsXPConnect::DebugDump(int16_t depth)
 {
 #ifdef DEBUG
     depth-- ;
     XPC_LOG_ALWAYS(("nsXPConnect @ %x with mRefCnt = %d", this, mRefCnt.get()));
     XPC_LOG_INDENT();
         XPC_LOG_ALWAYS(("gSelf @ %x", gSelf));
@@ -843,17 +830,16 @@ nsXPConnect::DebugDump(int16_t depth)
         } else
             XPC_LOG_ALWAYS(("mRuntime is null"));
         XPCWrappedNativeScope::DebugDumpAllScopes(depth);
     XPC_LOG_OUTDENT();
 #endif
     return NS_OK;
 }
 
-/* void debugDumpObject (in nsISupports aCOMObj, in short depth); */
 NS_IMETHODIMP
 nsXPConnect::DebugDumpObject(nsISupports* p, int16_t depth)
 {
 #ifdef DEBUG
     if (!depth)
         return NS_OK;
     if (!p) {
         XPC_LOG_ALWAYS(("*** Cound not dump object with NULL address"));
@@ -883,17 +869,16 @@ nsXPConnect::DebugDumpObject(nsISupports
         wjs->DebugDump(depth);
     } else {
         XPC_LOG_ALWAYS(("*** Could not dump the nsISupports @ %x", p));
     }
 #endif
     return NS_OK;
 }
 
-/* void debugDumpJSStack (in bool showArgs, in bool showLocals, in bool showThisProps); */
 NS_IMETHODIMP
 nsXPConnect::DebugDumpJSStack(bool showArgs,
                               bool showLocals,
                               bool showThisProps)
 {
     xpc_DumpJSStack(showArgs, showLocals, showThisProps);
 
     return NS_OK;
@@ -908,17 +893,16 @@ nsXPConnect::DebugPrintJSStack(bool show
     if (!cx)
         printf("there is no JSContext on the nsIThreadJSContextStack!\n");
     else
         return xpc_PrintJSStack(cx, showArgs, showLocals, showThisProps);
 
     return nullptr;
 }
 
-/* jsval variantToJS (in JSContextPtr ctx, in JSObjectPtr scope, in nsIVariant value); */
 NS_IMETHODIMP
 nsXPConnect::VariantToJS(JSContext* ctx, JSObject* scopeArg, nsIVariant* value,
                          MutableHandleValue _retval)
 {
     NS_PRECONDITION(ctx, "bad param");
     NS_PRECONDITION(scopeArg, "bad param");
     NS_PRECONDITION(value, "bad param");
 
@@ -930,17 +914,16 @@ nsXPConnect::VariantToJS(JSContext* ctx,
         if (NS_FAILED(rv))
             return rv;
 
         return NS_ERROR_FAILURE;
     }
     return NS_OK;
 }
 
-/* nsIVariant JSToVariant (in JSContextPtr ctx, in jsval value); */
 NS_IMETHODIMP
 nsXPConnect::JSToVariant(JSContext* ctx, HandleValue value, nsIVariant** _retval)
 {
     NS_PRECONDITION(ctx, "bad param");
     NS_PRECONDITION(_retval, "bad param");
 
     nsRefPtr<XPCVariant> variant = XPCVariant::newVariant(ctx, value);
     variant.forget(_retval);
--- a/js/xpconnect/tests/components/native/xpctest_params.cpp
+++ b/js/xpconnect/tests/components/native/xpctest_params.cpp
@@ -65,144 +65,125 @@ nsXPCTestParams::~nsXPCTestParams()
     /* We need to take ownership of the data we got from a,                   \
        since the caller owns it. */                                           \
     for (unsigned i = 0; i < *bLength + padding; ++i)                         \
         TAKE_OWNERSHIP((*b)[i]);                                              \
                                                                               \
     return NS_OK;                                                             \
 }
 
-/* boolean testBoolean (in boolean a, inout boolean b); */
 NS_IMETHODIMP nsXPCTestParams::TestBoolean(bool a, bool* b, bool* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* octet testOctet (in octet a, inout octet b); */
 NS_IMETHODIMP nsXPCTestParams::TestOctet(uint8_t a, uint8_t* b, uint8_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* short testShort (in short a, inout short b); */
 NS_IMETHODIMP nsXPCTestParams::TestShort(int16_t a, int16_t* b, int16_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* long testLong (in long a, inout long b); */
 NS_IMETHODIMP nsXPCTestParams::TestLong(int32_t a, int32_t* b, int32_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* long long testLongLong (in long long a, inout long long b); */
 NS_IMETHODIMP nsXPCTestParams::TestLongLong(int64_t a, int64_t* b, int64_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* unsigned short testUnsignedShort (in unsigned short a, inout unsigned short b); */
 NS_IMETHODIMP nsXPCTestParams::TestUnsignedShort(uint16_t a, uint16_t* b, uint16_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* unsigned long testUnsignedLong (in unsigned long a, inout unsigned long b); */
 NS_IMETHODIMP nsXPCTestParams::TestUnsignedLong(uint32_t a, uint32_t* b, uint32_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* unsigned long long testUnsignedLongLong (in unsigned long long a, inout unsigned long long b); */
 NS_IMETHODIMP nsXPCTestParams::TestUnsignedLongLong(uint64_t a, uint64_t* b, uint64_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* float testFloat (in float a, inout float b); */
 NS_IMETHODIMP nsXPCTestParams::TestFloat(float a, float* b, float* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* double testDouble (in double a, inout float b); */
 NS_IMETHODIMP nsXPCTestParams::TestDouble(double a, float* b, double* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* char testChar (in char a, inout char b); */
 NS_IMETHODIMP nsXPCTestParams::TestChar(char a, char* b, char* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* string testString (in string a, inout string b); */
 NS_IMETHODIMP nsXPCTestParams::TestString(const char * a, char * *b, char * *_retval)
 {
     nsDependentCString aprime(a);
     nsDependentCString bprime(*b);
     *_retval = ToNewCString(bprime);
     *b = ToNewCString(aprime);
 
     // XPCOM ownership rules dictate that overwritten inout params must be callee-freed.
     // See https://developer.mozilla.org/en/XPIDL
     free(const_cast<char*>(bprime.get()));
 
     return NS_OK;
 }
 
-/* wchar testWchar (in wchar a, inout wchar b); */
 NS_IMETHODIMP nsXPCTestParams::TestWchar(char16_t a, char16_t* b, char16_t* _retval)
 {
     GENERIC_METHOD_IMPL;
 }
 
-/* wstring testWstring (in wstring a, inout wstring b); */
 NS_IMETHODIMP nsXPCTestParams::TestWstring(const char16_t * a, char16_t * *b, char16_t * *_retval)
 {
     nsDependentString aprime(a);
     nsDependentString bprime(*b);
     *_retval = ToNewUnicode(bprime);
     *b = ToNewUnicode(aprime);
 
     // XPCOM ownership rules dictate that overwritten inout params must be callee-freed.
     // See https://developer.mozilla.org/en/XPIDL
     free((void*)bprime.get());
 
     return NS_OK;
 }
 
-/* DOMString testDOMString (in DOMString a, inout DOMString b); */
 NS_IMETHODIMP nsXPCTestParams::TestDOMString(const nsAString & a, nsAString & b, nsAString & _retval)
 {
     STRING_METHOD_IMPL;
 }
 
 
-/* AString testAString (in AString a, inout AString b); */
 NS_IMETHODIMP nsXPCTestParams::TestAString(const nsAString & a, nsAString & b, nsAString & _retval)
 {
     STRING_METHOD_IMPL;
 }
 
-/* AUTF8String testAUTF8String (in AUTF8String a, inout AUTF8String b); */
 NS_IMETHODIMP nsXPCTestParams::TestAUTF8String(const nsACString & a, nsACString & b, nsACString & _retval)
 {
     STRING_METHOD_IMPL;
 }
 
-/* ACString testACString (in ACString a, inout ACString b); */
 NS_IMETHODIMP nsXPCTestParams::TestACString(const nsACString & a, nsACString & b, nsACString & _retval)
 {
     STRING_METHOD_IMPL;
 }
 
-/* jsval testJsval (in jsval a, in jsval b); */
 NS_IMETHODIMP nsXPCTestParams::TestJsval(JS::Handle<JS::Value> a,
                                          JS::MutableHandle<JS::Value> b,
                                          JS::MutableHandle<JS::Value> _retval)
 {
     _retval.set(b);
     b.set(a);
     return NS_OK;
 }
@@ -335,17 +316,16 @@ NS_IMETHODIMP nsXPCTestParams::TestInter
     **bIID = *aIID;
 
     // The macro is agnostic to the actual interface types, so we can re-use code here.
     //
     // Do this second, since the macro returns.
     BUFFER_METHOD_IMPL(void*, 0, TAKE_OWNERSHIP_INTERFACE);
 }
 
-/* void testOutAString (out AString o); */
 NS_IMETHODIMP nsXPCTestParams::TestOutAString(nsAString & o)
 {
     o.AssignLiteral("out");
     return NS_OK;
 }
 
 /*
  * ACString testStringArrayOptionalSize([array, size_is(aLength)] in string a, [optional] in unsigned long aLength);
--- a/js/xpconnect/tests/components/native/xpctest_returncode.cpp
+++ b/js/xpconnect/tests/components/native/xpctest_returncode.cpp
@@ -11,17 +11,16 @@ NS_IMPL_ISUPPORTS(nsXPCTestReturnCodePar
 nsXPCTestReturnCodeParent::nsXPCTestReturnCodeParent()
 {
 }
 
 nsXPCTestReturnCodeParent::~nsXPCTestReturnCodeParent()
 {
 }
 
-/* unsigned long callChild (in long childBehavior); */
 NS_IMETHODIMP nsXPCTestReturnCodeParent::CallChild(int32_t childBehavior, nsresult* _retval)
 {
     nsresult rv;
     nsCOMPtr<nsIXPCTestReturnCodeChild> child(do_CreateInstance("@mozilla.org/js/xpc/test/js/ReturnCodeChild;1", &rv));
     NS_ENSURE_SUCCESS(rv, rv);
     rv = child->DoIt(childBehavior);
     *_retval = rv;
     return NS_OK;
--- a/layout/base/nsDocumentViewer.cpp
+++ b/layout/base/nsDocumentViewer.cpp
@@ -2665,17 +2665,16 @@ NS_IMETHODIMP nsDocumentViewer::CopyImag
 
 NS_IMETHODIMP nsDocumentViewer::GetCopyable(bool *aCopyable)
 {
   NS_ENSURE_ARG_POINTER(aCopyable);
   *aCopyable = nsCopySupport::CanCopy(mDocument);
   return NS_OK;
 }
 
-/* AString getContents (in string mimeType, in boolean selectionOnly); */
 NS_IMETHODIMP nsDocumentViewer::GetContents(const char *mimeType, bool selectionOnly, nsAString& aOutValue)
 {
   aOutValue.Truncate();
 
   NS_ENSURE_TRUE(mPresShell, NS_ERROR_NOT_INITIALIZED);
   NS_ENSURE_TRUE(mDocument, NS_ERROR_NOT_INITIALIZED);
 
   // Now we have the selection.  Make sure it's nonzero:
@@ -2690,17 +2689,16 @@ NS_IMETHODIMP nsDocumentViewer::GetConte
       return NS_OK;
   }
 
   // call the copy code
   return nsCopySupport::GetContents(nsDependentCString(mimeType), 0, sel,
                                     mDocument, aOutValue);
 }
 
-/* readonly attribute boolean canGetContents; */
 NS_IMETHODIMP nsDocumentViewer::GetCanGetContents(bool *aCanGetContents)
 {
   NS_ENSURE_ARG_POINTER(aCanGetContents);
   *aCanGetContents = false;
   NS_ENSURE_STATE(mDocument);
   *aCanGetContents = nsCopySupport::CanCopy(mDocument);
   return NS_OK;
 }
@@ -3909,83 +3907,76 @@ nsDocumentViewer::PrintPreviewNavigate(i
     nscoord newYPosn =
       nscoord(mPrintEngine->GetPrintPreviewScale() * fndPageFrame->GetPosition().y);
     sf->ScrollTo(nsPoint(pt.x, newYPosn), nsIScrollableFrame::INSTANT);
   }
   return NS_OK;
 
 }
 
-/* readonly attribute nsIPrintSettings globalPrintSettings; */
 NS_IMETHODIMP
 nsDocumentViewer::GetGlobalPrintSettings(nsIPrintSettings * *aGlobalPrintSettings)
 {
   return nsPrintEngine::GetGlobalPrintSettings(aGlobalPrintSettings);
 }
 
-/* readonly attribute boolean doingPrint; */
 // XXX This always returns false for subdocuments
 NS_IMETHODIMP
 nsDocumentViewer::GetDoingPrint(bool *aDoingPrint)
 {
   NS_ENSURE_ARG_POINTER(aDoingPrint);
   
   *aDoingPrint = false;
   if (mPrintEngine) {
     // XXX shouldn't this be GetDoingPrint() ?
     return mPrintEngine->GetDoingPrintPreview(aDoingPrint);
   } 
   return NS_OK;
 }
 
-/* readonly attribute boolean doingPrintPreview; */
 // XXX This always returns false for subdocuments
 NS_IMETHODIMP
 nsDocumentViewer::GetDoingPrintPreview(bool *aDoingPrintPreview)
 {
   NS_ENSURE_ARG_POINTER(aDoingPrintPreview);
 
   *aDoingPrintPreview = false;
   if (mPrintEngine) {
     return mPrintEngine->GetDoingPrintPreview(aDoingPrintPreview);
   }
   return NS_OK;
 }
 
-/* readonly attribute nsIPrintSettings currentPrintSettings; */
 NS_IMETHODIMP
 nsDocumentViewer::GetCurrentPrintSettings(nsIPrintSettings * *aCurrentPrintSettings)
 {
   NS_ENSURE_ARG_POINTER(aCurrentPrintSettings);
 
   *aCurrentPrintSettings = nullptr;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetCurrentPrintSettings(aCurrentPrintSettings);
 }
 
 
-/* readonly attribute nsIDOMWindow currentChildDOMWindow; */
 NS_IMETHODIMP 
 nsDocumentViewer::GetCurrentChildDOMWindow(nsIDOMWindow * *aCurrentChildDOMWindow)
 {
   NS_ENSURE_ARG_POINTER(aCurrentChildDOMWindow);
   *aCurrentChildDOMWindow = nullptr;
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void cancel (); */
 NS_IMETHODIMP
 nsDocumentViewer::Cancel()
 {
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
   return mPrintEngine->Cancelled();
 }
 
-/* void exitPrintPreview (); */
 NS_IMETHODIMP
 nsDocumentViewer::ExitPrintPreview()
 {
   if (GetIsPrinting())
     return NS_ERROR_FAILURE;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   if (GetIsPrintPreview()) {
@@ -4006,73 +3997,68 @@ nsDocumentViewer::EnumerateDocumentNames
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->EnumerateDocumentNames(aCount, aResult);
 #else
   return NS_ERROR_FAILURE;
 #endif
 }
 
-/* readonly attribute boolean isFramesetFrameSelected; */
 NS_IMETHODIMP 
 nsDocumentViewer::GetIsFramesetFrameSelected(bool *aIsFramesetFrameSelected)
 {
 #ifdef NS_PRINTING
   *aIsFramesetFrameSelected = false;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetIsFramesetFrameSelected(aIsFramesetFrameSelected);
 #else
   return NS_ERROR_FAILURE;
 #endif
 }
 
-/* readonly attribute long printPreviewNumPages; */
 NS_IMETHODIMP
 nsDocumentViewer::GetPrintPreviewNumPages(int32_t *aPrintPreviewNumPages)
 {
 #ifdef NS_PRINTING
   NS_ENSURE_ARG_POINTER(aPrintPreviewNumPages);
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetPrintPreviewNumPages(aPrintPreviewNumPages);
 #else
   return NS_ERROR_FAILURE;
 #endif
 }
 
-/* readonly attribute boolean isFramesetDocument; */
 NS_IMETHODIMP
 nsDocumentViewer::GetIsFramesetDocument(bool *aIsFramesetDocument)
 {
 #ifdef NS_PRINTING
   *aIsFramesetDocument = false;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetIsFramesetDocument(aIsFramesetDocument);
 #else
   return NS_ERROR_FAILURE;
 #endif
 }
 
-/* readonly attribute boolean isIFrameSelected; */
 NS_IMETHODIMP 
 nsDocumentViewer::GetIsIFrameSelected(bool *aIsIFrameSelected)
 {
 #ifdef NS_PRINTING
   *aIsIFrameSelected = false;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetIsIFrameSelected(aIsIFrameSelected);
 #else
   return NS_ERROR_FAILURE;
 #endif
 }
 
-/* readonly attribute boolean isRangeSelection; */
 NS_IMETHODIMP 
 nsDocumentViewer::GetIsRangeSelection(bool *aIsRangeSelection)
 {
 #ifdef NS_PRINTING
   *aIsRangeSelection = false;
   NS_ENSURE_TRUE(mPrintEngine, NS_ERROR_FAILURE);
 
   return mPrintEngine->GetIsRangeSelection(aIsRangeSelection);
--- a/layout/inspector/nsFontFace.cpp
+++ b/layout/inspector/nsFontFace.cpp
@@ -32,65 +32,59 @@ nsFontFace::~nsFontFace()
 ////////////////////////////////////////////////////////////////////////
 // nsISupports
 
 NS_IMPL_ISUPPORTS(nsFontFace, nsIDOMFontFace)
 
 ////////////////////////////////////////////////////////////////////////
 // nsIDOMFontFace
 
-/* readonly attribute boolean fromFontGroup; */
 NS_IMETHODIMP
 nsFontFace::GetFromFontGroup(bool * aFromFontGroup)
 {
   *aFromFontGroup =
     (mMatchType & gfxTextRange::kFontGroup) != 0;
   return NS_OK;
 }
 
-/* readonly attribute boolean fromLanguagePrefs; */
 NS_IMETHODIMP
 nsFontFace::GetFromLanguagePrefs(bool * aFromLanguagePrefs)
 {
   *aFromLanguagePrefs =
     (mMatchType & gfxTextRange::kPrefsFallback) != 0;
   return NS_OK;
 }
 
-/* readonly attribute boolean fromSystemFallback; */
 NS_IMETHODIMP
 nsFontFace::GetFromSystemFallback(bool * aFromSystemFallback)
 {
   *aFromSystemFallback =
     (mMatchType & gfxTextRange::kSystemFallback) != 0;
   return NS_OK;
 }
 
-/* readonly attribute DOMString name; */
 NS_IMETHODIMP
 nsFontFace::GetName(nsAString & aName)
 {
   if (mFontEntry->IsUserFont() && !mFontEntry->IsLocalUserFont()) {
     NS_ASSERTION(mFontEntry->mUserFontData, "missing userFontData");
     aName = mFontEntry->mUserFontData->mRealName;
   } else {
     aName = mFontEntry->RealFaceName();
   }
   return NS_OK;
 }
 
-/* readonly attribute DOMString CSSFamilyName; */
 NS_IMETHODIMP
 nsFontFace::GetCSSFamilyName(nsAString & aCSSFamilyName)
 {
   aCSSFamilyName = mFontEntry->FamilyName();
   return NS_OK;
 }
 
-/* readonly attribute nsIDOMCSSFontFaceRule rule; */
 NS_IMETHODIMP
 nsFontFace::GetRule(nsIDOMCSSFontFaceRule **aRule)
 {
   // check whether this font entry is associated with an @font-face rule
   // in the relevant font group's user font set
   nsCSSFontFaceRule* rule = nullptr;
   if (mFontEntry->IsUserFont()) {
     FontFaceSet::UserFontSet* fontSet =
@@ -102,59 +96,55 @@ nsFontFace::GetRule(nsIDOMCSSFontFaceRul
       }
     }
   }
 
   NS_IF_ADDREF(*aRule = rule);
   return NS_OK;
 }
 
-/* readonly attribute long srcIndex; */
 NS_IMETHODIMP
 nsFontFace::GetSrcIndex(int32_t * aSrcIndex)
 {
   if (mFontEntry->IsUserFont()) {
     NS_ASSERTION(mFontEntry->mUserFontData, "missing userFontData");
     *aSrcIndex = mFontEntry->mUserFontData->mSrcIndex;
   } else {
     *aSrcIndex = -1;
   }
   return NS_OK;
 }
 
-/* readonly attribute DOMString URI; */
 NS_IMETHODIMP
 nsFontFace::GetURI(nsAString & aURI)
 {
   aURI.Truncate();
   if (mFontEntry->IsUserFont() && !mFontEntry->IsLocalUserFont()) {
     NS_ASSERTION(mFontEntry->mUserFontData, "missing userFontData");
     if (mFontEntry->mUserFontData->mURI) {
       nsAutoCString spec;
       mFontEntry->mUserFontData->mURI->GetSpec(spec);
       AppendUTF8toUTF16(spec, aURI);
     }
   }
   return NS_OK;
 }
 
-/* readonly attribute DOMString localName; */
 NS_IMETHODIMP
 nsFontFace::GetLocalName(nsAString & aLocalName)
 {
   if (mFontEntry->IsLocalUserFont()) {
     NS_ASSERTION(mFontEntry->mUserFontData, "missing userFontData");
     aLocalName = mFontEntry->mUserFontData->mLocalName;
   } else {
     aLocalName.Truncate();
   }
   return NS_OK;
 }
 
-/* readonly attribute DOMString format; */
 static void
 AppendToFormat(nsAString & aResult, const char* aFormat)
 {
   if (!aResult.IsEmpty()) {
     aResult.Append(',');
   }
   aResult.AppendASCII(aFormat);
 }
@@ -186,17 +176,16 @@ nsFontFace::GetFormat(nsAString & aForma
     }
     if (formatFlags & gfxUserFontSet::FLAG_FORMAT_WOFF2) {
       AppendToFormat(aFormat, "woff2");
     }
   }
   return NS_OK;
 }
 
-/* readonly attribute DOMString metadata; */
 NS_IMETHODIMP
 nsFontFace::GetMetadata(nsAString & aMetadata)
 {
   aMetadata.Truncate();
   if (mFontEntry->IsUserFont() && !mFontEntry->IsLocalUserFont()) {
     NS_ASSERTION(mFontEntry->mUserFontData, "missing userFontData");
     const gfxUserFontData* userFontData = mFontEntry->mUserFontData;
     if (userFontData->mMetadata.Length() && userFontData->mMetaOrigLen) {
--- a/layout/inspector/nsFontFaceList.cpp
+++ b/layout/inspector/nsFontFaceList.cpp
@@ -20,17 +20,16 @@ nsFontFaceList::~nsFontFaceList()
 ////////////////////////////////////////////////////////////////////////
 // nsISupports
 
 NS_IMPL_ISUPPORTS(nsFontFaceList, nsIDOMFontFaceList)
 
 ////////////////////////////////////////////////////////////////////////
 // nsIDOMFontFaceList
 
-/* nsIDOMFontFace item (in unsigned long index); */
 struct FindByIndexData {
   uint32_t mTarget;
   uint32_t mCurrent;
   nsIDOMFontFace* mResult;
 };
 
 static PLDHashOperator
 FindByIndex(gfxFontEntry* aKey, nsIDOMFontFace* aData, void* aUserData)
@@ -53,17 +52,16 @@ nsFontFaceList::Item(uint32_t index, nsI
   userData.mCurrent = 0;
   userData.mResult = nullptr;
   mFontFaces.EnumerateRead(FindByIndex, &userData);
   NS_ASSERTION(userData.mResult != nullptr, "null entry in nsFontFaceList?");
   NS_IF_ADDREF(*_retval = userData.mResult);
   return NS_OK;
 }
 
-/* readonly attribute unsigned long length; */
 NS_IMETHODIMP
 nsFontFaceList::GetLength(uint32_t *aLength)
 {
   *aLength = mFontFaces.Count();
   return NS_OK;
 }
 
 ////////////////////////////////////////////////////////////////////////
--- a/layout/printing/nsPrintEngine.cpp
+++ b/layout/printing/nsPrintEngine.cpp
@@ -792,27 +792,25 @@ nsPrintEngine::PrintPreview(nsIPrintSett
   aChildDOMWin->GetDocument(getter_AddRefs(doc));
   NS_ENSURE_STATE(doc);
 
   // Document is not busy -- go ahead with the Print Preview
   return CommonPrint(true, aPrintSettings, aWebProgressListener, doc);
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean isFramesetDocument; */
 NS_IMETHODIMP
 nsPrintEngine::GetIsFramesetDocument(bool *aIsFramesetDocument)
 {
   nsCOMPtr<nsIDocShell> webContainer(do_QueryReferent(mContainer));
   *aIsFramesetDocument = IsParentAFrameSet(webContainer);
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean isIFrameSelected; */
 NS_IMETHODIMP 
 nsPrintEngine::GetIsIFrameSelected(bool *aIsIFrameSelected)
 {
   *aIsIFrameSelected = false;
 
   // Get the docshell for this documentviewer
   nsCOMPtr<nsIDocShell> webContainer(do_QueryReferent(mContainer));
   // Get the currently focused window
@@ -823,39 +821,36 @@ nsPrintEngine::GetIsIFrameSelected(bool 
     // is a child of this docshell
     bool isParentFrameSet;
     *aIsIFrameSelected = IsThereAnIFrameSelected(webContainer, currentFocusWin, isParentFrameSet);
   }
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean isRangeSelection; */
 NS_IMETHODIMP 
 nsPrintEngine::GetIsRangeSelection(bool *aIsRangeSelection)
 {
   // Get the currently focused window 
   nsCOMPtr<nsIDOMWindow> currentFocusWin = FindFocusedDOMWindow();
   *aIsRangeSelection = IsThereARangeSelection(currentFocusWin);
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean isFramesetFrameSelected; */
 NS_IMETHODIMP 
 nsPrintEngine::GetIsFramesetFrameSelected(bool *aIsFramesetFrameSelected)
 {
   // Get the currently focused window 
   nsCOMPtr<nsIDOMWindow> currentFocusWin = FindFocusedDOMWindow();
   *aIsFramesetFrameSelected = currentFocusWin != nullptr;
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute long printPreviewNumPages; */
 NS_IMETHODIMP
 nsPrintEngine::GetPrintPreviewNumPages(int32_t *aPrintPreviewNumPages)
 {
   NS_ENSURE_ARG_POINTER(aPrintPreviewNumPages);
 
   nsPrintData* prt = nullptr;
   nsIFrame* seqFrame  = nullptr;
   *aPrintPreviewNumPages = 0;
@@ -907,53 +902,49 @@ nsPrintEngine::EnumerateDocumentNames(ui
   *aCount  = numDocs;
   *aResult = array;
 
   return NS_OK;
 
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute nsIPrintSettings globalPrintSettings; */
 nsresult
 nsPrintEngine::GetGlobalPrintSettings(nsIPrintSettings **aGlobalPrintSettings)
 {
   NS_ENSURE_ARG_POINTER(aGlobalPrintSettings);
 
   nsresult rv = NS_ERROR_FAILURE;
   nsCOMPtr<nsIPrintSettingsService> printSettingsService =
     do_GetService(sPrintSettingsServiceContractID, &rv);
   if (NS_SUCCEEDED(rv)) {
     rv = printSettingsService->GetGlobalPrintSettings(aGlobalPrintSettings);
   }
   return rv;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean doingPrint; */
 NS_IMETHODIMP
 nsPrintEngine::GetDoingPrint(bool *aDoingPrint)
 {
   NS_ENSURE_ARG_POINTER(aDoingPrint);
   *aDoingPrint = mIsDoingPrinting;
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute boolean doingPrintPreview; */
 NS_IMETHODIMP
 nsPrintEngine::GetDoingPrintPreview(bool *aDoingPrintPreview)
 {
   NS_ENSURE_ARG_POINTER(aDoingPrintPreview);
   *aDoingPrintPreview = mIsDoingPrintPreview;
   return NS_OK;
 }
 
 //----------------------------------------------------------------------------------
-/* readonly attribute nsIPrintSettings currentPrintSettings; */
 NS_IMETHODIMP
 nsPrintEngine::GetCurrentPrintSettings(nsIPrintSettings * *aCurrentPrintSettings)
 {
   NS_ENSURE_ARG_POINTER(aCurrentPrintSettings);
 
   if (mPrt) {
     *aCurrentPrintSettings = mPrt->mPrintSettings;
 
--- a/layout/xul/ScrollBoxObject.cpp
+++ b/layout/xul/ScrollBoxObject.cpp
@@ -31,42 +31,39 @@ JSObject* ScrollBoxObject::WrapObject(JS
   return ScrollBoxObjectBinding::Wrap(aCx, this, aGivenProto);
 }
 
 nsIScrollableFrame* ScrollBoxObject::GetScrollFrame()
 {
   return do_QueryFrame(GetFrame(false));
 }
 
-/* void scrollTo (long x, long y); */
 void ScrollBoxObject::ScrollTo(int32_t x, int32_t y, ErrorResult& aRv)
 {
   nsIScrollableFrame* sf = GetScrollFrame();
   if (!sf) {
     aRv.Throw(NS_ERROR_FAILURE);
     return;
   }
 
   sf->ScrollToCSSPixels(CSSIntPoint(x, y));
 }
 
-/* void scrollBy (long dx, long dy); */
 void ScrollBoxObject::ScrollBy(int32_t dx, int32_t dy, ErrorResult& aRv)
 {
   CSSIntPoint pt;
   GetPosition(pt, aRv);
 
   if (aRv.Failed()) {
     return;
   }
 
   ScrollTo(pt.x + dx, pt.y + dy, aRv);
 }
 
-/* void scrollByLine (long dlines); */
 void ScrollBoxObject::ScrollByLine(int32_t dlines, ErrorResult& aRv)
 {
   nsIScrollableFrame* sf = GetScrollFrame();
   if (!sf) {
     aRv.Throw(NS_ERROR_FAILURE);
     return;
   }
 
@@ -93,17 +90,16 @@ static nsIFrame* GetScrolledBox(BoxObjec
   }
 
   nsIFrame* scrolledFrame = scrollFrame->GetScrolledFrame();
   if (!scrolledFrame)
     return nullptr;
   return nsBox::GetChildBox(scrolledFrame);
 }
 
-/* void scrollByIndex (long dindexes); */
 void ScrollBoxObject::ScrollByIndex(int32_t dindexes, ErrorResult& aRv)
 {
     nsIScrollableFrame* sf = GetScrollFrame();
     if (!sf) {
       aRv.Throw(NS_ERROR_FAILURE);
       return;
     }
 
@@ -211,32 +207,30 @@ void ScrollBoxObject::ScrollByIndex(int3
        sf->ScrollTo(pt, nsIScrollableFrame::INSTANT, &range);
    } else {
        // Use a destination range that ensures the top edge will be visible.
        nsRect range(cp.x, rect.y - csspixel, 0, csspixel);
        sf->ScrollTo(nsPoint(cp.x, rect.y), nsIScrollableFrame::INSTANT, &range);
    }
 }
 
-/* void scrollToLine (in long line); */
 void ScrollBoxObject::ScrollToLine(int32_t line, ErrorResult& aRv)
 {
   nsIScrollableFrame* sf = GetScrollFrame();
   if (!sf) {
     aRv.Throw(NS_ERROR_FAILURE);
     return;
   }
 
   nscoord y = sf->GetLineScrollAmount().height * line;
   nsRect range(0, y - nsPresContext::CSSPixelsToAppUnits(1),
                0, nsPresContext::CSSPixelsToAppUnits(1));
   sf->ScrollTo(nsPoint(0, y), nsIScrollableFrame::INSTANT, &range);
 }
 
-/* void scrollToElement (Element child); */
 void ScrollBoxObject::ScrollToElement(Element& child, ErrorResult& aRv)
 {
   nsCOMPtr<nsIPresShell> shell = GetPresShell(false);
   if (!shell) {
     aRv.Throw(NS_ERROR_UNEXPECTED);
     return;
   }
 
@@ -246,17 +240,16 @@ void ScrollBoxObject::ScrollToElement(El
                                  nsIPresShell::SCROLL_ALWAYS),
                                nsIPresShell::ScrollAxis(
                                  nsIPresShell::SCROLL_LEFT,
                                  nsIPresShell::SCROLL_ALWAYS),
                                nsIPresShell::SCROLL_FIRST_ANCESTOR_ONLY |
                                nsIPresShell::SCROLL_OVERFLOW_HIDDEN);
 }
 
-/* void scrollToIndex (long index); */
 void ScrollBoxObject::ScrollToIndex(int32_t index, ErrorResult& aRv)
 {
   aRv.Throw(NS_ERROR_NOT_IMPLEMENTED);
 }
 
 int32_t ScrollBoxObject::GetPositionX(ErrorResult& aRv)
 {
   CSSIntPoint pt;
@@ -346,39 +339,36 @@ void ScrollBoxObject::GetScrolledSize(JS
   }
   if (!ToJSValue(cx, rect.height, &v) ||
       !JS_SetProperty(cx, height, "value", v)) {
     aRv.Throw(NS_ERROR_XPC_CANT_SET_OUT_VAL);
     return;
   }
 }
 
-/* void ensureElementIsVisible (in nsIDOMElement child); */
 void ScrollBoxObject::EnsureElementIsVisible(Element& child, ErrorResult& aRv)
 {
     nsCOMPtr<nsIPresShell> shell = GetPresShell(false);
     if (!shell) {
       aRv.Throw(NS_ERROR_UNEXPECTED);
       return;
     }
 
     shell->ScrollContentIntoView(&child,
                                  nsIPresShell::ScrollAxis(),
                                  nsIPresShell::ScrollAxis(),
                                  nsIPresShell::SCROLL_FIRST_ANCESTOR_ONLY |
                                  nsIPresShell::SCROLL_OVERFLOW_HIDDEN);
 }
 
-/* void ensureIndexIsVisible (long index); */
 void ScrollBoxObject::EnsureIndexIsVisible(int32_t index, ErrorResult& aRv)
 {
   aRv.Throw(NS_ERROR_NOT_IMPLEMENTED);
 }
 
-/* void ensureLineIsVisible (long line); */
 void ScrollBoxObject::EnsureLineIsVisible(int32_t line, ErrorResult& aRv)
 {
   aRv.Throw(NS_ERROR_NOT_IMPLEMENTED);
 }
 
 } // namespace dom
 } // namespace mozilla
 
--- a/layout/xul/nsImageBoxFrame.cpp
+++ b/layout/xul/nsImageBoxFrame.cpp
@@ -828,28 +828,26 @@ NS_IMETHODIMP
 nsImageBoxListener::Notify(imgIRequest *request, int32_t aType, const nsIntRect* aData)
 {
   if (!mFrame)
     return NS_OK;
 
   return mFrame->Notify(request, aType, aData);
 }
 
-/* void blockOnload (in imgIRequest aRequest); */
 NS_IMETHODIMP
 nsImageBoxListener::BlockOnload(imgIRequest *aRequest)
 {
   if (mFrame && mFrame->GetContent() && mFrame->GetContent()->GetCurrentDoc()) {
     mFrame->GetContent()->GetCurrentDoc()->BlockOnload();
   }
 
   return NS_OK;
 }
 
-/* void unblockOnload (in imgIRequest aRequest); */
 NS_IMETHODIMP
 nsImageBoxListener::UnblockOnload(imgIRequest *aRequest)
 {
   if (mFrame && mFrame->GetContent() && mFrame->GetContent()->GetCurrentDoc()) {
     mFrame->GetContent()->GetCurrentDoc()->UnblockOnload(false);
   }
 
   return NS_OK;
--- a/modules/libjar/zipwriter/nsDeflateConverter.cpp
+++ b/modules/libjar/zipwriter/nsDeflateConverter.cpp
@@ -134,17 +134,16 @@ NS_IMETHODIMP nsDeflateConverter::OnData
             NS_ENSURE_SUCCESS(rv, rv);
             zerr = deflate(&mZstream, Z_NO_FLUSH);
         }
     }
 
     return NS_OK;
 }
 
-/* void onStartRequest (in nsIRequest aRequest, in nsISupports aContext); */
 NS_IMETHODIMP nsDeflateConverter::OnStartRequest(nsIRequest *aRequest,
                                                  nsISupports *aContext)
 {
     if (!mListener)
         return NS_ERROR_NOT_INITIALIZED;
 
     return mListener->OnStartRequest(aRequest, mContext);
 }
--- a/modules/libjar/zipwriter/nsZipDataStream.cpp
+++ b/modules/libjar/zipwriter/nsZipDataStream.cpp
@@ -75,17 +75,16 @@ NS_IMETHODIMP nsZipDataStream::OnDataAva
     NS_ENSURE_TRUE(buffer, NS_ERROR_OUT_OF_MEMORY);
 
     nsresult rv = ZW_ReadData(aInputStream, buffer.get(), aCount);
     NS_ENSURE_SUCCESS(rv, rv);
 
     return ProcessData(aRequest, aContext, buffer.get(), aOffset, aCount);
 }
 
-/* void onStartRequest (in nsIRequest aRequest, in nsISupports aContext); */
 NS_IMETHODIMP nsZipDataStream::OnStartRequest(nsIRequest *aRequest,
                                               nsISupports *aContext)
 {
     if (!mOutput)
         return NS_ERROR_NOT_INITIALIZED;
 
     return mOutput->OnStartRequest(aRequest, aContext);
 }
--- a/modules/libjar/zipwriter/nsZipHeader.cpp
+++ b/modules/libjar/zipwriter/nsZipHeader.cpp
@@ -18,65 +18,59 @@
 #define ZIP_EXTENDED_TIMESTAMP_FIELD 0x5455
 #define ZIP_EXTENDED_TIMESTAMP_MODTIME 0x01
 
 /**
  * nsZipHeader represents an entry from a zip file.
  */
 NS_IMPL_ISUPPORTS(nsZipHeader, nsIZipEntry)
 
-/* readonly attribute unsigned short compression; */
 NS_IMETHODIMP nsZipHeader::GetCompression(uint16_t *aCompression)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     *aCompression = mMethod;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long size; */
 NS_IMETHODIMP nsZipHeader::GetSize(uint32_t *aSize)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     *aSize = mCSize;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long realSize; */
 NS_IMETHODIMP nsZipHeader::GetRealSize(uint32_t *aRealSize)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     *aRealSize = mUSize;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long CRC32; */
 NS_IMETHODIMP nsZipHeader::GetCRC32(uint32_t *aCRC32)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     *aCRC32 = mCRC;
     return NS_OK;
 }
 
-/* readonly attribute boolean isDirectory; */
 NS_IMETHODIMP nsZipHeader::GetIsDirectory(bool *aIsDirectory)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     if (mName.Last() == '/')
         *aIsDirectory = true;
     else
         *aIsDirectory = false;
     return NS_OK;
 }
 
-/* readonly attribute PRTime lastModifiedTime; */
 NS_IMETHODIMP nsZipHeader::GetLastModifiedTime(PRTime *aLastModifiedTime)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     // Try to read timestamp from extra field
     uint16_t blocksize;
     const uint8_t *tsField = GetExtraField(ZIP_EXTENDED_TIMESTAMP_FIELD, false, &blocksize);
     if (tsField && blocksize >= 5) {
@@ -113,26 +107,24 @@ NS_IMETHODIMP nsZipHeader::GetLastModifi
     PR_NormalizeTime(&time, PR_GMTParameters);
     time.tm_params.tp_dst_offset = PR_LocalTimeParameters(&time).tp_dst_offset;
 
     *aLastModifiedTime = PR_ImplodeTime(&time);
 
     return NS_OK;
 }
 
-/* readonly attribute boolean isSynthetic; */
 NS_IMETHODIMP nsZipHeader::GetIsSynthetic(bool *aIsSynthetic)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     *aIsSynthetic = false;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long permissions; */
 NS_IMETHODIMP nsZipHeader::GetPermissions(uint32_t *aPermissions)
 {
     NS_ASSERTION(mInited, "Not initalised");
 
     // Always give user read access at least, this matches nsIZipReader's behaviour
     *aPermissions = ((mEAttr >> 16) & 0xfff) | 0x100;
     return NS_OK;
 }
--- a/modules/libjar/zipwriter/nsZipWriter.cpp
+++ b/modules/libjar/zipwriter/nsZipWriter.cpp
@@ -54,17 +54,16 @@ nsZipWriter::nsZipWriter()
 }
 
 nsZipWriter::~nsZipWriter()
 {
     if (mStream && !mInQueue)
         Close();
 }
 
-/* attribute AString comment; */
 NS_IMETHODIMP nsZipWriter::GetComment(nsACString & aComment)
 {
     if (!mStream)
         return NS_ERROR_NOT_INITIALIZED;
 
     aComment = mComment;
     return NS_OK;
 }
@@ -74,24 +73,22 @@ NS_IMETHODIMP nsZipWriter::SetComment(co
     if (!mStream)
         return NS_ERROR_NOT_INITIALIZED;
 
     mComment = aComment;
     mCDSDirty = true;
     return NS_OK;
 }
 
-/* readonly attribute boolean inQueue; */
 NS_IMETHODIMP nsZipWriter::GetInQueue(bool *aInQueue)
 {
     *aInQueue = mInQueue;
     return NS_OK;
 }
 
-/* readonly attribute nsIFile file; */
 NS_IMETHODIMP nsZipWriter::GetFile(nsIFile **aFile)
 {
     if (!mFile)
         return NS_ERROR_NOT_INITIALIZED;
 
     nsCOMPtr<nsIFile> file;
     nsresult rv = mFile->Clone(getter_AddRefs(file));
     NS_ENSURE_SUCCESS(rv, rv);
@@ -222,17 +219,16 @@ nsresult nsZipWriter::ReadFile(nsIFile *
         // Overlap by the size of the end of cdr
         seek -= (1024 - ZIP_EOCDR_HEADER_SIZE);
     }
     // Will never reach here in reality
     NS_NOTREACHED("Loop should never complete");
     return NS_ERROR_UNEXPECTED;
 }
 
-/* void open (in nsIFile aFile, in int32_t aIoFlags); */
 NS_IMETHODIMP nsZipWriter::Open(nsIFile *aFile, int32_t aIoFlags)
 {
     if (mStream)
         return NS_ERROR_ALREADY_INITIALIZED;
 
     NS_ENSURE_ARG_POINTER(aFile);
 
     // Need to be able to write to the file
@@ -281,30 +277,28 @@ NS_IMETHODIMP nsZipWriter::Open(nsIFile 
     if (mCDSOffset > 0) {
         rv = SeekCDS();
         NS_ENSURE_SUCCESS(rv, rv);
     }
 
     return NS_OK;
 }
 
-/* nsIZipEntry getEntry (in AString aZipEntry); */
 NS_IMETHODIMP nsZipWriter::GetEntry(const nsACString & aZipEntry,
                                     nsIZipEntry **_retval)
 {
     int32_t pos;
     if (mEntryHash.Get(aZipEntry, &pos))
         NS_ADDREF(*_retval = mHeaders[pos]);
     else
         *_retval = nullptr;
 
     return NS_OK;
 }
 
-/* boolean hasEntry (in AString aZipEntry); */
 NS_IMETHODIMP nsZipWriter::HasEntry(const nsACString & aZipEntry,
                                     bool *_retval)
 {
     *_retval = mEntryHash.Get(aZipEntry, nullptr);
 
     return NS_OK;
 }
 
@@ -504,17 +498,16 @@ nsresult nsZipWriter::AddEntryStream(con
     }
 
     rv = stream->ReadStream(aStream);
     if (NS_FAILED(rv))
         SeekCDS();
     return rv;
 }
 
-/* void removeEntry (in AUTF8String aZipEntry, in boolean aQueue); */
 NS_IMETHODIMP nsZipWriter::RemoveEntry(const nsACString & aZipEntry,
                                        bool aQueue)
 {
     if (!mStream)
         return NS_ERROR_NOT_INITIALIZED;
 
     if (aQueue) {
         nsZipQueueItem item;
@@ -621,17 +614,16 @@ NS_IMETHODIMP nsZipWriter::ProcessQueue(
     if (mProcessObserver)
         mProcessObserver->OnStartRequest(nullptr, mProcessContext);
 
     BeginProcessingNextItem();
 
     return NS_OK;
 }
 
-/* void close (); */
 NS_IMETHODIMP nsZipWriter::Close()
 {
     if (!mStream)
         return NS_ERROR_NOT_INITIALIZED;
     if (mInQueue)
         return NS_ERROR_IN_PROGRESS;
 
     if (mCDSDirty) {
@@ -699,17 +691,16 @@ NS_IMETHODIMP nsZipWriter::Close()
     mHeaders.Clear();
     mEntryHash.Clear();
     mQueue.Clear();
 
     return rv;
 }
 
 // Our nsIRequestObserver monitors removal operations performed on the queue
-/* void onStartRequest (in nsIRequest aRequest, in nsISupports aContext); */
 NS_IMETHODIMP nsZipWriter::OnStartRequest(nsIRequest *aRequest,
                                           nsISupports *aContext)
 {
     return NS_OK;
 }
 
 /* void onStopRequest (in nsIRequest aRequest, in nsISupports aContext,
  *                                             in nsresult aStatusCode); */
--- a/modules/libpref/nsPrefBranch.cpp
+++ b/modules/libpref/nsPrefBranch.cpp
@@ -510,17 +510,16 @@ NS_IMETHODIMP nsPrefBranch::PrefIsLocked
 NS_IMETHODIMP nsPrefBranch::UnlockPref(const char *aPrefName)
 {
   ENSURE_MAIN_PROCESS("Cannot UnlockPref from content process:", aPrefName);
   NS_ENSURE_ARG(aPrefName);
   const char *pref = getPrefName(aPrefName);
   return PREF_LockPref(pref, false);
 }
 
-/* void resetBranch (in string startingAt); */
 NS_IMETHODIMP nsPrefBranch::ResetBranch(const char *aStartingAt)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 NS_IMETHODIMP nsPrefBranch::DeleteBranch(const char *aStartingAt)
 {
   ENSURE_MAIN_PROCESS("Cannot DeleteBranch from content process:", aStartingAt);
--- a/netwerk/base/SchedulingContextService.cpp
+++ b/netwerk/base/SchedulingContextService.cpp
@@ -68,32 +68,30 @@ NS_IMETHODIMP
 SchedulingContext::RemoveBlockingTransaction(uint32_t *outval)
 {
   NS_ENSURE_ARG_POINTER(outval);
   mBlockingTransactionCount--;
   *outval = mBlockingTransactionCount;
   return NS_OK;
 }
 
-/* [noscript] attribute SpdyPushCachePtr spdyPushCache; */
 NS_IMETHODIMP
 SchedulingContext::GetSpdyPushCache(mozilla::net::SpdyPushCache **aSpdyPushCache)
 {
   *aSpdyPushCache = mSpdyCache.get();
   return NS_OK;
 }
 
 NS_IMETHODIMP
 SchedulingContext::SetSpdyPushCache(mozilla::net::SpdyPushCache *aSpdyPushCache)
 {
   mSpdyCache = aSpdyPushCache;
   return NS_OK;
 }
 
-/* [noscript] readonly attribute nsID ID; */
 NS_IMETHODIMP
 SchedulingContext::GetID(nsID *outval)
 {
   NS_ENSURE_ARG_POINTER(outval);
   *outval = mID;
   return NS_OK;
 }
 
--- a/netwerk/base/nsLoadGroup.cpp
+++ b/netwerk/base/nsLoadGroup.cpp
@@ -717,17 +717,16 @@ nsLoadGroup::GetSchedulingContextID(nsID
         return NS_ERROR_NOT_AVAILABLE;
     }
     return mSchedulingContext->GetID(aSCID);
 }
 
 ////////////////////////////////////////////////////////////////////////////////
 // nsILoadGroupChild methods:
 
-/* attribute nsILoadGroup parentLoadGroup; */
 NS_IMETHODIMP
 nsLoadGroup::GetParentLoadGroup(nsILoadGroup * *aParentLoadGroup)
 {
     *aParentLoadGroup = nullptr;
     nsCOMPtr<nsILoadGroup> parent = do_QueryReferent(mParentLoadGroup);
     if (!parent)
         return NS_OK;
     parent.forget(aParentLoadGroup);
@@ -736,25 +735,23 @@ nsLoadGroup::GetParentLoadGroup(nsILoadG
 
 NS_IMETHODIMP
 nsLoadGroup::SetParentLoadGroup(nsILoadGroup *aParentLoadGroup)
 {
     mParentLoadGroup = do_GetWeakReference(aParentLoadGroup);
     return NS_OK;
 }
 
-/* readonly attribute nsILoadGroup childLoadGroup; */
 NS_IMETHODIMP
 nsLoadGroup::GetChildLoadGroup(nsILoadGroup * *aChildLoadGroup)
 {
     NS_ADDREF(*aChildLoadGroup = this);
     return NS_OK;
 }
 
-/* readonly attribute nsILoadGroup rootLoadGroup; */
 NS_IMETHODIMP
 nsLoadGroup::GetRootLoadGroup(nsILoadGroup * *aRootLoadGroup)
 {
     // first recursively try the root load group of our parent
     nsCOMPtr<nsILoadGroupChild> ancestor = do_QueryReferent(mParentLoadGroup);
     if (ancestor)
         return ancestor->GetRootLoadGroup(aRootLoadGroup);
 
--- a/netwerk/base/nsMIMEInputStream.cpp
+++ b/netwerk/base/nsMIMEInputStream.cpp
@@ -109,32 +109,30 @@ NS_METHOD nsMIMEInputStream::Init()
 
     rv = mStream->AppendStream(mCLStream);
     NS_ENSURE_SUCCESS(rv, rv);
 
     return NS_OK;
 }
 
 
-/* attribute boolean addContentLength; */
 NS_IMETHODIMP
 nsMIMEInputStream::GetAddContentLength(bool *aAddContentLength)
 {
     *aAddContentLength = mAddContentLength;
     return NS_OK;
 }
 NS_IMETHODIMP
 nsMIMEInputStream::SetAddContentLength(bool aAddContentLength)
 {
     NS_ENSURE_FALSE(mStartedReading, NS_ERROR_FAILURE);
     mAddContentLength = aAddContentLength;
     return NS_OK;
 }
 
-/* void addHeader ([const] in string name, [const] in string value); */
 NS_IMETHODIMP
 nsMIMEInputStream::AddHeader(const char *aName, const char *aValue)
 {
     NS_ENSURE_FALSE(mStartedReading, NS_ERROR_FAILURE);
     mHeaders.Append(aName);
     mHeaders.AppendLiteral(": ");
     mHeaders.Append(aValue);
     mHeaders.AppendLiteral("\r\n");
@@ -142,17 +140,16 @@ nsMIMEInputStream::AddHeader(const char 
     // Just in case someone somehow uses our stream, lets at least
     // let the stream have a valid pointer. The stream will be properly
     // initialized in nsMIMEInputStream::InitStreams
     mHeaderStream->ShareData(mHeaders.get(), 0);
 
     return NS_OK;
 }
 
-/* void setData (in nsIInputStream stream); */
 NS_IMETHODIMP
 nsMIMEInputStream::SetData(nsIInputStream *aStream)
 {
     NS_ENSURE_FALSE(mStartedReading, NS_ERROR_FAILURE);
     // Remove the old stream if there is one
     if (mData)
         mStream->RemoveStream(2);
 
--- a/netwerk/base/nsNetAddr.cpp
+++ b/netwerk/base/nsNetAddr.cpp
@@ -14,17 +14,16 @@ NS_IMPL_ISUPPORTS(nsNetAddr, nsINetAddr)
 
 /* Makes a copy of |addr| */
 nsNetAddr::nsNetAddr(NetAddr* addr)
 {
   NS_ASSERTION(addr, "null addr");
   mAddr = *addr;
 }
 
-/* readonly attribute unsigned short family; */
 NS_IMETHODIMP nsNetAddr::GetFamily(uint16_t *aFamily)
 {
   switch(mAddr.raw.family) {
   case AF_INET:
     *aFamily = nsINetAddr::FAMILY_INET;
     break;
   case AF_INET6:
     *aFamily = nsINetAddr::FAMILY_INET6;
@@ -36,17 +35,16 @@ NS_IMETHODIMP nsNetAddr::GetFamily(uint1
 #endif
   default:
     return NS_ERROR_UNEXPECTED;
   }
 
   return NS_OK;
 }
 
-/* readonly attribute AUTF8String address; */
 NS_IMETHODIMP nsNetAddr::GetAddress(nsACString & aAddress)
 {
   switch(mAddr.raw.family) {
   /* PR_NetAddrToString can handle INET and INET6, but not LOCAL. */
   case AF_INET:
     aAddress.SetCapacity(kIPv4CStrBufSize);
     NetAddrToString(&mAddr, aAddress.BeginWriting(), kIPv4CStrBufSize);
     aAddress.SetLength(strlen(aAddress.BeginReading()));
@@ -64,17 +62,16 @@ NS_IMETHODIMP nsNetAddr::GetAddress(nsAC
   // PR_AF_LOCAL falls through to default when not XP_UNIX
   default:
     return NS_ERROR_UNEXPECTED;
   }
   
   return NS_OK;
 }
 
-/* readonly attribute unsigned short port; */
 NS_IMETHODIMP nsNetAddr::GetPort(uint16_t *aPort)
 {
   switch(mAddr.raw.family) {
   case AF_INET:
     *aPort = ntohs(mAddr.inet.port);
     break;
   case AF_INET6:
     *aPort = ntohs(mAddr.inet6.port);
@@ -86,17 +83,16 @@ NS_IMETHODIMP nsNetAddr::GetPort(uint16_
 #endif
   default:
     return NS_ERROR_UNEXPECTED;
   }
 
   return NS_OK;
 }
 
-/* readonly attribute unsigned long flow; */
 NS_IMETHODIMP nsNetAddr::GetFlow(uint32_t *aFlow)
 {
   switch(mAddr.raw.family) {
   case AF_INET6:
     *aFlow = ntohl(mAddr.inet6.flowinfo);
     break;
   case AF_INET:
 #if defined(XP_UNIX)
@@ -106,17 +102,16 @@ NS_IMETHODIMP nsNetAddr::GetFlow(uint32_
     return NS_ERROR_NOT_AVAILABLE;
   default:
     return NS_ERROR_UNEXPECTED;
   }
 
   return NS_OK;
 }
 
-/* readonly attribute unsigned long scope; */
 NS_IMETHODIMP nsNetAddr::GetScope(uint32_t *aScope)
 {
   switch(mAddr.raw.family) {
   case AF_INET6:
     *aScope = ntohl(mAddr.inet6.scope_id);
     break;
   case AF_INET:
 #if defined(XP_UNIX)
@@ -126,17 +121,16 @@ NS_IMETHODIMP nsNetAddr::GetScope(uint32
     return NS_ERROR_NOT_AVAILABLE;
   default:
     return NS_ERROR_UNEXPECTED;
   }
 
   return NS_OK;
 }
 
-/* readonly attribute boolean isV4Mapped; */
 NS_IMETHODIMP nsNetAddr::GetIsV4Mapped(bool *aIsV4Mapped)
 {
   switch(mAddr.raw.family) {
   case AF_INET6:
     *aIsV4Mapped = IPv6ADDR_IS_V4MAPPED(&mAddr.inet6.ip);
     break;
   case AF_INET:
 #if defined(XP_UNIX)
--- a/netwerk/base/nsSocketTransport2.cpp
+++ b/netwerk/base/nsSocketTransport2.cpp
@@ -2352,33 +2352,31 @@ nsSocketTransport::Bind(NetAddr *aLocalA
     }
 
     mBindAddr = new NetAddr();
     memcpy(mBindAddr.get(), aLocalAddr, sizeof(NetAddr));
 
     return NS_OK;
 }
 
-/* nsINetAddr getScriptablePeerAddr (); */
 NS_IMETHODIMP
 nsSocketTransport::GetScriptablePeerAddr(nsINetAddr * *addr)
 {
     NetAddr rawAddr;
 
     nsresult rv;
     rv = GetPeerAddr(&rawAddr);
     if (NS_FAILED(rv))
         return rv;
 
     NS_ADDREF(*addr = new nsNetAddr(&rawAddr));
 
     return NS_OK;
 }
 
-/* nsINetAddr getScriptableSelfAddr (); */
 NS_IMETHODIMP
 nsSocketTransport::GetScriptableSelfAddr(nsINetAddr * *addr)
 {
     NetAddr rawAddr;
 
     nsresult rv;
     rv = GetSelfAddr(&rawAddr);
     if (NS_FAILED(rv))
--- a/netwerk/base/nsStreamLoader.cpp
+++ b/netwerk/base/nsStreamLoader.cpp
@@ -50,17 +50,16 @@ NS_IMPL_ISUPPORTS(nsStreamLoader, nsIStr
 
 NS_IMETHODIMP 
 nsStreamLoader::GetNumBytesRead(uint32_t* aNumBytes)
 {
   *aNumBytes = mData.length();
   return NS_OK;
 }
 
-/* readonly attribute nsIRequest request; */
 NS_IMETHODIMP 
 nsStreamLoader::GetRequest(nsIRequest **aRequest)
 {
   NS_IF_ADDREF(*aRequest = mRequest);
   return NS_OK;
 }
 
 NS_IMETHODIMP
--- a/netwerk/base/nsUDPSocket.cpp
+++ b/netwerk/base/nsUDPSocket.cpp
@@ -290,33 +290,30 @@ nsUDPOutputStream::nsUDPOutputStream(nsU
   , mIsClosed(false)
 {
 }
 
 nsUDPOutputStream::~nsUDPOutputStream()
 {
 }
 
-/* void close (); */
 NS_IMETHODIMP nsUDPOutputStream::Close()
 {
   if (mIsClosed)
     return NS_BASE_STREAM_CLOSED;
 
   mIsClosed = true;
   return NS_OK;
 }
 
-/* void flush (); */
 NS_IMETHODIMP nsUDPOutputStream::Flush()
 {
   return NS_OK;
 }
 
-/* unsigned long write (in string aBuf, in unsigned long aCount); */
 NS_IMETHODIMP nsUDPOutputStream::Write(const char * aBuf, uint32_t aCount, uint32_t *_retval)
 {
   if (mIsClosed)
     return NS_BASE_STREAM_CLOSED;
 
   *_retval = 0;
   int32_t count = PR_SendTo(mFD, aBuf, aCount, 0, &mPrClientAddr, PR_INTERVAL_NO_WAIT);
   if (count < 0) {
@@ -326,29 +323,26 @@ NS_IMETHODIMP nsUDPOutputStream::Write(c
 
   *_retval = count;
 
   mSocket->AddOutputBytes(count);
 
   return NS_OK;
 }
 
-/* unsigned long writeFrom (in nsIInputStream aFromStream, in unsigned long aCount); */
 NS_IMETHODIMP nsUDPOutputStream::WriteFrom(nsIInputStream *aFromStream, uint32_t aCount, uint32_t *_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* [noscript] unsigned long writeSegments (in nsReadSegmentFun aReader, in voidPtr aClosure, in unsigned long aCount); */
 NS_IMETHODIMP nsUDPOutputStream::WriteSegments(nsReadSegmentFun aReader, void *aClosure, uint32_t aCount, uint32_t *_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* boolean isNonBlocking (); */
 NS_IMETHODIMP nsUDPOutputStream::IsNonBlocking(bool *_retval)
 {
   *_retval = true;
   return NS_OK;
 }
 
 //-----------------------------------------------------------------------------
 // nsUDPMessage impl
@@ -384,59 +378,54 @@ nsUDPMessage::nsUDPMessage(NetAddr* aAdd
   aData.SwapElements(mData);
 }
 
 nsUDPMessage::~nsUDPMessage()
 {
   mozilla::DropJSObjects(this);
 }
 
-/* readonly attribute nsINetAddr from; */
 NS_IMETHODIMP
 nsUDPMessage::GetFromAddr(nsINetAddr * *aFromAddr)
 {
   NS_ENSURE_ARG_POINTER(aFromAddr);
 
   nsCOMPtr<nsINetAddr> result = new nsNetAddr(&mAddr);
   result.forget(aFromAddr);
 
   return NS_OK;
 }
 
-/* readonly attribute ACString data; */
 NS_IMETHODIMP
 nsUDPMessage::GetData(nsACString & aData)
 {
   aData.Assign(reinterpret_cast<const char*>(mData.Elements()), mData.Length());
   return NS_OK;
 }
 
-/* readonly attribute nsIOutputStream outputStream; */
 NS_IMETHODIMP
 nsUDPMessage::GetOutputStream(nsIOutputStream * *aOutputStream)
 {
   NS_ENSURE_ARG_POINTER(aOutputStream);
   NS_IF_ADDREF(*aOutputStream = mOutputStream);
   return NS_OK;
 }
 
-/* readonly attribute jsval rawData; */
 NS_IMETHODIMP
 nsUDPMessage::GetRawData(JSContext* cx,
                          JS::MutableHandleValue aRawData)
 {
   if(!mJsobj){
     mJsobj = mozilla::dom::Uint8Array::Create(cx, nullptr, mData.Length(), mData.Elements());
     mozilla::HoldJSObjects(this);
   }
   aRawData.setObject(*mJsobj);
   return NS_OK;
 }
 
-/* [noscript, notxpcom, nostdcall] Uint8ArrayRef getDataAsTArray(); */
 FallibleTArray<uint8_t>&
 nsUDPMessage::GetDataAsTArray()
 {
   return mData;
 }
 
 //-----------------------------------------------------------------------------
 // nsUDPSocket
@@ -590,52 +579,47 @@ private:
 
   NetAddr mAddr;
   nsCOMPtr<nsIOutputStream> mOutputStream;
   FallibleTArray<uint8_t> mData;
 };
 
 NS_IMPL_ISUPPORTS(UDPMessageProxy, nsIUDPMessage)
 
-/* readonly attribute nsINetAddr from; */
 NS_IMETHODIMP
 UDPMessageProxy::GetFromAddr(nsINetAddr * *aFromAddr)
 {
   NS_ENSURE_ARG_POINTER(aFromAddr);
 
   nsCOMPtr<nsINetAddr> result = new nsNetAddr(&mAddr);
   result.forget(aFromAddr);
 
   return NS_OK;
 }
 
-/* readonly attribute ACString data; */
 NS_IMETHODIMP
 UDPMessageProxy::GetData(nsACString & aData)
 {
   aData.Assign(reinterpret_cast<const char*>(mData.Elements()), mData.Length());
   return NS_OK;
 }
 
-/* [noscript, notxpcom, nostdcall] Uint8TArrayRef getDataAsTArray(); */
 FallibleTArray<uint8_t>&
 UDPMessageProxy::GetDataAsTArray()
 {
   return mData;
 }
 
-/* readonly attribute jsval rawData; */
 NS_IMETHODIMP
 UDPMessageProxy::GetRawData(JSContext* cx,
                             JS::MutableHandleValue aRawData)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* readonly attribute nsIOutputStream outputStream; */
 NS_IMETHODIMP
 UDPMessageProxy::GetOutputStream(nsIOutputStream * *aOutputStream)
 {
   NS_ENSURE_ARG_POINTER(aOutputStream);
   NS_IF_ADDREF(*aOutputStream = mOutputStream);
   return NS_OK;
 }
 
--- a/netwerk/base/nsUnicharStreamLoader.cpp
+++ b/netwerk/base/nsUnicharStreamLoader.cpp
@@ -44,25 +44,23 @@ nsUnicharStreamLoader::Create(nsISupport
   nsresult rv = it->QueryInterface(aIID, aResult);
   NS_RELEASE(it);
   return rv;
 }
 
 NS_IMPL_ISUPPORTS(nsUnicharStreamLoader, nsIUnicharStreamLoader,
                   nsIRequestObserver, nsIStreamListener)
 
-/* readonly attribute nsIChannel channel; */
 NS_IMETHODIMP
 nsUnicharStreamLoader::GetChannel(nsIChannel **aChannel)
 {
   NS_IF_ADDREF(*aChannel = mChannel);
   return NS_OK;
 }
 
-/* readonly attribute nsACString charset */
 NS_IMETHODIMP
 nsUnicharStreamLoader::GetCharset(nsACString& aCharset)
 {
   aCharset = mCharset;
   return NS_OK;
 }
 
 /* nsIRequestObserver implementation */
--- a/netwerk/cache/nsDiskCacheDevice.cpp
+++ b/netwerk/cache/nsDiskCacheDevice.cpp
@@ -188,25 +188,23 @@ public:
 private:
     virtual ~nsDiskCacheDeviceInfo() {}
 
     nsDiskCacheDevice* mDevice;
 };
 
 NS_IMPL_ISUPPORTS(nsDiskCacheDeviceInfo, nsICacheDeviceInfo)
 
-/* readonly attribute string description; */
 NS_IMETHODIMP nsDiskCacheDeviceInfo::GetDescription(char ** aDescription)
 {
     NS_ENSURE_ARG_POINTER(aDescription);
     *aDescription = NS_strdup("Disk cache device");
     return *aDescription ? NS_OK : NS_ERROR_OUT_OF_MEMORY;
 }
 
-/* readonly attribute string usageReport; */
 NS_IMETHODIMP nsDiskCacheDeviceInfo::GetUsageReport(char ** usageReport)
 {
     NS_ENSURE_ARG_POINTER(usageReport);
     nsCString buffer;
     
     buffer.AssignLiteral("  <tr>\n"
                          "    <th>Cache Directory:</th>\n"
                          "    <td>");
@@ -223,34 +221,31 @@ NS_IMETHODIMP nsDiskCacheDeviceInfo::Get
                          "  </tr>\n");
 
     *usageReport = ToNewCString(buffer);
     if (!*usageReport) return NS_ERROR_OUT_OF_MEMORY;
 
     return NS_OK;
 }
 
-/* readonly attribute unsigned long entryCount; */
 NS_IMETHODIMP nsDiskCacheDeviceInfo::GetEntryCount(uint32_t *aEntryCount)
 {
     NS_ENSURE_ARG_POINTER(aEntryCount);
     *aEntryCount = mDevice->getEntryCount();
     return NS_OK;
 }
 
-/* readonly attribute unsigned long totalSize; */
 NS_IMETHODIMP nsDiskCacheDeviceInfo::GetTotalSize(uint32_t *aTotalSize)
 {
     NS_ENSURE_ARG_POINTER(aTotalSize);
     // Returned unit's are in bytes
     *aTotalSize = mDevice->getCacheSize() * 1024;
     return NS_OK;
 }
 
-/* readonly attribute unsigned long maximumSize; */
 NS_IMETHODIMP nsDiskCacheDeviceInfo::GetMaximumSize(uint32_t *aMaximumSize)
 {
     NS_ENSURE_ARG_POINTER(aMaximumSize);
     // Returned unit's are in bytes
     *aMaximumSize = mDevice->getCacheCapacity() * 1024;
     return NS_OK;
 }
 
--- a/netwerk/dns/nsIDNService.cpp
+++ b/netwerk/dns/nsIDNService.cpp
@@ -148,17 +148,16 @@ nsIDNService::nsIDNService()
   /* member initializers and constructor code */
 }
 
 nsIDNService::~nsIDNService()
 {
   idn_nameprep_destroy(mNamePrepHandle);
 }
 
-/* ACString ConvertUTF8toACE (in AUTF8String input); */
 NS_IMETHODIMP nsIDNService::ConvertUTF8toACE(const nsACString & input, nsACString & ace)
 {
   return UTF8toACE(input, ace, true, true);
 }
 
 nsresult nsIDNService::SelectiveUTF8toACE(const nsACString& input, nsACString& ace)
 {
   return UTF8toACE(input, ace, true, false);
@@ -208,17 +207,16 @@ nsresult nsIDNService::UTF8toACE(const n
     NS_ENSURE_SUCCESS(rv, rv);
 
     ace.Append(encodedBuf);
   }
 
   return NS_OK;
 }
 
-/* AUTF8String convertACEtoUTF8(in ACString input); */
 NS_IMETHODIMP nsIDNService::ConvertACEtoUTF8(const nsACString & input, nsACString & _retval)
 {
   return ACEtoUTF8(input, _retval, true, true);
 }
 
 nsresult nsIDNService::SelectiveACEtoUTF8(const nsACString& input, nsACString& _retval)
 {
   return ACEtoUTF8(input, _retval, false, false);
@@ -262,17 +260,16 @@ nsresult nsIDNService::ACEtoUTF8(const n
       _retval.Assign(input);
     else
       _retval.Append(decodedBuf);
   }
 
   return NS_OK;
 }
 
-/* boolean isACE(in ACString input); */
 NS_IMETHODIMP nsIDNService::IsACE(const nsACString & input, bool *_retval)
 {
   nsACString::const_iterator begin;
   input.BeginReading(begin);
 
   const char *data = begin.get();
   uint32_t dataLen = begin.size_forward();
 
@@ -281,17 +278,16 @@ NS_IMETHODIMP nsIDNService::IsACE(const 
   // example: "www.xn--ENCODED.com"
 
   const char *p = PL_strncasestr(data, mACEPrefix, dataLen);
 
   *_retval = p && (p == data || *(p - 1) == '.');
   return NS_OK;
 }
 
-/* AUTF8String normalize(in AUTF8String input); */
 NS_IMETHODIMP nsIDNService::Normalize(const nsACString & input, nsACString & output)
 {
   // protect against bogus input
   NS_ENSURE_TRUE(IsUTF8(input), NS_ERROR_UNEXPECTED);
 
   NS_ConvertUTF8toUTF16 inUTF16(input);
   normalizeFullStops(inUTF16);
 
--- a/netwerk/protocol/http/HttpChannelChild.cpp
+++ b/netwerk/protocol/http/HttpChannelChild.cpp
@@ -2028,17 +2028,16 @@ HttpChannelChild::GetAssociatedContentSe
   if (!assoc)
     return false;
 
   if (_result)
     assoc.forget(_result);
   return true;
 }
 
-/* attribute unsigned long countSubRequestsBrokenSecurity; */
 NS_IMETHODIMP
 HttpChannelChild::GetCountSubRequestsBrokenSecurity(
                     int32_t *aSubRequestsBrokenSecurity)
 {
   nsCOMPtr<nsIAssociatedContentSecurity> assoc;
   if (!GetAssociatedContentSecurity(getter_AddRefs(assoc)))
     return NS_OK;
 
@@ -2050,17 +2049,16 @@ HttpChannelChild::SetCountSubRequestsBro
 {
   nsCOMPtr<nsIAssociatedContentSecurity> assoc;
   if (!GetAssociatedContentSecurity(getter_AddRefs(assoc)))
     return NS_OK;
 
   return assoc->SetCountSubRequestsBrokenSecurity(aSubRequestsBrokenSecurity);
 }
 
-/* attribute unsigned long countSubRequestsNoSecurity; */
 NS_IMETHODIMP
 HttpChannelChild::GetCountSubRequestsNoSecurity(int32_t *aSubRequestsNoSecurity)
 {
   nsCOMPtr<nsIAssociatedContentSecurity> assoc;
   if (!GetAssociatedContentSecurity(getter_AddRefs(assoc)))
     return NS_OK;
 
   return assoc->GetCountSubRequestsNoSecurity(aSubRequestsNoSecurity);
--- a/netwerk/protocol/rtsp/controller/RtspMetaData.cpp
+++ b/netwerk/protocol/rtsp/controller/RtspMetaData.cpp
@@ -134,49 +134,46 @@ RtspMetaData::GetWidth(uint32_t *aWidth)
 
 NS_IMETHODIMP
 RtspMetaData::SetWidth(uint32_t aWidth)
 {
   mWidth = aWidth;
   return NS_OK;
 }
 
-/* attribute unsigned long height; */
 NS_IMETHODIMP
 RtspMetaData::GetHeight(uint32_t *aHeight)
 {
   NS_ENSURE_ARG_POINTER(aHeight);
   *aHeight = mHeight;
   return NS_OK;
 }
 
 NS_IMETHODIMP
 RtspMetaData::SetHeight(uint32_t aHeight)
 {
   mHeight = aHeight;
   return NS_OK;
 }
 
-/* attribute unsigned long long duration; */
 NS_IMETHODIMP
 RtspMetaData::GetDuration(uint64_t *aDuration)
 {
   NS_ENSURE_ARG_POINTER(aDuration);
   *aDuration = mDuration;
   return NS_OK;
 }
 
 NS_IMETHODIMP
 RtspMetaData::SetDuration(uint64_t aDuration)
 {
   mDuration = aDuration;
   return NS_OK;
 }
 
-/* attribute unsigned long sampleRate; */
 NS_IMETHODIMP
 RtspMetaData::GetSampleRate(uint32_t *aSampleRate)
 {
   NS_ENSURE_ARG_POINTER(aSampleRate);
   *aSampleRate = mSampleRate;
   return NS_OK;
 }
 
--- a/netwerk/protocol/wyciwyg/WyciwygChannelChild.cpp
+++ b/netwerk/protocol/wyciwyg/WyciwygChannelChild.cpp
@@ -363,68 +363,61 @@ void WyciwygChannelChild::CancelEarly(co
   if (mIPCOpen)
     PWyciwygChannelChild::Send__delete__(this);
 }
 
 //-----------------------------------------------------------------------------
 // nsIRequest
 //-----------------------------------------------------------------------------
 
-/* readonly attribute AUTF8String name; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetName(nsACString & aName)
 {
   return mURI->GetSpec(aName);
 }
 
-/* boolean isPending (); */
 NS_IMETHODIMP
 WyciwygChannelChild::IsPending(bool *aIsPending)
 {
   *aIsPending = mIsPending;
   return NS_OK;
 }
 
-/* readonly attribute nsresult status; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetStatus(nsresult *aStatus)
 {
   *aStatus = mStatus;
   return NS_OK;
 }
 
-/* void cancel (in nsresult aStatus); */
 NS_IMETHODIMP
 WyciwygChannelChild::Cancel(nsresult aStatus)
 {
   if (mCanceled)
     return NS_OK;
 
   mCanceled = true;
   mStatus = aStatus;
   if (mIPCOpen)
     SendCancel(aStatus);
   return NS_OK;
 }
 
-/* void suspend (); */
 NS_IMETHODIMP
 WyciwygChannelChild::Suspend()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void resume (); */
 NS_IMETHODIMP
 WyciwygChannelChild::Resume()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* attribute nsILoadGroup loadGroup; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetLoadGroup(nsILoadGroup * *aLoadGroup)
 {
   *aLoadGroup = mLoadGroup;
   NS_IF_ADDREF(*aLoadGroup);
   return NS_OK;
 }
 NS_IMETHODIMP
@@ -437,17 +430,16 @@ WyciwygChannelChild::SetLoadGroup(nsILoa
   mLoadGroup = aLoadGroup;
   NS_QueryNotificationCallbacks(mCallbacks,
                                 mLoadGroup,
                                 NS_GET_IID(nsIProgressEventSink),
                                 getter_AddRefs(mProgressSink));
   return NS_OK;
 }
 
-/* attribute nsLoadFlags loadFlags; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetLoadFlags(nsLoadFlags *aLoadFlags)
 {
   *aLoadFlags = mLoadFlags;
   return NS_OK;
 }
 NS_IMETHODIMP
 WyciwygChannelChild::SetLoadFlags(nsLoadFlags aLoadFlags)
@@ -456,17 +448,16 @@ WyciwygChannelChild::SetLoadFlags(nsLoad
   return NS_OK;
 }
 
 
 //-----------------------------------------------------------------------------
 // nsIChannel
 //-----------------------------------------------------------------------------
 
-/* attribute nsIURI originalURI; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetOriginalURI(nsIURI * *aOriginalURI)
 {
   *aOriginalURI = mOriginalURI;
   NS_ADDREF(*aOriginalURI);
   return NS_OK;
 }
 NS_IMETHODIMP
@@ -474,26 +465,24 @@ WyciwygChannelChild::SetOriginalURI(nsIU
 {
   NS_ENSURE_TRUE(mState == WCC_INIT, NS_ERROR_UNEXPECTED);
 
   NS_ENSURE_ARG_POINTER(aOriginalURI);
   mOriginalURI = aOriginalURI;
   return NS_OK;
 }
 
-/* readonly attribute nsIURI URI; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetURI(nsIURI * *aURI)
 {
   *aURI = mURI;
   NS_IF_ADDREF(*aURI);
   return NS_OK;
 }
 
-/* attribute nsISupports owner; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetOwner(nsISupports * *aOwner)
 {
   NS_IF_ADDREF(*aOwner = mOwner);
   return NS_OK;
 }
 NS_IMETHODIMP
 WyciwygChannelChild::SetOwner(nsISupports * aOwner)
@@ -511,17 +500,16 @@ WyciwygChannelChild::GetLoadInfo(nsILoad
 
 NS_IMETHODIMP
 WyciwygChannelChild::SetLoadInfo(nsILoadInfo* aLoadInfo)
 {
   mLoadInfo = aLoadInfo;
   return NS_OK;
 }
 
-/* attribute nsIInterfaceRequestor notificationCallbacks; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetNotificationCallbacks(nsIInterfaceRequestor * *aCallbacks)
 {
   *aCallbacks = mCallbacks;
   NS_IF_ADDREF(*aCallbacks);
   return NS_OK;
 }
 NS_IMETHODIMP
@@ -534,39 +522,36 @@ WyciwygChannelChild::SetNotificationCall
   mCallbacks = aCallbacks;
   NS_QueryNotificationCallbacks(mCallbacks,
                                 mLoadGroup,
                                 NS_GET_IID(nsIProgressEventSink),
                                 getter_AddRefs(mProgressSink));
   return NS_OK;
 }
 
-/* readonly attribute nsISupports securityInfo; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetSecurityInfo(nsISupports * *aSecurityInfo)
 {
   NS_IF_ADDREF(*aSecurityInfo = mSecurityInfo);
 
   return NS_OK;
 }
 
-/* attribute ACString contentType; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetContentType(nsACString & aContentType)
 {
   aContentType.AssignLiteral(WYCIWYG_TYPE);
   return NS_OK;
 }
 NS_IMETHODIMP
 WyciwygChannelChild::SetContentType(const nsACString & aContentType)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* attribute ACString contentCharset; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetContentCharset(nsACString & aContentCharset)
 {
   aContentCharset.AssignLiteral("UTF-16");
   return NS_OK;
 }
 NS_IMETHODIMP
 WyciwygChannelChild::SetContentCharset(const nsACString & aContentCharset)
@@ -599,29 +584,27 @@ WyciwygChannelChild::SetContentDispositi
 }
 
 NS_IMETHODIMP
 WyciwygChannelChild::GetContentDispositionHeader(nsACString &aContentDispositionHeader)
 {
   return NS_ERROR_NOT_AVAILABLE;
 }
 
-/* attribute int64_t contentLength; */
 NS_IMETHODIMP
 WyciwygChannelChild::GetContentLength(int64_t *aContentLength)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 NS_IMETHODIMP
 WyciwygChannelChild::SetContentLength(int64_t aContentLength)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* nsIInputStream open (); */
 NS_IMETHODIMP
 WyciwygChannelChild::Open(nsIInputStream **_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
 NS_IMETHODIMP
 WyciwygChannelChild::Open2(nsIInputStream** aStream)
@@ -635,17 +618,16 @@ WyciwygChannelChild::Open2(nsIInputStrea
 static mozilla::dom::TabChild*
 GetTabChild(nsIChannel* aChannel)
 {
   nsCOMPtr<nsITabChild> iTabChild;
   NS_QueryNotificationCallbacks(aChannel, iTabChild);
   return iTabChild ? static_cast<mozilla::dom::TabChild*>(iTabChild.get()) : nullptr;
 }
 
-/* void asyncOpen (in nsIStreamListener aListener, in nsISupports aContext); */
 NS_IMETHODIMP
 WyciwygChannelChild::AsyncOpen(nsIStreamListener *aListener, nsISupports *aContext)
 {
   LOG(("WyciwygChannelChild::AsyncOpen [this=%p]\n", this));
 
   // The only places creating wyciwyg: channels should be
   // HTMLDocument::OpenCommon and session history.  Both should be setting an
   // owner or loadinfo.
@@ -690,17 +672,16 @@ WyciwygChannelChild::AsyncOpen2(nsIStrea
   NS_ENSURE_SUCCESS(rv, rv);
   return AsyncOpen(listener, nullptr);
 }
 
 //-----------------------------------------------------------------------------
 // nsIWyciwygChannel
 //-----------------------------------------------------------------------------
 
-/* void writeToCacheEntry (in AString aData); */
 NS_IMETHODIMP
 WyciwygChannelChild::WriteToCacheEntry(const nsAString & aData)
 {
   NS_ENSURE_TRUE((mState == WCC_INIT) ||
                  (mState == WCC_ONWRITE), NS_ERROR_UNEXPECTED);
 
   if (!mSentAppData) {
     mozilla::dom::TabChild* tabChild = GetTabChild(this);
@@ -712,32 +693,30 @@ WyciwygChannelChild::WriteToCacheEntry(c
     mSentAppData = true;
   }
 
   SendWriteToCacheEntry(PromiseFlatString(aData));
   mState = WCC_ONWRITE;
   return NS_OK;
 }
 
-/* void closeCacheEntry (in nsresult reason); */
 NS_IMETHODIMP
 WyciwygChannelChild::CloseCacheEntry(nsresult reason)
 {
   NS_ENSURE_TRUE(mState == WCC_ONWRITE, NS_ERROR_UNEXPECTED);
 
   SendCloseCacheEntry(reason);
   mState = WCC_ONCLOSED;
 
   if (mIPCOpen)
     PWyciwygChannelChild::Send__delete__(this);
 
   return NS_OK;
 }
 
-/* void setSecurityInfo (in nsISupports aSecurityInfo); */
 NS_IMETHODIMP
 WyciwygChannelChild::SetSecurityInfo(nsISupports *aSecurityInfo)
 {
   mSecurityInfo = aSecurityInfo;
 
   if (mSecurityInfo) {
     nsCOMPtr<nsISerializable> serializable = do_QueryInterface(mSecurityInfo);
     if (serializable) {
@@ -748,34 +727,32 @@ WyciwygChannelChild::SetSecurityInfo(nsI
     else {
       NS_WARNING("Can't serialize security info");
     }
   }
 
   return NS_OK;
 }
 
-/* void setCharsetAndSource (in long aSource, in ACString aCharset); */
 NS_IMETHODIMP
 WyciwygChannelChild::SetCharsetAndSource(int32_t aSource, const nsACString & aCharset)
 {
   // mState == WCC_ONSTART when reading from the channel
   // mState == WCC_INIT when writing to the cache
   NS_ENSURE_TRUE((mState == WCC_ONSTART) ||
                  (mState == WCC_INIT), NS_ERROR_UNEXPECTED);
 
   mCharsetSource = aSource;
   mCharset = aCharset;
 
   // TODO ensure that nsWyciwygChannel in the parent has still the cache entry
   SendSetCharsetAndSource(mCharsetSource, mCharset);
   return NS_OK;
 }
 
-/* ACString getCharsetAndSource (out long aSource); */
 NS_IMETHODIMP
 WyciwygChannelChild::GetCharsetAndSource(int32_t *aSource, nsACString & _retval)
 {
   NS_ENSURE_TRUE((mState == WCC_ONSTART) ||
                  (mState == WCC_ONDATA) ||
                  (mState == WCC_ONSTOP), NS_ERROR_NOT_AVAILABLE);
 
   if (mCharsetSource == kCharsetUninitialized)
--- a/netwerk/sctp/src/netinet/sctp_pcb.h
+++ b/netwerk/sctp/src/netinet/sctp_pcb.h
@@ -841,17 +841,16 @@ sctp_load_addresses_from_init(struct sct
     struct sockaddr *, struct sockaddr *, struct sockaddr *);
 
 int
 sctp_set_primary_addr(struct sctp_tcb *, struct sockaddr *,
     struct sctp_nets *);
 
 int sctp_is_vtag_good(uint32_t, uint16_t lport, uint16_t rport, struct timeval *);
 
-/* void sctp_drain(void); */
 
 int sctp_destination_is_reachable(struct sctp_tcb *, struct sockaddr *);
 
 int sctp_swap_inpcb_for_listen(struct sctp_inpcb *inp);
 
 /*-
  * Null in last arg inpcb indicate run on ALL ep's. Specific inp in last arg
  * indicates run on ONLY assoc's of the specified endpoint.
--- a/security/manager/pki/nsASN1Tree.cpp
+++ b/security/manager/pki/nsASN1Tree.cpp
@@ -106,17 +106,16 @@ void nsNSSASN1Tree::InitNodes()
   ClearNodes();
 
   mTopNode = new myNode;
   mTopNode->obj = mASN1Object;
 
   InitChildsRecursively(mTopNode);
 }
 
-/* void loadASN1Structure (in nsIASN1Object asn1Object); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::LoadASN1Structure(nsIASN1Object *asn1Object)
 {
   //
   // The tree won't automatically re-draw if the contents
   // have been changed.  So I do a quick test here to let
   // me know if I should forced the tree to redraw itself
   // by calling RowCountChanged on it.
@@ -142,29 +141,27 @@ nsNSSASN1Tree::LoadASN1Structure(nsIASN1
     // Replace them with the new contents
     mTree->RowCountChanged(0, newRows);
     mTree->EndUpdateBatch();
   }
 
   return NS_OK;
 }
 
-/* readonly attribute long rowCount; */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetRowCount(int32_t *aRowCount)
 {
   if (mASN1Object) {
     *aRowCount = CountVisibleNodes(mTopNode);
   } else {
     *aRowCount = 0;
   }
   return NS_OK;
 }
 
-/* attribute nsITreeSelection selection; */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetSelection(nsITreeSelection * *aSelection)
 {
   *aSelection = mSelection;
   NS_IF_ADDREF(*aSelection);
   return NS_OK;
 }
 
@@ -189,130 +186,118 @@ nsNSSASN1Tree::GetCellProperties(int32_t
 }
 
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetColumnProperties(nsITreeColumn* col, nsAString& aProps)
 {
   return NS_OK;
 }
 
-/* boolean isContainer (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsContainer(int32_t index, bool *_retval)
 {
   myNode *n = FindNodeFromIndex(index);
   if (!n)
     return NS_ERROR_FAILURE;
 
   *_retval = (n->seq != nullptr);
   return NS_OK; 
 }
 
-/* boolean isContainerOpen (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsContainerOpen(int32_t index, bool *_retval)
 {
   myNode *n = FindNodeFromIndex(index);
   if (!n || !n->seq)
     return NS_ERROR_FAILURE;
 
   n->seq->GetIsExpanded(_retval);
   return NS_OK;
 }
 
-/* boolean isContainerEmpty (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsContainerEmpty(int32_t index, bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* boolean isSeparator (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsSeparator(int32_t index, bool *_retval)
 {
   *_retval = false;
   return NS_OK; 
 }
 
-/* long getLevel (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetLevel(int32_t index, int32_t *_retval)
 {
   int32_t parentIndex;
   int32_t nodeLevel;
 
   myNode *n = FindNodeFromIndex(index, &parentIndex, &nodeLevel);
   if (!n)
     return NS_ERROR_FAILURE;
 
   *_retval = nodeLevel;
   return NS_OK; 
 }
 
-/* Astring getImageSrc (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetImageSrc(int32_t row, nsITreeColumn* col, 
                            nsAString& _retval)
 {
   return NS_OK;
 }
 
-/* long getProgressMode (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetProgressMode(int32_t row, nsITreeColumn* col, int32_t* _retval)
 {
   return NS_OK;
 }
 
-/* Astring getCellValue (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetCellValue(int32_t row, nsITreeColumn* col, 
                             nsAString& _retval)
 {
   return NS_OK;
 }
 
-/* Astring getCellText (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetCellText(int32_t row, nsITreeColumn* col, 
                            nsAString& _retval)
 {
   _retval.Truncate();
 
   myNode* n = FindNodeFromIndex(row);
   if (!n)
     return NS_ERROR_FAILURE;
 
   // There's only one column for ASN1 dump.
   return n->obj->GetDisplayName(_retval);
 }
 
-/* wstring getDisplayData (in unsigned long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetDisplayData(uint32_t index, nsAString &_retval)
 {
   myNode *n = FindNodeFromIndex(index);
   if (!n)
     return NS_ERROR_FAILURE;
 
   n->obj->GetDisplayValue(_retval);
   return NS_OK;
 }
 
-/* void setTree (in nsITreeBoxObject tree); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::SetTree(nsITreeBoxObject *tree)
 {
   mTree = tree;
   return NS_OK;
 }
 
-/* void toggleOpenState (in long index); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::ToggleOpenState(int32_t index)
 {
   myNode *n = FindNodeFromIndex(index);
   if (!n)
     return NS_ERROR_FAILURE;
 
   if (!n->seq)
@@ -328,86 +313,76 @@ nsNSSASN1Tree::ToggleOpenState(int32_t i
     n->seq->SetIsExpanded(true);
     rowCountChange = CountVisibleNodes(n->child);
   }
   if (mTree)
     mTree->RowCountChanged(index, rowCountChange);
   return NS_OK;
 }
 
-/* void cycleHeader (in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::CycleHeader(nsITreeColumn* col)
 {
   return NS_OK;
 }
 
-/* void selectionChanged (); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::SelectionChanged()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void cycleCell (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::CycleCell(int32_t row, nsITreeColumn* col)
 {
   return NS_OK;
 }
 
-/* boolean isEditable (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsEditable(int32_t row, nsITreeColumn* col, 
                           bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* boolean isSelectable (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::IsSelectable(int32_t row, nsITreeColumn* col, 
                             bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* void setCellValue (in long row, in nsITreeColumn col, in AString value); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::SetCellValue(int32_t row, nsITreeColumn* col, 
                             const nsAString& value)
 {
   return NS_OK;
 }
 
-/* void setCellText (in long row, in nsITreeColumn col, in AString value); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::SetCellText(int32_t row, nsITreeColumn* col, 
                            const nsAString& value)
 {
   return NS_OK;
 }
 
-/* void performAction (in wstring action); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::PerformAction(const char16_t *action)
 {
   return NS_OK;
 }
 
-/* void performActionOnRow (in wstring action, in long row); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::PerformActionOnRow(const char16_t *action, int32_t row)
 {
   return NS_OK;
 }
 
-/* void performActionOnCell (in wstring action, in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::PerformActionOnCell(const char16_t *action, int32_t row, 
                                    nsITreeColumn* col)
 {
   return NS_OK;
 }
 
 //
@@ -439,31 +414,29 @@ NS_IMETHODIMP nsNSSASN1Tree::Drop(int32_
 //
 NS_IMETHODIMP nsNSSASN1Tree::IsSorted(bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
 
-/* long getParentIndex (in long rowIndex); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::GetParentIndex(int32_t rowIndex, int32_t *_retval)
 {
   int32_t parentIndex = -1;
 
   myNode *n = FindNodeFromIndex(rowIndex, &parentIndex);
   if (!n)
     return NS_ERROR_FAILURE;
 
   *_retval = parentIndex;
   return NS_OK; 
 }
 
-/* boolean hasNextSibling (in long rowIndex, in long afterIndex); */
 NS_IMETHODIMP 
 nsNSSASN1Tree::HasNextSibling(int32_t rowIndex, int32_t afterIndex, 
                               bool *_retval)
 {
   myNode *n = FindNodeFromIndex(rowIndex);
   if (!n)
     return NS_ERROR_FAILURE;
 
--- a/security/manager/pki/nsNSSDialogs.cpp
+++ b/security/manager/pki/nsNSSDialogs.cpp
@@ -372,17 +372,16 @@ nsNSSDialogs::GetPKCS12FilePassword(nsII
   if (*_retval) {
     _password.Assign(pwTemp);
     free(pwTemp);
   }
 
   return NS_OK;
 }
 
-/* void viewCert (in nsIX509Cert cert); */
 NS_IMETHODIMP 
 nsNSSDialogs::ViewCert(nsIInterfaceRequestor *ctx, 
                        nsIX509Cert *cert)
 {
   nsresult rv;
 
   nsCOMPtr<nsIPKIParamBlock> block =
            do_CreateInstance(NS_PKIPARAMBLOCK_CONTRACTID);
--- a/security/manager/pki/nsPKIParamBlock.cpp
+++ b/security/manager/pki/nsPKIParamBlock.cpp
@@ -67,32 +67,30 @@ nsPKIParamBlock::GetObjects(nsIMutableAr
 NS_IMETHODIMP
 nsPKIParamBlock::SetObjects(nsIMutableArray * aObjects)
 {
   return mDialogParamBlock->SetObjects(aObjects);
 }
 
 
 
-/* void setISupportAtIndex (in int32_t index, in nsISupports object); */
 NS_IMETHODIMP 
 nsPKIParamBlock::SetISupportAtIndex(int32_t index, nsISupports *object)
 {
   if (!mSupports) {
     mSupports = do_CreateInstance(NS_SUPPORTSARRAY_CONTRACTID);
     if (!mSupports) {
       return NS_ERROR_OUT_OF_MEMORY;
     }
   }
   // Ignore any InsertElementAt error, because this function always did that
   mSupports->InsertElementAt(object, index-1);
   return NS_OK;
 }
 
-/* nsISupports getISupportAtIndex (in int32_t index); */
 NS_IMETHODIMP 
 nsPKIParamBlock::GetISupportAtIndex(int32_t index, nsISupports **_retval)
 {
   NS_ENSURE_ARG(_retval);
 
   return mSupports->GetElementAt(index - 1, _retval);
 }
 
--- a/security/manager/ssl/TransportSecurityInfo.cpp
+++ b/security/manager/ssl/TransportSecurityInfo.cpp
@@ -127,34 +127,32 @@ TransportSecurityInfo::GetSecurityState(
 
 nsresult
 TransportSecurityInfo::SetSecurityState(uint32_t aState)
 {
   mSecurityState = aState;
   return NS_OK;
 }
 
-/* attribute unsigned long countSubRequestsBrokenSecurity; */
 NS_IMETHODIMP
 TransportSecurityInfo::GetCountSubRequestsBrokenSecurity(
   int32_t *aSubRequestsBrokenSecurity)
 {
   *aSubRequestsBrokenSecurity = mSubRequestsBrokenSecurity;
   return NS_OK;
 }
 
 NS_IMETHODIMP
 TransportSecurityInfo::SetCountSubRequestsBrokenSecurity(
   int32_t aSubRequestsBrokenSecurity)
 {
   mSubRequestsBrokenSecurity = aSubRequestsBrokenSecurity;
   return NS_OK;
 }
 
-/* attribute unsigned long countSubRequestsNoSecurity; */
 NS_IMETHODIMP
 TransportSecurityInfo::GetCountSubRequestsNoSecurity(
   int32_t *aSubRequestsNoSecurity)
 {
   *aSubRequestsNoSecurity = mSubRequestsNoSecurity;
   return NS_OK;
 }
 
@@ -272,17 +270,16 @@ TransportSecurityInfo::formatErrorMessag
 
 NS_IMETHODIMP
 TransportSecurityInfo::GetErrorCode(int32_t* state)
 {
   *state = GetErrorCode();
   return NS_OK;
 }
 
-/* void getInterface (in nsIIDRef uuid, [iid_is (uuid), retval] out nsQIResult result); */
 NS_IMETHODIMP
 TransportSecurityInfo::GetInterface(const nsIID & uuid, void * *result)
 {
   if (!NS_IsMainThread()) {
     NS_ERROR("nsNSSSocketInfo::GetInterface called off the main thread");
     return NS_ERROR_NOT_SAME_THREAD;
   }
 
--- a/security/manager/ssl/nsCertTree.cpp
+++ b/security/manager/ssl/nsCertTree.cpp
@@ -831,17 +831,16 @@ nsCertTree::DeleteEntryObject(uint32_t i
 }
 
 //////////////////////////////////////////////////////////////////////////////
 //
 //  Begin nsITreeView methods
 //
 /////////////////////////////////////////////////////////////////////////////
 
-/* nsIX509Cert getCert(in unsigned long index); */
 NS_IMETHODIMP
 nsCertTree::GetCert(uint32_t aIndex, nsIX509Cert **_cert)
 {
   NS_ENSURE_ARG(_cert);
   *_cert = GetCertAtIndex(aIndex).take();
   return NS_OK;
 }
 
@@ -867,34 +866,32 @@ nsCertTree::IsHostPortOverride(uint32_t 
   RefPtr<nsCertTreeDispInfo> certdi(GetDispInfoAtIndex(aIndex));
   if (!certdi)
     return NS_ERROR_FAILURE;
 
   *_retval = (certdi->mTypeOfEntry == nsCertTreeDispInfo::host_port_override);
   return NS_OK;
 }
 
-/* readonly attribute long rowCount; */
 NS_IMETHODIMP 
 nsCertTree::GetRowCount(int32_t *aRowCount)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   uint32_t count = 0;
   for (int32_t i=0; i<mNumOrgs; i++) {
     if (mTreeArray[i].open) {
       count += mTreeArray[i].numChildren;
     }
     count++;
   }
   *aRowCount = count;
   return NS_OK;
 }
 
-/* attribute nsITreeSelection selection; */
 NS_IMETHODIMP 
 nsCertTree::GetSelection(nsITreeSelection * *aSelection)
 {
   *aSelection = mSelection;
   NS_IF_ADDREF(*aSelection);
   return NS_OK;
 }
 
@@ -918,63 +915,58 @@ nsCertTree::GetCellProperties(int32_t ro
   return NS_OK;
 }
 
 NS_IMETHODIMP 
 nsCertTree::GetColumnProperties(nsITreeColumn* col, nsAString& aProps)
 {
   return NS_OK;
 }
-/* boolean isContainer (in long index); */
 NS_IMETHODIMP 
 nsCertTree::IsContainer(int32_t index, bool *_retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   treeArrayEl *el = GetThreadDescAtIndex(index);
   if (el) {
     *_retval = true;
   } else {
     *_retval = false;
   }
   return NS_OK;
 }
 
-/* boolean isContainerOpen (in long index); */
 NS_IMETHODIMP 
 nsCertTree::IsContainerOpen(int32_t index, bool *_retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   treeArrayEl *el = GetThreadDescAtIndex(index);
   if (el && el->open) {
     *_retval = true;
   } else {
     *_retval = false;
   }
   return NS_OK;
 }
 
-/* boolean isContainerEmpty (in long index); */
 NS_IMETHODIMP 
 nsCertTree::IsContainerEmpty(int32_t index, bool *_retval)
 {
   *_retval = !mTreeArray;
   return NS_OK;
 }
 
-/* boolean isSeparator (in long index); */
 NS_IMETHODIMP 
 nsCertTree::IsSeparator(int32_t index, bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* long getParentIndex (in long rowIndex); */
 NS_IMETHODIMP 
 nsCertTree::GetParentIndex(int32_t rowIndex, int32_t *_retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   int i, idx = 0;
   for (i = 0; i < mNumOrgs && idx < rowIndex; i++, idx++) {
     if (mTreeArray[i].open) {
@@ -984,17 +976,16 @@ nsCertTree::GetParentIndex(int32_t rowIn
       }
       idx += mTreeArray[i].numChildren;
     }
   }
   *_retval = -1;
   return NS_OK;
 }
 
-/* boolean hasNextSibling (in long rowIndex, in long afterIndex); */
 NS_IMETHODIMP 
 nsCertTree::HasNextSibling(int32_t rowIndex, int32_t afterIndex, 
                                bool *_retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
 
   int i, idx = 0;
@@ -1006,57 +997,52 @@ nsCertTree::HasNextSibling(int32_t rowIn
         return NS_OK;
       }
     }
   }
   *_retval = false;
   return NS_OK;
 }
 
-/* long getLevel (in long index); */
 NS_IMETHODIMP 
 nsCertTree::GetLevel(int32_t index, int32_t *_retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   treeArrayEl *el = GetThreadDescAtIndex(index);
   if (el) {
     *_retval = 0;
   } else {
     *_retval = 1;
   }
   return NS_OK;
 }
 
-/* Astring getImageSrc (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::GetImageSrc(int32_t row, nsITreeColumn* col, 
                         nsAString& _retval)
 {
   _retval.Truncate();
   return NS_OK;
 }
 
-/* long getProgressMode (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP
 nsCertTree::GetProgressMode(int32_t row, nsITreeColumn* col, int32_t* _retval)
 {
   return NS_OK;
 }
 
-/* Astring getCellValue (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::GetCellValue(int32_t row, nsITreeColumn* col, 
                          nsAString& _retval)
 {
   _retval.Truncate();
   return NS_OK;
 }
 
-/* Astring getCellText (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::GetCellText(int32_t row, nsITreeColumn* col, 
                         nsAString& _retval)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
 
   nsresult rv;
@@ -1240,100 +1226,89 @@ nsCertTree::GetCellText(int32_t row, nsI
     nsCOMPtr<nsISupportsString> text(do_CreateInstance(NS_SUPPORTS_STRING_CONTRACTID, &rv));
     NS_ENSURE_SUCCESS(rv, rv);
     text->SetData(_retval);
     mCellText->ReplaceElementAt(text, arrayIndex, false);
   }
   return rv;
 }
 
-/* void setTree (in nsITreeBoxObject tree); */
 NS_IMETHODIMP 
 nsCertTree::SetTree(nsITreeBoxObject *tree)
 {
   mTree = tree;
   return NS_OK;
 }
 
-/* void toggleOpenState (in long index); */
 NS_IMETHODIMP 
 nsCertTree::ToggleOpenState(int32_t index)
 {
   if (!mTreeArray)
     return NS_ERROR_NOT_INITIALIZED;
   treeArrayEl *el = GetThreadDescAtIndex(index);
   if (el) {
     el->open = !el->open;
     int32_t newChildren = (el->open) ? el->numChildren : -el->numChildren;
     if (mTree) mTree->RowCountChanged(index + 1, newChildren);
   }
   return NS_OK;
 }
 
-/* void cycleHeader (in nsITreeColumn); */
 NS_IMETHODIMP 
 nsCertTree::CycleHeader(nsITreeColumn* col)
 {
   return NS_OK;
 }
 
-/* void selectionChanged (); */
 NS_IMETHODIMP 
 nsCertTree::SelectionChanged()
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
 
-/* void cycleCell (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::CycleCell(int32_t row, nsITreeColumn* col)
 {
   return NS_OK;
 }
 
-/* boolean isEditable (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::IsEditable(int32_t row, nsITreeColumn* col, bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* boolean isSelectable (in long row, in nsITreeColumn col); */
 NS_IMETHODIMP 
 nsCertTree::IsSelectable(int32_t row, nsITreeColumn* col, bool *_retval)
 {
   *_retval = false;
   return NS_OK;
 }
 
-/* void setCellValue (in long row, in nsITreeColumn col, in AString value); */
 NS_IMETHODIMP 
 nsCertTree::SetCellValue(int32_t row, nsITreeColumn* col, 
                          const nsAString& value)
 {
   return NS_OK;
 }
 
-/* void setCellText (in long row, in nsITreeColumn col, in AString value); */
 NS_IMETHODIMP 
 nsCertTree::SetCellText(int32_t row, nsITreeColumn* col, 
                         const nsAString& value)
 {
   return NS_OK;
 }
 
-/* void performAction (in wstring action); */
 NS_IMETHODIMP 
 nsCertTree::PerformAction(const char16_t *action)
 {
   return NS_OK;
 }
 
-/* void performActionOnRow (in wstring action, in long row); */
 NS_IMETHODIMP 
 nsCertTree::PerformActionOnRow(const char16_t *action, int32_t row)
 {
   return NS_OK;
 }
 
 /* void performActionOnCell (in wstring action, in long row, 
  *                           in wstring colID); 
--- a/security/manager/ssl/nsCryptoHash.cpp
+++ b/security/manager/ssl/nsCryptoHash.cpp
@@ -251,17 +251,16 @@ nsCryptoHMAC::virtualDestroyNSSReference
 void
 nsCryptoHMAC::destructorSafeDestroyNSSReference()
 {
   if (mHMACContext)
     PK11_DestroyContext(mHMACContext, true);
   mHMACContext = nullptr;
 }
 
-/* void init (in unsigned long aAlgorithm, in nsIKeyObject aKeyObject); */
 NS_IMETHODIMP
 nsCryptoHMAC::Init(uint32_t aAlgorithm, nsIKeyObject *aKeyObject)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
@@ -313,17 +312,16 @@ nsCryptoHMAC::Init(uint32_t aAlgorithm, 
   NS_ENSURE_TRUE(mHMACContext, NS_ERROR_FAILURE);
 
   SECStatus ss = PK11_DigestBegin(mHMACContext);
   NS_ENSURE_TRUE(ss == SECSuccess, NS_ERROR_FAILURE);
 
   return NS_OK;
 }
 
-/* void update ([array, size_is (aLen), const] in octet aData, in unsigned long aLen); */
 NS_IMETHODIMP
 nsCryptoHMAC::Update(const uint8_t *aData, uint32_t aLen)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
@@ -334,17 +332,16 @@ nsCryptoHMAC::Update(const uint8_t *aDat
     return NS_ERROR_INVALID_ARG;
 
   SECStatus ss = PK11_DigestOp(mHMACContext, aData, aLen);
   NS_ENSURE_TRUE(ss == SECSuccess, NS_ERROR_FAILURE);
   
   return NS_OK;
 }
 
-/* void updateFromStream (in nsIInputStream aStream, in unsigned long aLen); */
 NS_IMETHODIMP
 nsCryptoHMAC::UpdateFromStream(nsIInputStream *aStream, uint32_t aLen)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
@@ -391,17 +388,16 @@ nsCryptoHMAC::UpdateFromStream(nsIInputS
       rv = Update((const uint8_t*)buffer, read);
     
     len -= read;
   }
   
   return rv;
 }
 
-/* ACString finish (in bool aASCII); */
 NS_IMETHODIMP
 nsCryptoHMAC::Finish(bool aASCII, nsACString & _retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
@@ -424,17 +420,16 @@ nsCryptoHMAC::Finish(bool aASCII, nsACSt
   else
   {
     _retval.Assign((const char*)buffer, hashLen);
   }
 
   return NS_OK;
 }
 
-/* void reset (); */
 NS_IMETHODIMP
 nsCryptoHMAC::Reset()
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
 
--- a/security/manager/ssl/nsKeyModule.cpp
+++ b/security/manager/ssl/nsKeyModule.cpp
@@ -45,17 +45,16 @@ nsKeyObject::CleanUp()
       break;
   }
   mKeyType = 0;
 }
 
 //////////////////////////////////////////////////////////////////////////////
 // nsIKeyObject
 
-/* [noscript] void initKey (in short aKeyType, in voidPtr aKey); */
 NS_IMETHODIMP
 nsKeyObject::InitKey(int16_t aAlgorithm, void * aKey)
 {
   // Clear previous key data if it exists
   CleanUp();
 
   switch (aAlgorithm) {
     case nsIKeyObject::RC4:
@@ -78,17 +77,16 @@ nsKeyObject::InitKey(int16_t aAlgorithm,
 
   // One of these should have been created
   if (!mSymKey && !mPrivateKey && !mPublicKey)
     return NS_ERROR_FAILURE;
 
   return NS_OK;
 }
 
-/* [noscript] voidPtr getKeyObj (); */
 NS_IMETHODIMP
 nsKeyObject::GetKeyObj(void * *_retval)
 {
   if (mKeyType == 0)
     return NS_ERROR_NOT_INITIALIZED;
 
   switch (mKeyType) {
     case nsIKeyObject::SYM_KEY:
@@ -105,17 +103,16 @@ nsKeyObject::GetKeyObj(void * *_retval)
 
     default:
       // unknown key type?  How did that happen?
       return NS_ERROR_FAILURE;
   }
   return NS_OK;
 }
 
-/* short getType (); */
 NS_IMETHODIMP
 nsKeyObject::GetType(int16_t *_retval)
 {
   if (mKeyType == 0)
     return NS_ERROR_NOT_INITIALIZED;
 
   *_retval = mKeyType;
   return NS_OK;
@@ -125,17 +122,16 @@ nsKeyObject::GetType(int16_t *_retval)
 // nsIKeyObjectFactory
 
 NS_IMPL_ISUPPORTS(nsKeyObjectFactory, nsIKeyObjectFactory)
 
 nsKeyObjectFactory::nsKeyObjectFactory()
 {
 }
 
-/* nsIKeyObject lookupKeyByName (in ACString aName); */
 NS_IMETHODIMP
 nsKeyObjectFactory::LookupKeyByName(const nsACString & aName,
                                     nsIKeyObject **_retval)
 {
   return NS_ERROR_NOT_IMPLEMENTED;
 }
  
 NS_IMETHODIMP
--- a/security/manager/ssl/nsNSSASN1Object.cpp
+++ b/security/manager/ssl/nsNSSASN1Object.cpp
@@ -334,17 +334,16 @@ nsNSSASN1PrintableItem::nsNSSASN1Printab
 
 nsNSSASN1PrintableItem::~nsNSSASN1PrintableItem()
 {
   /* destructor code */
   if (mData)
     free(mData);
 }
 
-/* readonly attribute wstring value; */
 NS_IMETHODIMP 
 nsNSSASN1PrintableItem::GetDisplayValue(nsAString &aValue)
 {
   aValue = mValue;
   return NS_OK;
 }
 
 NS_IMETHODIMP 
@@ -411,17 +410,16 @@ nsNSSASN1PrintableItem::GetData(char **o
   NS_ENSURE_ARG_POINTER(outData);
   NS_ENSURE_ARG_POINTER(outLen);
 
   *outData = (char*)mData;
   *outLen  = mLen;
   return NS_OK;
 }
 
-/* attribute wstring displayName; */
 NS_IMETHODIMP 
 nsNSSASN1PrintableItem::GetDisplayName(nsAString &aDisplayName)
 {
   aDisplayName = mDisplayName;
   return NS_OK;
 }
 
 NS_IMETHODIMP 
--- a/security/manager/ssl/nsNSSCertValidity.cpp
+++ b/security/manager/ssl/nsNSSCertValidity.cpp
@@ -30,17 +30,16 @@ nsX509CertValidity::nsX509CertValidity(C
   }
 }
 
 nsX509CertValidity::~nsX509CertValidity()
 {
   /* destructor code */
 }
 
-/* readonly attribute PRTime notBefore; */
 NS_IMETHODIMP nsX509CertValidity::GetNotBefore(PRTime *aNotBefore)
 {
   NS_ENSURE_ARG(aNotBefore);
 
   nsresult rv = NS_ERROR_FAILURE;
   if (mTimesInitialized) {
     *aNotBefore = mNotBefore;
     rv = NS_OK;
@@ -101,17 +100,16 @@ NS_IMETHODIMP nsX509CertValidity::GetNot
   PRExplodedTime explodedTime;
   PR_ExplodeTime(mNotBefore, PR_GMTParameters, &explodedTime);
   dateFormatter->FormatPRExplodedTime(nullptr, kDateFormatShort, kTimeFormatSecondsForce24Hour,
                                       &explodedTime, date);
   aNotBeforeGMT = date;
   return NS_OK;
 }
 
-/* readonly attribute PRTime notAfter; */
 NS_IMETHODIMP nsX509CertValidity::GetNotAfter(PRTime *aNotAfter)
 {
   NS_ENSURE_ARG(aNotAfter);
 
   nsresult rv = NS_ERROR_FAILURE;
   if (mTimesInitialized) {
     *aNotAfter = mNotAfter;
     rv = NS_OK;
--- a/security/manager/ssl/nsNSSCertificateDB.cpp
+++ b/security/manager/ssl/nsNSSCertificateDB.cpp
@@ -1262,17 +1262,16 @@ nsNSSCertificateDB::getCertNames(CERTCer
       tmpArray[i++] = ToNewUnicode(certstr);
     }
   }
 finish:
   *_count = numcerts;
   *_certNames = tmpArray;
 }
 
-/* nsIX509Cert getDefaultEmailEncryptionCert (); */
 NS_IMETHODIMP
 nsNSSCertificateDB::FindEmailEncryptionCert(const nsAString& aNickname,
                                             nsIX509Cert** _retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = nullptr;
 
   if (aNickname.IsEmpty())
@@ -1300,17 +1299,16 @@ nsNSSCertificateDB::FindEmailEncryptionC
   nsCOMPtr<nsIX509Cert> nssCert = nsNSSCertificate::Create(cert.get());
   if (!nssCert) {
     return NS_ERROR_OUT_OF_MEMORY;
   }
   nssCert.forget(_retval);
   return NS_OK;
 }
 
-/* nsIX509Cert getDefaultEmailSigningCert (); */
 NS_IMETHODIMP
 nsNSSCertificateDB::FindEmailSigningCert(const nsAString& aNickname,
                                          nsIX509Cert** _retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = nullptr;
 
   if (aNickname.IsEmpty())
@@ -1391,17 +1389,16 @@ nsNSSCertificateDB::FindCertByEmailAddre
   if (!nssCert)
     return NS_ERROR_OUT_OF_MEMORY;
 
   NS_ADDREF(nssCert);
   *_retval = static_cast<nsIX509Cert*>(nssCert);
   return NS_OK;
 }
 
-/* nsIX509Cert constructX509FromBase64 (in string base64); */
 NS_IMETHODIMP
 nsNSSCertificateDB::ConstructX509FromBase64(const char *base64,
                                             nsIX509Cert **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
   }
@@ -1430,17 +1427,16 @@ nsNSSCertificateDB::ConstructX509FromBas
       lengthDER--;
   }
 
   nsresult rv = ConstructX509(certDER, lengthDER, _retval);
   PL_strfree(certDER);
   return rv;
 }
 
-/* nsIX509Cert constructX509 (in string certDER, unsigned long len); */
 NS_IMETHODIMP
 nsNSSCertificateDB::ConstructX509(const char* certDER,
                                   uint32_t lengthDER,
                                   nsIX509Cert** _retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown()) {
     return NS_ERROR_NOT_AVAILABLE;
--- a/security/manager/ssl/nsPK11TokenDB.cpp
+++ b/security/manager/ssl/nsPK11TokenDB.cpp
@@ -96,104 +96,96 @@ void nsPK11Token::virtualDestroyNSSRefer
 void nsPK11Token::destructorSafeDestroyNSSReference()
 {
   if (mSlot) {
     PK11_FreeSlot(mSlot);
     mSlot = nullptr;
   }
 }
 
-/* readonly attribute wstring tokenName; */
 NS_IMETHODIMP nsPK11Token::GetTokenName(char16_t * *aTokenName)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokenName = ToNewUnicode(mTokenName);
   if (!*aTokenName) return NS_ERROR_OUT_OF_MEMORY;
 
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenDesc; */
 NS_IMETHODIMP nsPK11Token::GetTokenLabel(char16_t **aTokLabel)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokLabel = ToNewUnicode(mTokenLabel);
   if (!*aTokLabel) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenManID; */
 NS_IMETHODIMP nsPK11Token::GetTokenManID(char16_t **aTokManID)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokManID = ToNewUnicode(mTokenManID);
   if (!*aTokManID) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenHWVersion; */
 NS_IMETHODIMP nsPK11Token::GetTokenHWVersion(char16_t **aTokHWVersion)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokHWVersion = ToNewUnicode(mTokenHWVersion);
   if (!*aTokHWVersion) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenFWVersion; */
 NS_IMETHODIMP nsPK11Token::GetTokenFWVersion(char16_t **aTokFWVersion)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokFWVersion = ToNewUnicode(mTokenFWVersion);
   if (!*aTokFWVersion) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenSerialNumber; */
 NS_IMETHODIMP nsPK11Token::GetTokenSerialNumber(char16_t **aTokSerialNum)
 {
   // handle removals/insertions
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshTokenInfo();
   }
   *aTokSerialNum = ToNewUnicode(mTokenSerialNum);
   if (!*aTokSerialNum) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* boolean isLoggedIn (); */
 NS_IMETHODIMP nsPK11Token::IsLoggedIn(bool *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv = NS_OK;
 
   *_retval = PK11_IsLoggedIn(mSlot, 0);
 
   return rv;
 }
 
-/* void logout (in boolean force); */
 NS_IMETHODIMP 
 nsPK11Token::Login(bool force)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv;
@@ -234,51 +226,47 @@ NS_IMETHODIMP nsPK11Token::LogoutAndDrop
 
   nsCOMPtr<nsINSSComponent> nssComponent(do_GetService(kNSSComponentCID, &rv));
   if (NS_FAILED(rv))
     return rv;
 
   return nssComponent->LogoutAuthenticatedPK11();
 }
 
-/* void reset (); */
 NS_IMETHODIMP nsPK11Token::Reset()
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   PK11_ResetToken(mSlot, 0);
   return NS_OK;
 }
 
-/* readonly attribute long minimumPasswordLength; */
 NS_IMETHODIMP nsPK11Token::GetMinimumPasswordLength(int32_t *aMinimumPasswordLength)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   *aMinimumPasswordLength = PK11_GetMinimumPwdLength(mSlot);
 
   return NS_OK;
 }
 
-/* readonly attribute boolean needsUserInit; */
 NS_IMETHODIMP nsPK11Token::GetNeedsUserInit(bool *aNeedsUserInit)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   *aNeedsUserInit = PK11_NeedUserInit(mSlot);
   return NS_OK;
 }
 
-/* boolean checkPassword (in wstring password); */
 NS_IMETHODIMP nsPK11Token::CheckPassword(const char16_t *password, bool *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   SECStatus srv;
   int32_t prerr;
@@ -293,17 +281,16 @@ NS_IMETHODIMP nsPK11Token::CheckPassword
       return NS_ERROR_FAILURE;
     }
   } else {
     *_retval =  true;
   }
   return NS_OK;
 }
 
-/* void initPassword (in wstring initialPassword); */
 NS_IMETHODIMP nsPK11Token::InitPassword(const char16_t *initialPassword)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
     nsresult rv = NS_OK;
     SECStatus status;
@@ -311,31 +298,29 @@ NS_IMETHODIMP nsPK11Token::InitPassword(
     NS_ConvertUTF16toUTF8 aUtf8InitialPassword(initialPassword);
     status = PK11_InitPin(mSlot, "", const_cast<char*>(aUtf8InitialPassword.get()));
     if (status == SECFailure) { rv = NS_ERROR_FAILURE; goto done; }
 
 done:
     return rv;
 }
 
-/* long getAskPasswordTimes(); */
 NS_IMETHODIMP 
 nsPK11Token::GetAskPasswordTimes(int32_t *rvAskTimes)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
     int askTimes, askTimeout;
     PK11_GetSlotPWValues(mSlot, &askTimes, &askTimeout);
     *rvAskTimes = askTimes;
     return NS_OK;
 }
 
-/* long getAskPasswordTimeout(); */
 NS_IMETHODIMP 
 nsPK11Token::GetAskPasswordTimeout(int32_t *rvAskTimeout)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
     int askTimes, askTimeout;
@@ -354,62 +339,58 @@ nsPK11Token::SetAskPasswordDefaults(cons
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
     PK11_SetSlotPWValues(mSlot, askTimes, askTimeout);
     return NS_OK;
 }
 
-/* void changePassword (in wstring oldPassword, in wstring newPassword); */
 NS_IMETHODIMP nsPK11Token::ChangePassword(const char16_t *oldPassword, const char16_t *newPassword)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   SECStatus rv;
   NS_ConvertUTF16toUTF8 aUtf8OldPassword(oldPassword);
   NS_ConvertUTF16toUTF8 aUtf8NewPassword(newPassword);
 
   rv = PK11_ChangePW(mSlot, 
          (oldPassword ? const_cast<char *>(aUtf8OldPassword.get()) : nullptr),
          (newPassword ? const_cast<char *>(aUtf8NewPassword.get()) : nullptr));
   return (rv == SECSuccess) ? NS_OK : NS_ERROR_FAILURE;
 }
 
-/* boolean isHardwareToken (); */
 NS_IMETHODIMP nsPK11Token::IsHardwareToken(bool *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv = NS_OK;
 
   *_retval = PK11_IsHW(mSlot);
 
   return rv;
 }
 
-/* boolean needsLogin (); */
 NS_IMETHODIMP nsPK11Token::NeedsLogin(bool *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv = NS_OK;
 
   *_retval = PK11_NeedLogin(mSlot);
 
   return rv;
 }
 
-/* boolean isFriendly (); */
 NS_IMETHODIMP nsPK11Token::IsFriendly(bool *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv = NS_OK;
 
@@ -427,17 +408,16 @@ nsPK11TokenDB::nsPK11TokenDB()
   /* member initializers and constructor code */
 }
 
 nsPK11TokenDB::~nsPK11TokenDB()
 {
   /* destructor code */
 }
 
-/* nsIPK11Token getInternalKeyToken (); */
 NS_IMETHODIMP nsPK11TokenDB::GetInternalKeyToken(nsIPK11Token **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   PK11SlotInfo *slot = 0;
   nsCOMPtr<nsIPK11Token> token;
 
   slot = PK11_GetInternalKeySlot();
@@ -447,17 +427,16 @@ NS_IMETHODIMP nsPK11TokenDB::GetInternal
   *_retval = token;
   NS_ADDREF(*_retval);
 
 done:
   if (slot) PK11_FreeSlot(slot);
   return rv;
 }
 
-/* nsIPK11Token findTokenByName (in wchar tokenName); */
 NS_IMETHODIMP nsPK11TokenDB::
 FindTokenByName(const char16_t* tokenName, nsIPK11Token **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   PK11SlotInfo *slot = 0;
   NS_ConvertUTF16toUTF8 aUtf8TokenName(tokenName);
   slot = PK11_FindSlotByName(const_cast<char*>(aUtf8TokenName.get()));
@@ -466,17 +445,16 @@ FindTokenByName(const char16_t* tokenNam
   *_retval = new nsPK11Token(slot);
   NS_ADDREF(*_retval);
 
 done:
   if (slot) PK11_FreeSlot(slot);
   return rv;
 }
 
-/* nsIEnumerator listTokens (); */
 NS_IMETHODIMP nsPK11TokenDB::ListTokens(nsIEnumerator* *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsCOMPtr<nsISupportsArray> array;
   PK11SlotList *list = 0;
   PK11SlotListElement *le;
 
   *_retval = nullptr;
--- a/security/manager/ssl/nsPKCS11Slot.cpp
+++ b/security/manager/ssl/nsPKCS11Slot.cpp
@@ -84,17 +84,16 @@ void nsPKCS11Slot::virtualDestroyNSSRefe
 void nsPKCS11Slot::destructorSafeDestroyNSSReference()
 {
   if (mSlot) {
     PK11_FreeSlot(mSlot);
     mSlot = nullptr;
   }
 }
 
-/* readonly attribute wstring name; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetName(char16_t **aName)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   char *csn = PK11_GetSlotName(mSlot);
@@ -108,84 +107,78 @@ nsPKCS11Slot::GetName(char16_t **aName)
   } else {
     // same as above, this is a catch-all
     *aName = ToNewUnicode(NS_LITERAL_STRING("Unnamed Slot"));
   }
   if (!*aName) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring desc; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetDesc(char16_t **aDesc)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshSlotInfo();
   }
 
   *aDesc = ToNewUnicode(mSlotDesc);
   if (!*aDesc) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring manID; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetManID(char16_t **aManID)
 {
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshSlotInfo();
   }
   *aManID = ToNewUnicode(mSlotManID);
   if (!*aManID) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring HWVersion; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetHWVersion(char16_t **aHWVersion)
 {
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshSlotInfo();
   }
   *aHWVersion = ToNewUnicode(mSlotHWVersion);
   if (!*aHWVersion) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* readonly attribute wstring FWVersion; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetFWVersion(char16_t **aFWVersion)
 {
   if (mSeries != PK11_GetSlotSeries(mSlot)) {
     refreshSlotInfo();
   }
   *aFWVersion = ToNewUnicode(mSlotFWVersion);
   if (!*aFWVersion) return NS_ERROR_OUT_OF_MEMORY;
   return NS_OK;
 }
 
-/* nsIPK11Token getToken (); */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetToken(nsIPK11Token **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsCOMPtr<nsIPK11Token> token = new nsPK11Token(mSlot);
   *_retval = token;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
-/* readonly attribute wstring tokenName; */
 NS_IMETHODIMP 
 nsPKCS11Slot::GetTokenName(char16_t **aName)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   if (!PK11_IsPresent(mSlot)) {
@@ -255,45 +248,42 @@ void nsPKCS11Module::virtualDestroyNSSRe
 void nsPKCS11Module::destructorSafeDestroyNSSReference()
 {
   if (mModule) {
     SECMOD_DestroyModule(mModule);
     mModule = nullptr;
   }
 }
 
-/* readonly attribute wstring name; */
 NS_IMETHODIMP 
 nsPKCS11Module::GetName(char16_t **aName)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   *aName = ToNewUnicode(NS_ConvertUTF8toUTF16(mModule->commonName));
   return NS_OK;
 }
 
-/* readonly attribute wstring libName; */
 NS_IMETHODIMP 
 nsPKCS11Module::GetLibName(char16_t **aName)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   if ( mModule->dllName ) {
     *aName = ToNewUnicode(NS_ConvertUTF8toUTF16(mModule->dllName));
   } else {
     *aName = nullptr;
   }
   return NS_OK;
 }
 
-/*  nsIPKCS11Slot findSlotByName(in wstring name); */
 NS_IMETHODIMP 
 nsPKCS11Module::FindSlotByName(const char16_t *aName,
                                nsIPKCS11Slot **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
@@ -329,17 +319,16 @@ nsPKCS11Module::FindSlotByName(const cha
   free(asciiname);
   nsCOMPtr<nsIPKCS11Slot> slot = new nsPKCS11Slot(slotinfo);
   PK11_FreeSlot(slotinfo);
   *_retval = slot;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
-/* nsIEnumerator listSlots (); */
 NS_IMETHODIMP 
 nsPKCS11Module::ListSlots(nsIEnumerator **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   if (isAlreadyShutDown())
     return NS_ERROR_NOT_AVAILABLE;
 
   nsresult rv = NS_OK;
@@ -370,45 +359,42 @@ NS_IMPL_ISUPPORTS(nsPKCS11ModuleDB, nsIP
 nsPKCS11ModuleDB::nsPKCS11ModuleDB()
 {
 }
 
 nsPKCS11ModuleDB::~nsPKCS11ModuleDB()
 {
 }
 
-/* nsIPKCS11Module getInternal (); */
 NS_IMETHODIMP 
 nsPKCS11ModuleDB::GetInternal(nsIPKCS11Module **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   SECMODModule *nssMod = 
     SECMOD_CreateModule(nullptr, SECMOD_INT_NAME, nullptr, SECMOD_INT_FLAGS);
   nsCOMPtr<nsIPKCS11Module> module = new nsPKCS11Module(nssMod);
   SECMOD_DestroyModule(nssMod);
   *_retval = module;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
-/* nsIPKCS11Module getInternalFIPS (); */
 NS_IMETHODIMP 
 nsPKCS11ModuleDB::GetInternalFIPS(nsIPKCS11Module **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   SECMODModule *nssMod = 
     SECMOD_CreateModule(nullptr, SECMOD_FIPS_NAME, nullptr, SECMOD_FIPS_FLAGS);
   nsCOMPtr<nsIPKCS11Module> module = new nsPKCS11Module(nssMod);
   SECMOD_DestroyModule(nssMod);
   *_retval = module;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
-/* nsIPKCS11Module findModuleByName(in wstring name); */
 NS_IMETHODIMP 
 nsPKCS11ModuleDB::FindModuleByName(const char16_t *aName,
                                    nsIPKCS11Module **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   NS_ConvertUTF16toUTF8 aUtf8Name(aName);
   SECMODModule *mod =
     SECMOD_FindModule(const_cast<char *>(aUtf8Name.get()));
@@ -419,17 +405,16 @@ nsPKCS11ModuleDB::FindModuleByName(const
   *_retval = module;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
 /* This is essentially the same as nsIPK11Token::findTokenByName, except
  * that it returns an nsIPKCS11Slot, which may be desired.
  */
-/* nsIPKCS11Module findSlotByName(in wstring name); */
 NS_IMETHODIMP 
 nsPKCS11ModuleDB::FindSlotByName(const char16_t *aName,
                                  nsIPKCS11Slot **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   NS_ConvertUTF16toUTF8 aUtf8Name(aName);
   PK11SlotInfo *slotinfo =
    PK11_FindSlotByName(const_cast<char*>(aUtf8Name.get()));
@@ -437,17 +422,16 @@ nsPKCS11ModuleDB::FindSlotByName(const c
     return NS_ERROR_FAILURE;
   nsCOMPtr<nsIPKCS11Slot> slot = new nsPKCS11Slot(slotinfo);
   PK11_FreeSlot(slotinfo);
   *_retval = slot;
   NS_ADDREF(*_retval);
   return NS_OK;
 }
 
-/* nsIEnumerator listModules (); */
 NS_IMETHODIMP 
 nsPKCS11ModuleDB::ListModules(nsIEnumerator **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   /* get isupports array */
   nsCOMPtr<nsISupportsArray> array;
   rv = NS_NewISupportsArray(getter_AddRefs(array));
@@ -477,17 +461,16 @@ nsPKCS11ModuleDB::ListModules(nsIEnumera
 NS_IMETHODIMP nsPKCS11ModuleDB::GetCanToggleFIPS(bool *aCanToggleFIPS)
 {
   nsNSSShutDownPreventionLock locker;
   *aCanToggleFIPS = SECMOD_CanDeleteInternalModule();
   return NS_OK;
 }
 
 
-/* void toggleFIPSMode (); */
 NS_IMETHODIMP nsPKCS11ModuleDB::ToggleFIPSMode()
 {
   nsNSSShutDownPreventionLock locker;
   // The way to toggle FIPS mode in NSS is extremely obscure.
   // Basically, we delete the internal module, and voila it
   // gets replaced with the opposite module, ie if it was 
   // FIPS before, then it becomes non-FIPS next.
   SECMODModule *internal;
@@ -501,17 +484,16 @@ NS_IMETHODIMP nsPKCS11ModuleDB::ToggleFI
 
   SECStatus srv = SECMOD_DeleteInternalModule(internal->commonName);
   if (srv != SECSuccess)
     return NS_ERROR_FAILURE;
 
   return NS_OK;
 }
 
-/* readonly attribute boolean isFIPSEnabled; */
 NS_IMETHODIMP nsPKCS11ModuleDB::GetIsFIPSEnabled(bool *aIsFIPSEnabled)
 {
   nsNSSShutDownPreventionLock locker;
   *aIsFIPSEnabled = PK11_IsFIPS();
   return NS_OK;
 }
 
 NS_IMETHODIMP nsPKCS11ModuleDB::GetIsFIPSModeActive(bool *aIsFIPSModeActive)
--- a/security/manager/ssl/nsSDR.cpp
+++ b/security/manager/ssl/nsSDR.cpp
@@ -42,17 +42,16 @@ nsSecretDecoderRing::nsSecretDecoderRing
   // initialize superclass
 }
 
 // nsSecretDecoderRing destructor
 nsSecretDecoderRing::~nsSecretDecoderRing()
 {
 }
 
-/* [noscript] long encrypt (in buffer data, in long dataLen, out buffer result); */
 NS_IMETHODIMP nsSecretDecoderRing::
 Encrypt(unsigned char * data, int32_t dataLen, unsigned char * *result, int32_t *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   ScopedPK11SlotInfo slot;
   SECItem keyid;
   SECItem request;
@@ -84,17 +83,16 @@ Encrypt(unsigned char * data, int32_t da
 
   *result = reply.data;
   *_retval = reply.len;
 
 loser:
   return rv;
 }
 
-/* [noscript] long decrypt (in buffer data, in long dataLen, out buffer result); */
 NS_IMETHODIMP nsSecretDecoderRing::
 Decrypt(unsigned char * data, int32_t dataLen, unsigned char * *result, int32_t *_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   ScopedPK11SlotInfo slot;
   SECStatus s;
   SECItem request;
@@ -124,17 +122,16 @@ Decrypt(unsigned char * data, int32_t da
 
   *result = reply.data;
   *_retval = reply.len;
 
 loser:
   return rv;
 }
 
-/* string encryptString (in string text); */
 NS_IMETHODIMP nsSecretDecoderRing::
 EncryptString(const char *text, char **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   unsigned char *encrypted = 0;
   int32_t eLen;
 
@@ -149,17 +146,16 @@ EncryptString(const char *text, char **_
   rv = encode(encrypted, eLen, _retval);
 
 loser:
   if (encrypted) PORT_Free(encrypted);
 
   return rv;
 }
 
-/* string decryptString (in string crypt); */
 NS_IMETHODIMP nsSecretDecoderRing::
 DecryptString(const char *crypt, char **_retval)
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv = NS_OK;
   char *r = 0;
   unsigned char *decoded = 0;
   int32_t decodedLen;
@@ -189,17 +185,16 @@ DecryptString(const char *crypt, char **
 
 loser:
   if (decrypted) PORT_Free(decrypted);
   if (decoded) PR_DELETE(decoded);
 
   return rv;
 }
 
-/* void changePassword(); */
 NS_IMETHODIMP nsSecretDecoderRing::
 ChangePassword()
 {
   nsNSSShutDownPreventionLock locker;
   nsresult rv;
   ScopedPK11SlotInfo slot(PK11_GetInternalKeySlot());
   if (!slot) return NS_ERROR_NOT_AVAILABLE;
 
@@ -274,17 +269,16 @@ LogoutAndTeardown()
   // bug 517584.
   nsCOMPtr<nsIObserverService> os = mozilla::services::GetObserverService();
   if (os)
     os->NotifyObservers(nullptr, "net:prune-dead-connections", nullptr);
 
   return rv;
 }
 
-/* void setWindow(in nsISupports w); */
 NS_IMETHODIMP nsSecretDecoderRing::
 SetWindow(nsISupports *w)
 {
   return NS_OK;
 }
 
 // Support routines
 
--- a/toolkit/components/diskspacewatcher/DiskSpaceWatcher.cpp
+++ b/toolkit/components/diskspacewatcher/DiskSpaceWatcher.cpp
@@ -77,29 +77,27 @@ DiskSpaceWatcher::Observe(nsISupports* a
     mozilla::hal::StopDiskSpaceWatcher();
     return NS_OK;
   }
 
   MOZ_ASSERT(false, "DiskSpaceWatcher got unexpected topic!");
   return NS_ERROR_UNEXPECTED;
 }
 
-/* readonly attribute bool isDiskFull; */
 NS_IMETHODIMP DiskSpaceWatcher::GetIsDiskFull(bool* aIsDiskFull)
 {
   *aIsDiskFull = sIsDiskFull;
   return NS_OK;
 }
 
 // GetFreeSpace is a macro on windows, and that messes up with the c++
 // compiler.
 #ifdef XP_WIN
 #undef GetFreeSpace
 #endif
-/* readonly attribute long freeSpace; */
 NS_IMETHODIMP DiskSpaceWatcher::GetFreeSpace(uint64_t* aFreeSpace)
 {
   *aFreeSpace = sFreeSpace;
   return NS_OK;
 }
 
 // static
 void DiskSpaceWatcher::UpdateState(bool aIsDiskFull, uint64_t aFreeSpace)
--- a/toolkit/components/find/nsFindService.cpp
+++ b/toolkit/components/find/nsFindService.cpp
@@ -23,81 +23,75 @@ nsFindService::nsFindService()
 
 
 nsFindService::~nsFindService()
 {
 }
 
 NS_IMPL_ISUPPORTS(nsFindService, nsIFindService)
 
-/* attribute AString searchString; */
 NS_IMETHODIMP nsFindService::GetSearchString(nsAString & aSearchString)
 {
     aSearchString = mSearchString;
     return NS_OK;
 }
 
 NS_IMETHODIMP nsFindService::SetSearchString(const nsAString & aSearchString)
 {
     mSearchString = aSearchString;
     return NS_OK;
 }
 
-/* attribute AString replaceString; */
 NS_IMETHODIMP nsFindService::GetReplaceString(nsAString & aReplaceString)
 {
     aReplaceString = mReplaceString;
     return NS_OK;
 }
 NS_IMETHODIMP nsFindService::SetReplaceString(const nsAString & aReplaceString)
 {
     mReplaceString = aReplaceString;
     return NS_OK;
 }
 
-/* attribute boolean findBackwards; */
 NS_IMETHODIMP nsFindService::GetFindBackwards(bool *aFindBackwards)
 {
     NS_ENSURE_ARG_POINTER(aFindBackwards);
     *aFindBackwards = mFindBackwards;
     return NS_OK;
 }
 NS_IMETHODIMP nsFindService::SetFindBackwards(bool aFindBackwards)
 {
     mFindBackwards = aFindBackwards;
     return NS_OK;
 }
 
-/* attribute boolean wrapFind; */
 NS_IMETHODIMP nsFindService::GetWrapFind(bool *aWrapFind)
 {
     NS_ENSURE_ARG_POINTER(aWrapFind);
     *aWrapFind = mWrapFind;
     return NS_OK;
 }
 NS_IMETHODIMP nsFindService::SetWrapFind(bool aWrapFind)
 {
     mWrapFind = aWrapFind;
     return NS_OK;
 }
 
-/* attribute boolean entireWord; */
 NS_IMETHODIMP nsFindService::GetEntireWord(bool *aEntireWord)
 {
     NS_ENSURE_ARG_POINTER(aEntireWord);
     *aEntireWord = mEntireWord;
     return NS_OK;
 }
 NS_IMETHODIMP nsFindService::SetEntireWord(bool aEntireWord)
 {
     mEntireWord = aEntireWord;
     return NS_OK;
 }
 
-/* attribute boolean matchCase; */
 NS_IMETHODIMP nsFindService::GetMatchCase(bool *aMatchCase)
 {
     NS_ENSURE_ARG_POINTER(aMatchCase);
     *aMatchCase = mMatchCase;
     return NS_OK;
 }
 NS_IMETHODIMP nsFindService::SetMatchCase(bool aMatchCase)
 {
--- a/toolkit/components/perfmonitoring/nsPerformanceStats.cpp
+++ b/toolkit/components/perfmonitoring/nsPerformanceStats.cpp
@@ -415,31 +415,29 @@ nsPerformanceSnapshot::Init(JSContext* c
                                         0,                              // window id
                                         mProcessId,                     // process id
                                         true,                           // isSystem
                                         processStats);
   return NS_OK;
 }
 
 
-/* void getComponentsData (out nsIArray aComponents); */
 NS_IMETHODIMP nsPerformanceSnapshot::GetComponentsData(nsIArray * *aComponents)
 {
   const size_t length = mComponentsData.Length();
   nsCOMPtr<nsIMutableArray> components = do_CreateInstance(NS_ARRAY_CONTRACTID);
   for (size_t i = 0; i < length; ++i) {
     nsCOMPtr<nsIPerformanceStats> stats = mComponentsData[i];
     mozilla::DebugOnly<nsresult> rv = components->AppendElement(stats, false);
     MOZ_ASSERT(NS_SUCCEEDED(rv));
   }
   components.forget(aComponents);
   return NS_OK;
 }
 
-/* readonly attribute nsIPerformanceStats process; */
 NS_IMETHODIMP nsPerformanceSnapshot::GetProcessData(nsIPerformanceStats * *aProcess)
 {
   NS_IF_ADDREF(*aProcess = mProcessData);
   return NS_OK;
 }
 
 
 NS_IMPL_ISUPPORTS(nsPerformanceStatsService, nsIPerformanceStatsService)
@@ -496,17 +494,16 @@ NS_IMETHODIMP nsPerformanceStatsService:
 {
   JSRuntime *runtime = JS_GetRuntime(cx);
   if (!js::SetStopwatchIsMonitoringPerCompartment(runtime, aIsStopwatchActive)) {
     return NS_ERROR_OUT_OF_MEMORY;
   }
   return NS_OK;
 }
 
-/* readonly attribute nsIPerformanceSnapshot snapshot; */
 NS_IMETHODIMP nsPerformanceStatsService::GetSnapshot(JSContext* cx, nsIPerformanceSnapshot * *aSnapshot)
 {
   nsRefPtr<nsPerformanceSnapshot> snapshot = new nsPerformanceSnapshot();
   nsresult rv = snapshot->Init(cx, mProcessId);
   if (NS_FAILED(rv)) {
     return rv;
   }
 
--- a/toolkit/components/places/nsNavHistoryQuery.cpp
+++ b/toolkit/components/places/nsNavHistoryQuery.cpp
@@ -903,164 +903,150 @@ nsNavHistoryQuery::nsNavHistoryQuery()
     mDomainIsHost(false), mUriIsPrefix(false),
     mAnnotationIsNot(false),
     mTagsAreNot(false)
 {
   // differentiate not set (IsVoid) from empty string (local files)
   mDomain.SetIsVoid(true);
 }
 
-/* attribute PRTime beginTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetBeginTime(PRTime *aBeginTime)
 {
   *aBeginTime = mBeginTime;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetBeginTime(PRTime aBeginTime)
 {
   mBeginTime = aBeginTime;
   return NS_OK;
 }
 
-/* attribute long beginTimeReference; */
 NS_IMETHODIMP nsNavHistoryQuery::GetBeginTimeReference(uint32_t* _retval)
 {
   *_retval = mBeginTimeReference;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetBeginTimeReference(uint32_t aReference)
 {
   if (aReference > TIME_RELATIVE_NOW)
     return NS_ERROR_INVALID_ARG;
   mBeginTimeReference = aReference;
   return NS_OK;
 }
 
-/* readonly attribute boolean hasBeginTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetHasBeginTime(bool* _retval)
 {
   *_retval = ! (mBeginTimeReference == TIME_RELATIVE_EPOCH && mBeginTime == 0);
   return NS_OK;
 }
 
-/* readonly attribute PRTime absoluteBeginTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetAbsoluteBeginTime(PRTime* _retval)
 {
   *_retval = nsNavHistory::NormalizeTime(mBeginTimeReference, mBeginTime);
   return NS_OK;
 }
 
-/* attribute PRTime endTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetEndTime(PRTime *aEndTime)
 {
   *aEndTime = mEndTime;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetEndTime(PRTime aEndTime)
 {
   mEndTime = aEndTime;
   return NS_OK;
 }
 
-/* attribute long endTimeReference; */
 NS_IMETHODIMP nsNavHistoryQuery::GetEndTimeReference(uint32_t* _retval)
 {
   *_retval = mEndTimeReference;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetEndTimeReference(uint32_t aReference)
 {
   if (aReference > TIME_RELATIVE_NOW)
     return NS_ERROR_INVALID_ARG;
   mEndTimeReference = aReference;
   return NS_OK;
 }
 
-/* readonly attribute boolean hasEndTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetHasEndTime(bool* _retval)
 {
   *_retval = ! (mEndTimeReference == TIME_RELATIVE_EPOCH && mEndTime == 0);
   return NS_OK;
 }
 
-/* readonly attribute PRTime absoluteEndTime; */
 NS_IMETHODIMP nsNavHistoryQuery::GetAbsoluteEndTime(PRTime* _retval)
 {
   *_retval = nsNavHistory::NormalizeTime(mEndTimeReference, mEndTime);
   return NS_OK;
 }
 
-/* attribute string searchTerms; */
 NS_IMETHODIMP nsNavHistoryQuery::GetSearchTerms(nsAString& aSearchTerms)
 {
   aSearchTerms = mSearchTerms;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetSearchTerms(const nsAString& aSearchTerms)
 {
   mSearchTerms = aSearchTerms;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::GetHasSearchTerms(bool* _retval)
 {
   *_retval = (! mSearchTerms.IsEmpty());
   return NS_OK;
 }
 
-/* attribute int32_t minVisits; */
 NS_IMETHODIMP nsNavHistoryQuery::GetMinVisits(int32_t* _retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = mMinVisits;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetMinVisits(int32_t aVisits)
 {
   mMinVisits = aVisits;
   return NS_OK;
 }
 
-/* attribute PRint32 maxVisits; */
 NS_IMETHODIMP nsNavHistoryQuery::GetMaxVisits(int32_t* _retval)
 {
   NS_ENSURE_ARG_POINTER(_retval);
   *_retval = mMaxVisits;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetMaxVisits(int32_t aVisits)
 {
   mMaxVisits = aVisits;
   return NS_OK;
 }
 
-/* attribute boolean onlyBookmarked; */
 NS_IMETHODIMP nsNavHistoryQuery::GetOnlyBookmarked(bool *aOnlyBookmarked)
 {
   *aOnlyBookmarked = mOnlyBookmarked;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetOnlyBookmarked(bool aOnlyBookmarked)
 {
   mOnlyBookmarked = aOnlyBookmarked;
   return NS_OK;
 }
 
-/* attribute boolean domainIsHost; */
 NS_IMETHODIMP nsNavHistoryQuery::GetDomainIsHost(bool *aDomainIsHost)
 {
   *aDomainIsHost = mDomainIsHost;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetDomainIsHost(bool aDomainIsHost)
 {
   mDomainIsHost = aDomainIsHost;
   return NS_OK;
 }
 
-/* attribute AUTF8String domain; */
 NS_IMETHODIMP nsNavHistoryQuery::GetDomain(nsACString& aDomain)
 {
   aDomain = mDomain;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetDomain(const nsACString& aDomain)
 {
   mDomain = aDomain;
@@ -1068,75 +1054,70 @@ NS_IMETHODIMP nsNavHistoryQuery::SetDoma
 }
 NS_IMETHODIMP nsNavHistoryQuery::GetHasDomain(bool* _retval)
 {
   // note that empty but not void is still a valid query (local files)
   *_retval = (! mDomain.IsVoid());
   return NS_OK;
 }
 
-/* attribute boolean uriIsPrefix; */
 NS_IMETHODIMP nsNavHistoryQuery::GetUriIsPrefix(bool* aIsPrefix)
 {
   *aIsPrefix = mUriIsPrefix;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetUriIsPrefix(bool aIsPrefix)
 {
   mUriIsPrefix = aIsPrefix;
   return NS_OK;
 }
 
-/* attribute nsIURI uri; */
 NS_IMETHODIMP nsNavHistoryQuery::GetUri(nsIURI** aUri)
 {
   NS_IF_ADDREF(*aUri = mUri);
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::SetUri(nsIURI* aUri)
 {
   mUri = aUri;
   return NS_OK;
 }
 NS_IMETHODIMP nsNavHistoryQuery::GetHasUri(bool* aHasUri)
 {
   *aHasUri = (mUri != nullptr);
   return NS_OK;
 }