Bug 376636 - Building with gcc 4.3 and -pendatic fails due to extra semicolons, patch by Art Haas <ahaas@airmail.net>, rs=me
authorbenjamin@smedbergs.us
Mon, 23 Apr 2007 07:21:53 -0700
changeset 731 bf26dee46a0a67175575b2ff6897dae6123ebf8d
parent 730 f5bdf826f87ccc9e5afc716dce97b530a4ca90d0
child 732 761aeee96fba7d7a5ac3fc3efa94e118d7bb57b0
push idunknown
push userunknown
push dateunknown
reviewersme
bugs376636
milestone1.9a4pre
Bug 376636 - Building with gcc 4.3 and -pendatic fails due to extra semicolons, patch by Art Haas <ahaas@airmail.net>, rs=me
accessible/src/base/nsAccessibleEventData.h
accessible/src/xul/nsXULTreeAccessible.h
browser/components/migration/src/nsNetscapeProfileMigratorBase.h
browser/components/migration/src/nsOperaProfileMigrator.h
browser/components/migration/src/nsProfileMigrator.h
caps/include/nsPrincipal.h
content/base/src/nsContentIterator.cpp
content/base/src/nsDocument.h
content/base/src/nsGenericElement.h
content/base/src/nsNodeUtils.cpp
content/html/content/src/nsFormSubmission.cpp
content/html/content/src/nsHTMLInputElement.cpp
content/html/content/src/nsHTMLScriptElement.cpp
content/html/document/src/nsHTMLDocument.h
content/svg/content/src/nsSVGPoint.cpp
content/svg/content/src/nsSVGRect.cpp
content/svg/content/src/nsSVGValue.h
content/xbl/src/nsXBLBinding.cpp
content/xbl/src/nsXBLDocumentInfo.h
content/xbl/src/nsXBLProtoImpl.h
content/xbl/src/nsXBLProtoImplMember.h
content/xbl/src/nsXBLPrototypeBinding.cpp
content/xbl/src/nsXBLService.cpp
content/xbl/src/nsXBLWindowKeyHandler.cpp
content/xbl/src/nsXBLWindowKeyHandler.h
content/xslt/src/base/txCore.h
content/xslt/src/xpath/txXPathNode.h
content/xslt/src/xslt/txEXSLTFunctions.cpp
content/xslt/src/xslt/txMozillaXSLTProcessor.h
content/xslt/src/xslt/txXMLEventHandler.h
content/xtf/src/nsXTFElementWrapper.h
content/xul/content/src/nsXULPopupListener.cpp
content/xul/document/src/nsXULDocument.h
content/xul/templates/src/nsRDFQuery.h
content/xul/templates/src/nsXULSortService.h
docshell/base/nsGlobalHistory2Adapter.h
docshell/base/nsGlobalHistoryAdapter.h
dom/src/base/nsFocusController.h
dom/src/storage/nsDOMStorage.h
dom/src/storage/nsDOMStorageDB.h
editor/composer/src/nsComposeTxtSrvFilter.h
editor/libeditor/html/TypeInState.h
editor/libeditor/html/nsHTMLEditRules.h
editor/libeditor/text/nsTextEditRules.h
embedding/browser/gtk/src/EmbedContextMenuInfo.h
embedding/browser/gtk/src/EmbedDownloadMgr.cpp
embedding/browser/gtk/src/EmbedEventListener.h
embedding/browser/gtk/src/EmbedPrivate.h
embedding/browser/webBrowser/nsDocShellTreeOwner.h
embedding/browser/webBrowser/nsWebBrowser.h
extensions/universalchardet/src/base/CharDistribution.h
extensions/universalchardet/src/base/JpCntx.h
extensions/universalchardet/src/base/nsBig5Prober.h
extensions/universalchardet/src/base/nsCharSetProber.h
extensions/universalchardet/src/base/nsCodingStateMachine.h
extensions/universalchardet/src/base/nsEUCJPProber.h
extensions/universalchardet/src/base/nsEUCKRProber.h
extensions/universalchardet/src/base/nsEUCTWProber.h
extensions/universalchardet/src/base/nsEscCharsetProber.h
extensions/universalchardet/src/base/nsGB2312Prober.h
extensions/universalchardet/src/base/nsHebrewProber.h
extensions/universalchardet/src/base/nsLatin1Prober.h
extensions/universalchardet/src/base/nsMBCSGroupProber.h
extensions/universalchardet/src/base/nsSBCSGroupProber.h
extensions/universalchardet/src/base/nsSBCharSetProber.h
extensions/universalchardet/src/base/nsSJISProber.h
extensions/universalchardet/src/base/nsUTF8Prober.h
gfx/thebes/src/gfxFont.cpp
intl/chardet/src/nsCyrillicDetector.h
intl/chardet/src/nsDebugDetector.h
intl/chardet/src/nsDetectionAdaptor.h
intl/chardet/src/nsObserverBase.h
intl/chardet/src/nsPSMDetectors.h
intl/locale/src/nsCollation.h
intl/uconv/src/nsUTF8ConverterService.h
intl/uconv/src/nsUnicodeToUTF8.h
intl/uconv/ucvcn/nsCP936ToUnicode.h
intl/uconv/ucvcn/nsGB2312ToUnicodeV2.h
intl/uconv/ucvcn/nsGBKConvUtil.h
intl/uconv/ucvcn/nsGBKToUnicode.cpp
intl/uconv/ucvcn/nsGBKToUnicode.h
intl/uconv/ucvcn/nsISO2022CNToUnicode.h
intl/uconv/ucvcn/nsUnicodeToCP936.h
intl/uconv/ucvcn/nsUnicodeToGB2312GL.h
intl/uconv/ucvcn/nsUnicodeToGB2312V2.h
intl/uconv/ucvcn/nsUnicodeToGBK.cpp
intl/uconv/ucvcn/nsUnicodeToGBK.h
intl/uconv/ucvcn/nsUnicodeToHZ.h
intl/uconv/ucvja/nsJapaneseToUnicode.h
intl/uconv/ucvko/nsISO2022KRToUnicode.h
intl/uconv/ucvlatin/nsUCS2BEToUnicode.h
intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic16.h
intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic8.h
intl/uconv/ucvlatin/nsUnicodeToTSCII.h
intl/uconv/ucvlatin/nsUnicodeToUCS2BE.h
intl/uconv/ucvlatin/nsUnicodeToUTF32.h
intl/unicharutil/src/nsCaseConversionImp2.h
intl/unicharutil/util/nsCompressedCharMap.h
js/src/liveconnect/nsCLiveconnect.cpp
layout/base/nsFrameTraversal.cpp
layout/base/nsPresContext.h
layout/forms/nsTextControlFrame.h
layout/generic/nsFrame.h
layout/generic/nsInlineFrame.h
layout/generic/nsObjectFrame.h
layout/generic/nsSimplePageSequence.h
layout/inspector/src/inDOMView.cpp
layout/mathml/base/src/nsMathMLChar.cpp
layout/style/nsCSSValue.h
layout/style/nsIStyleRuleProcessor.h
layout/style/nsRuleData.h
layout/style/nsRuleNode.cpp
layout/style/nsRuleNode.h
layout/style/nsRuleWalker.h
layout/style/nsStyleContext.h
layout/style/nsStyleStruct.h
layout/tables/SpanningCellSorter.h
layout/tables/nsITableLayoutStrategy.h
layout/tables/nsTableRowGroupFrame.h
layout/xul/base/src/nsBoxLayout.h
layout/xul/base/src/nsMenuBarFrame.h
layout/xul/base/src/nsMenuDismissalListener.h
layout/xul/base/src/nsMenuFrame.h
layout/xul/base/src/nsMenuPopupFrame.h
layout/xul/base/src/nsXULTooltipListener.h
layout/xul/base/src/tree/src/nsTreeBodyFrame.h
layout/xul/base/src/tree/src/nsTreeColumns.h
layout/xul/base/src/tree/src/nsTreeImageListener.h
layout/xul/base/src/tree/src/nsTreeSelection.cpp
layout/xul/base/src/tree/src/nsTreeStyleCache.h
modules/libjar/nsJAR.h
modules/libjar/nsXPTZipLoader.h
modules/libpref/src/nsPrefBranch.h
modules/oji/src/nsCNullSecurityContext.h
modules/plugin/base/src/ns4xPlugin.cpp
modules/plugin/base/src/ns4xPluginInstance.h
netwerk/base/src/nsUnicharStreamLoader.h
netwerk/cookie/src/nsCookie.h
netwerk/mime/src/nsMIMEHeaderParamImpl.h
parser/htmlparser/src/nsParserService.cpp
rdf/base/src/nsInMemoryDataSource.cpp
rdf/base/src/rdfTriplesSerializer.cpp
security/manager/ssl/src/nsCMS.h
security/manager/ssl/src/nsKeyModule.h
security/manager/ssl/src/nsNSSComponent.h
toolkit/components/downloads/src/nsDownloadManager.h
toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.cpp
toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.h
tools/leaky/config.h
tools/leaky/libmalloc.h
widget/src/gtk2/nsDeviceContextSpecG.cpp
xpcom/glue/nsGenericFactory.h
xpcom/io/nsBinaryStream.h
xpcom/io/nsScriptableInputStream.h
xpinstall/src/nsSoftwareUpdate.h
--- a/accessible/src/base/nsAccessibleEventData.h
+++ b/accessible/src/base/nsAccessibleEventData.h
@@ -48,17 +48,17 @@
 
 class nsAccEvent: public nsIAccessibleEvent
 {
 public:
   // Initialize with an nsIAccessible
   nsAccEvent(PRUint32 aEventType, nsIAccessible *aAccessible, void *aEventData);
   // Initialize with an nsIDOMNode
   nsAccEvent(PRUint32 aEventType, nsIDOMNode *aDOMNode, void *aEventData);
-  virtual ~nsAccEvent() {};
+  virtual ~nsAccEvent() {}
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSIACCESSIBLEEVENT
 
 private:
   PRUint32 mEventType;
   nsCOMPtr<nsIAccessible> mAccessible;
   nsCOMPtr<nsIDOMNode> mDOMNode;
--- a/accessible/src/xul/nsXULTreeAccessible.h
+++ b/accessible/src/xul/nsXULTreeAccessible.h
@@ -55,17 +55,17 @@ class nsXULTreeAccessible : public nsXUL
                             public nsIAccessibleTreeCache
 {
 public:
   NS_DECL_ISUPPORTS_INHERITED
   NS_DECL_NSIACCESSIBLESELECTABLE
   NS_DECL_NSIACCESSIBLETREECACHE
 
   nsXULTreeAccessible(nsIDOMNode* aDOMNode, nsIWeakReference* aShell);
-  virtual ~nsXULTreeAccessible() {};
+  virtual ~nsXULTreeAccessible() {}
 
   /* ----- nsIAccessible ----- */
   NS_IMETHOD Shutdown();
   NS_IMETHOD GetRole(PRUint32 *_retval);
   NS_IMETHOD GetState(PRUint32 *aState, PRUint32 *aExtraState);
   NS_IMETHOD GetValue(nsAString& _retval);
 
   NS_IMETHOD GetFirstChild(nsIAccessible **_retval);
--- a/browser/components/migration/src/nsNetscapeProfileMigratorBase.h
+++ b/browser/components/migration/src/nsNetscapeProfileMigratorBase.h
@@ -45,17 +45,17 @@
 
 class nsIFile;
 class nsIPrefBranch;
 
 class nsNetscapeProfileMigratorBase
 {
 public:
   nsNetscapeProfileMigratorBase();
-  virtual ~nsNetscapeProfileMigratorBase() { };
+  virtual ~nsNetscapeProfileMigratorBase() { }
 
 public:
   typedef nsresult(*prefConverter)(void*, nsIPrefBranch*);
 
   struct PrefTransform {
     char*         sourcePrefName;
     char*         targetPrefName;
     prefConverter prefGetterFunc;
--- a/browser/components/migration/src/nsOperaProfileMigrator.h
+++ b/browser/components/migration/src/nsOperaProfileMigrator.h
@@ -176,17 +176,17 @@ public:
                  COOKIE_OTHERFLAG_2           = 0x1C | 0x80,
                  COOKIE_OTHERFLAG_3           = 0x20 | 0x80,
                  COOKIE_OTHERFLAG_4           = 0x22 | 0x80,
                  COOKIE_OTHERFLAG_5           = 0x23 | 0x80,
                  COOKIE_OTHERFLAG_6           = 0x24 | 0x80
   } TAG;
 
 protected:
-  nsOperaCookieMigrator() { };
+  nsOperaCookieMigrator() { }
 
   nsresult ReadHeader();
 
   void     SynthesizePath(char** aResult);
   void     SynthesizeDomain(char** aResult);
   nsresult AddCookieOverride(nsIPermissionManager* aManager);
   nsresult AddCookie(nsICookieManager2* aManager);
 
--- a/browser/components/migration/src/nsProfileMigrator.h
+++ b/browser/components/migration/src/nsProfileMigrator.h
@@ -46,20 +46,20 @@
 { 0x4ca3c946, 0x5408, 0x49f0, { 0x9e, 0xca, 0x3a, 0x97, 0xd5, 0xc6, 0x77, 0x50 } }
 
 class nsProfileMigrator : public nsIProfileMigrator
 {
 public:
   NS_DECL_NSIPROFILEMIGRATOR
   NS_DECL_ISUPPORTS
 
-  nsProfileMigrator() { };
+  nsProfileMigrator() { }
 
 protected:
-  ~nsProfileMigrator() { };
+  ~nsProfileMigrator() { }
 
   nsresult GetDefaultBrowserMigratorKey(nsACString& key,
                                         nsCOMPtr<nsIBrowserProfileMigrator>& bpm);
 
   /**
    * Import profiles from ~/.firefox/ or ~/.phoenix/
    * @return PR_TRUE if any profiles imported.
    */
--- a/caps/include/nsPrincipal.h
+++ b/caps/include/nsPrincipal.h
@@ -112,17 +112,17 @@ protected:
   {
     Certificate(const nsACString& aFingerprint, const nsACString& aSubjectName,
                 const nsACString& aPrettyName, nsISupports* aCert)
       : fingerprint(aFingerprint),
         subjectName(aSubjectName),
         prettyName(aPrettyName),
         cert(aCert)
     {
-    };
+    }
     nsCString fingerprint;
     nsCString subjectName;
     nsCString prettyName;
     nsCOMPtr<nsISupports> cert;
   };
 
   nsresult SetCertificate(const nsACString& aFingerprint,
                           const nsACString& aSubjectName,
--- a/content/base/src/nsContentIterator.cpp
+++ b/content/base/src/nsContentIterator.cpp
@@ -1218,18 +1218,18 @@ nsContentIterator::GetCurrentNode()
 
 
 /*
  *  A simple iterator class for traversing the content in "top subtree" order
  */
 class nsContentSubtreeIterator : public nsContentIterator 
 {
 public:
-  nsContentSubtreeIterator() {};
-  virtual ~nsContentSubtreeIterator() {};
+  nsContentSubtreeIterator() {}
+  virtual ~nsContentSubtreeIterator() {}
 
   // nsContentIterator overrides ------------------------------
 
   virtual nsresult Init(nsIContent* aRoot);
 
   virtual nsresult Init(nsIDOMRange* aRange);
 
   virtual void Next();
--- a/content/base/src/nsDocument.h
+++ b/content/base/src/nsDocument.h
@@ -695,17 +695,17 @@ protected:
   void FillStyleSet(nsStyleSet* aStyleSet);
 
   // Return whether all the presshells for this document are safe to flush
   PRBool IsSafeToFlush() const;
   
   virtual PRInt32 GetDefaultNamespaceID() const
   {
     return kNameSpaceID_None;
-  };
+  }
 
   // Dispatch an event to the ScriptGlobalObject for this document
   void DispatchEventToWindow(nsEvent *aEvent);
 
   // nsContentList match functions for GetElementsByClassName
   static PRBool MatchClassNames(nsIContent* aContent, PRInt32 aNamespaceID,
                                 nsIAtom* aAtom, void* aData);
 
--- a/content/base/src/nsGenericElement.h
+++ b/content/base/src/nsGenericElement.h
@@ -131,17 +131,17 @@ public:
    * @param aContent2 The second node to compare.
    *
    * @return PR_TRUE if the nodes are equal.
    */
   static PRBool AreNodesEqual(nsIContent* aContent1,
                               nsIContent* aContent2);
 
 protected:
-  virtual ~nsNode3Tearoff() {};
+  virtual ~nsNode3Tearoff() {}
 
 private:
   nsCOMPtr<nsIContent> mContent;
 };
 
 /**
  * Yet another tearoff class for nsGenericElement
  * to implement additional interfaces
--- a/content/base/src/nsNodeUtils.cpp
+++ b/content/base/src/nsNodeUtils.cpp
@@ -324,17 +324,17 @@ public:
                 nsCOMArray<nsINode> &aNodesWithProperties)
     : mElement(aElement),
       mNewNodeInfoManager(aNewNodeInfoManager),
       mCx(aCx),
       mOldScope(aOldScope),
       mNewScope(aNewScope),
       mNodesWithProperties(aNodesWithProperties)
   {
-  };
+  }
 
   nsIDOMElement *mElement;
   nsNodeInfoManager *mNewNodeInfoManager;
   JSContext *mCx;
   JSObject *mOldScope;
   JSObject *mNewScope;
   nsCOMArray<nsINode> &mNodesWithProperties;
 };
--- a/content/html/content/src/nsFormSubmission.cpp
+++ b/content/html/content/src/nsFormSubmission.cpp
@@ -94,20 +94,20 @@ public:
                    nsISaveAsCharset* aEncoder,
                    nsIFormProcessor* aFormProcessor,
                    PRInt32 aBidiOptions)
     : mCharset(aCharset),
       mEncoder(aEncoder),
       mFormProcessor(aFormProcessor),
       mBidiOptions(aBidiOptions)
   {
-  };
+  }
   virtual ~nsFormSubmission()
   {
-  };
+  }
 
   NS_DECL_ISUPPORTS
 
   //
   // nsIFormSubmission
   //
   virtual nsresult SubmitTo(nsIURI* aActionURI, const nsAString& aTarget,
                             nsIContent* aSource, nsILinkHandler* aLinkHandler,
--- a/content/html/content/src/nsHTMLInputElement.cpp
+++ b/content/html/content/src/nsHTMLInputElement.cpp
@@ -2850,17 +2850,17 @@ nsHTMLInputElement::VisitGroup(nsIRadioV
 //
 // CLASS nsRadioVisitor
 //
 // (this is the superclass of the others)
 //
 class nsRadioVisitor : public nsIRadioVisitor {
 public:
   nsRadioVisitor() { }
-  virtual ~nsRadioVisitor() { };
+  virtual ~nsRadioVisitor() { }
 
   NS_DECL_ISUPPORTS
 
   NS_IMETHOD Visit(nsIFormControl* aRadio, PRBool* aStop) = 0;
 };
 
 NS_IMPL_ADDREF(nsRadioVisitor)
 NS_IMPL_RELEASE(nsRadioVisitor)
--- a/content/html/content/src/nsHTMLScriptElement.cpp
+++ b/content/html/content/src/nsHTMLScriptElement.cpp
@@ -60,17 +60,17 @@
 //
 // Helper class used to support <SCRIPT FOR=object EVENT=handler ...>
 // style script tags...
 //
 class nsHTMLScriptEventHandler : public nsIScriptEventHandler
 {
 public:
   nsHTMLScriptEventHandler(nsIDOMHTMLScriptElement *aOuter);
-  virtual ~nsHTMLScriptEventHandler() {};
+  virtual ~nsHTMLScriptEventHandler() {}
 
   // nsISupports
   NS_DECL_ISUPPORTS
 
   // nsIScriptEventHandler interface...
   NS_DECL_NSISCRIPTEVENTHANDLER
 
   // Helper method called by nsHTMLScriptElement
--- a/content/html/document/src/nsHTMLDocument.h
+++ b/content/html/document/src/nsHTMLDocument.h
@@ -248,17 +248,17 @@ protected:
   nsresult CreateAndAddWyciwygChannel(void);
   nsresult RemoveWyciwygChannel(void);
 
   void *GenerateParserKey(void);
 
   PRInt32 GetDefaultNamespaceID() const
   {
     return mDefaultNamespaceID;
-  };
+  }
 
   nsCOMArray<nsIDOMHTMLMapElement> mImageMaps;
 
   nsCOMPtr<nsIDOMHTMLCollection> mImages;
   nsCOMPtr<nsIDOMHTMLCollection> mApplets;
   nsCOMPtr<nsIDOMHTMLCollection> mEmbeds;
   nsCOMPtr<nsIDOMHTMLCollection> mLinks;
   nsCOMPtr<nsIDOMHTMLCollection> mAnchors;
--- a/content/svg/content/src/nsSVGPoint.cpp
+++ b/content/svg/content/src/nsSVGPoint.cpp
@@ -178,17 +178,17 @@ nsSVGPoint::GetValueString(nsAString& aV
 // attributes refer to (including SVGPoints) are supposed to be readonly
 
 class nsSVGReadonlyPoint : public nsSVGPoint
 {
 public:
   nsSVGReadonlyPoint(float x, float y)
     : nsSVGPoint(x, y)
   {
-  };
+  }
 
   // override setters to make the whole object readonly
   NS_IMETHODIMP SetX(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetY(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetValueString(const nsAString&) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
 };
 
 nsresult
--- a/content/svg/content/src/nsSVGRect.cpp
+++ b/content/svg/content/src/nsSVGRect.cpp
@@ -215,17 +215,17 @@ NS_IMETHODIMP nsSVGRect::SetHeight(float
 // attributes refer to (including SVGRects) are supposed to be readonly
 
 class nsSVGReadonlyRect : public nsSVGRect
 {
 public:
   nsSVGReadonlyRect(float x, float y, float width, float height)
     : nsSVGRect(x, y, width, height)
   {
-  };
+  }
 
   // override setters to make the whole object readonly
   NS_IMETHODIMP SetX(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetY(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetWidth(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetHeight(float) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
   NS_IMETHODIMP SetValueString(const nsAString&) { return NS_ERROR_DOM_NO_MODIFICATION_ALLOWED_ERR; }
 };
--- a/content/svg/content/src/nsSVGValue.h
+++ b/content/svg/content/src/nsSVGValue.h
@@ -73,17 +73,17 @@ public:
 
 protected:
   // implementation helpers
   void ReleaseObservers();
   void NotifyObservers(SVGObserverNotifyFunction f,
                        modificationType aModType);
   PRInt32 GetModifyNestCount() { return mModifyNestCount; }
 private:
-  virtual void OnDidModify(){}; // hook that will be called before observers are notified
+  virtual void OnDidModify(){} // hook that will be called before observers are notified
   
   nsSmallVoidArray mObservers;
   PRInt32 mModifyNestCount;
 };
 
 // Class that will automatically call WillModify and DidModify in its ctor
 // and dtor respectively (for functions that have multiple exit points).
 
--- a/content/xbl/src/nsXBLBinding.cpp
+++ b/content/xbl/src/nsXBLBinding.cpp
@@ -254,26 +254,26 @@ nsXBLBinding::HasStyleSheets() const
   return mNextBinding ? mNextBinding->HasStyleSheets() : PR_FALSE;
 }
 
 struct EnumData {
   nsXBLBinding* mBinding;
  
   EnumData(nsXBLBinding* aBinding)
     :mBinding(aBinding)
-  {};
+  {}
 };
 
 struct ContentListData : public EnumData {
   nsBindingManager* mBindingManager;
   nsresult          mRv;
 
   ContentListData(nsXBLBinding* aBinding, nsBindingManager* aManager)
     :EnumData(aBinding), mBindingManager(aManager), mRv(NS_OK)
-  {};
+  {}
 };
 
 PR_STATIC_CALLBACK(PLDHashOperator)
 BuildContentLists(nsISupports* aKey,
                   nsAutoPtr<nsInsertionPointList>& aData,
                   void* aClosure)
 {
   ContentListData* data = (ContentListData*)aClosure;
--- a/content/xbl/src/nsXBLDocumentInfo.h
+++ b/content/xbl/src/nsXBLDocumentInfo.h
@@ -47,21 +47,21 @@ class nsObjectHashtable;
 class nsXBLDocumentInfo : public nsIXBLDocumentInfo, public nsIScriptGlobalObjectOwner, public nsSupportsWeakReference
 {
 public:
   NS_DECL_CYCLE_COLLECTING_ISUPPORTS
 
   nsXBLDocumentInfo(nsIDocument* aDocument);
   virtual ~nsXBLDocumentInfo();
 
-  NS_IMETHOD GetDocument(nsIDocument** aResult) { NS_ADDREF(*aResult = mDocument); return NS_OK; };
+  NS_IMETHOD GetDocument(nsIDocument** aResult) { NS_ADDREF(*aResult = mDocument); return NS_OK; }
 
-  NS_IMETHOD GetScriptAccess(PRBool* aResult) { *aResult = mScriptAccess; return NS_OK; };
+  NS_IMETHOD GetScriptAccess(PRBool* aResult) { *aResult = mScriptAccess; return NS_OK; }
 
-  NS_IMETHOD_(nsIURI*) DocumentURI() { return mDocument->GetDocumentURI(); };
+  NS_IMETHOD_(nsIURI*) DocumentURI() { return mDocument->GetDocumentURI(); }
 
   NS_IMETHOD GetPrototypeBinding(const nsACString& aRef, nsXBLPrototypeBinding** aResult);
   NS_IMETHOD SetPrototypeBinding(const nsACString& aRef, nsXBLPrototypeBinding* aBinding);
 
   NS_IMETHOD SetFirstPrototypeBinding(nsXBLPrototypeBinding* aBinding);
   
   NS_IMETHOD FlushSkinStylesheets();
 
--- a/content/xbl/src/nsXBLProtoImpl.h
+++ b/content/xbl/src/nsXBLProtoImpl.h
@@ -51,35 +51,35 @@ class nsXBLProtoImpl
 public:
   nsXBLProtoImpl() 
     : mClassObject(nsnull),
       mMembers(nsnull),
       mConstructor(nsnull),
       mDestructor(nsnull)
   { 
     MOZ_COUNT_CTOR(nsXBLProtoImpl); 
-  };
+  }
   ~nsXBLProtoImpl() 
   { 
     MOZ_COUNT_DTOR(nsXBLProtoImpl);
     // Note: the constructor and destructor are in mMembers, so we'll
     // clean them up automatically.
     for (nsXBLProtoImplMember* curr = mMembers; curr; curr=curr->GetNext())
       curr->Destroy(mClassObject != nsnull);
     delete mMembers; 
-  };
+  }
   
   nsresult InstallImplementation(nsXBLPrototypeBinding* aBinding, nsIContent* aBoundElement);
   nsresult InitTargetObjects(nsXBLPrototypeBinding* aBinding, nsIScriptContext* aContext, 
                              nsIContent* aBoundElement, 
                              nsIXPConnectJSObjectHolder** aScriptObjectHolder,
                              void** aTargetClassObject);
   nsresult CompilePrototypeMembers(nsXBLPrototypeBinding* aBinding);
 
-  void SetMemberList(nsXBLProtoImplMember* aMemberList) { delete mMembers; mMembers = aMemberList; };
+  void SetMemberList(nsXBLProtoImplMember* aMemberList) { delete mMembers; mMembers = aMemberList; }
 
 protected:
   // Function to call if compilation of a member fails.  When this is called,
   // all members before aBrokenMember are compiled, compilation of
   // aBrokenMember failed, and members after aBrokenMember are uncompiled.
   // This function assumes that aBrokenMember is _not_ compiled.
   void DestroyMembers(nsXBLProtoImplMember* aBrokenMember);
   
--- a/content/xbl/src/nsXBLProtoImplMember.h
+++ b/content/xbl/src/nsXBLProtoImplMember.h
@@ -92,22 +92,22 @@ struct nsXBLTextWithLineNumber
   PRUint32 GetLineNumber() {
     return mLineNumber;
   }
 };
 
 class nsXBLProtoImplMember
 {
 public:
-  nsXBLProtoImplMember(const PRUnichar* aName) :mNext(nsnull) { mName = ToNewUnicode(nsDependentString(aName)); };
-  virtual ~nsXBLProtoImplMember() { nsMemory::Free(mName); delete mNext; };
+  nsXBLProtoImplMember(const PRUnichar* aName) :mNext(nsnull) { mName = ToNewUnicode(nsDependentString(aName)); }
+  virtual ~nsXBLProtoImplMember() { nsMemory::Free(mName); delete mNext; }
   virtual void Destroy(PRBool aIsCompiled)=0;
 
-  nsXBLProtoImplMember* GetNext() { return mNext; };
-  void SetNext(nsXBLProtoImplMember* aNext) { mNext = aNext; };
+  nsXBLProtoImplMember* GetNext() { return mNext; }
+  void SetNext(nsXBLProtoImplMember* aNext) { mNext = aNext; }
 
   virtual nsresult InstallMember(nsIScriptContext* aContext,
                                  nsIContent* aBoundElement, 
                                  void* aScriptObject,
                                  void* aTargetClassObject,
                                  const nsCString& aClassStr) = 0;
   virtual nsresult CompileMember(nsIScriptContext* aContext,
                                  const nsCString& aClassStr,
--- a/content/xbl/src/nsXBLPrototypeBinding.cpp
+++ b/content/xbl/src/nsXBLPrototypeBinding.cpp
@@ -542,17 +542,17 @@ nsXBLPrototypeBinding::AttributeChanged(
 }
 
 struct InsertionData {
   nsXBLBinding* mBinding;
   nsXBLPrototypeBinding* mPrototype;
 
   InsertionData(nsXBLBinding* aBinding,
                 nsXBLPrototypeBinding* aPrototype) 
-    :mBinding(aBinding), mPrototype(aPrototype) {};
+    :mBinding(aBinding), mPrototype(aPrototype) {}
 };
 
 PRBool PR_CALLBACK InstantiateInsertionPoint(nsHashKey* aKey, void* aData, void* aClosure)
 {
   nsXBLInsertionPointEntry* entry = NS_STATIC_CAST(nsXBLInsertionPointEntry*, aData);
   InsertionData* data = NS_STATIC_CAST(InsertionData*, aClosure);
   nsXBLBinding* binding = data->mBinding;
   nsXBLPrototypeBinding* proto = data->mPrototype;
@@ -842,17 +842,17 @@ struct nsXBLAttrChangeData
 {
   nsXBLPrototypeBinding* mProto;
   nsIContent* mBoundElement;
   nsIContent* mContent;
   PRInt32 mSrcNamespace;
 
   nsXBLAttrChangeData(nsXBLPrototypeBinding* aProto,
                       nsIContent* aElt, nsIContent* aContent) 
-  :mProto(aProto), mBoundElement(aElt), mContent(aContent) {};
+  :mProto(aProto), mBoundElement(aElt), mContent(aContent) {}
 };
 
 // XXXbz this duplicates lots of AttributeChanged
 PRBool PR_CALLBACK SetAttrs(nsHashKey* aKey, void* aData, void* aClosure)
 {
   nsXBLAttributeEntry* entry = NS_STATIC_CAST(nsXBLAttributeEntry*, aData);
   nsXBLAttrChangeData* changeData = NS_STATIC_CAST(nsXBLAttrChangeData*, aClosure);
 
--- a/content/xbl/src/nsXBLService.cpp
+++ b/content/xbl/src/nsXBLService.cpp
@@ -259,17 +259,17 @@ public:
   NS_IMETHOD BeforeUnload(nsIDOMEvent* aEvent) { return NS_OK; }
   NS_IMETHOD Unload(nsIDOMEvent* aEvent) { return NS_OK; }
   NS_IMETHOD Abort(nsIDOMEvent* aEvent) { return NS_OK; }
   NS_IMETHOD Error(nsIDOMEvent* aEvent) { return NS_OK; }
   NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent) { return NS_OK; }
 
   nsXBLStreamListener(nsXBLService* aXBLService, nsIStreamListener* aInner, nsIDocument* aDocument, nsIDocument* aBindingDocument);
   
-  void AddRequest(nsXBLBindingRequest* aRequest) { mBindingRequests.AppendElement(aRequest); };
+  void AddRequest(nsXBLBindingRequest* aRequest) { mBindingRequests.AppendElement(aRequest); }
   PRBool HasRequest(nsIURI* aURI, nsIContent* aBoundElement);
 
 private:
   nsXBLService* mXBLService; // [WEAK]
 
   nsCOMPtr<nsIStreamListener> mInner;
   nsAutoVoidArray mBindingRequests;
   
--- a/content/xbl/src/nsXBLWindowKeyHandler.cpp
+++ b/content/xbl/src/nsXBLWindowKeyHandler.cpp
@@ -88,17 +88,17 @@ public:
   void LoadDocInfo();
   void GetAllHandlers(const char* aType,
                       nsXBLPrototypeHandler** handler,
                       nsXBLPrototypeHandler** userHandler);
   void GetHandlers(nsIXBLDocumentInfo* aInfo,
                    const nsACString& aRef,
                    nsXBLPrototypeHandler** aResult);
 
-  nsXBLSpecialDocInfo() : mInitialized(PR_FALSE) {};
+  nsXBLSpecialDocInfo() : mInitialized(PR_FALSE) {}
 };
 
 const char nsXBLSpecialDocInfo::sHTMLBindingStr[] =
   "chrome://global/content/platformHTMLBindings.xml";
 
 void nsXBLSpecialDocInfo::LoadDocInfo()
 {
   if (mInitialized)
--- a/content/xbl/src/nsXBLWindowKeyHandler.h
+++ b/content/xbl/src/nsXBLWindowKeyHandler.h
@@ -55,17 +55,17 @@ class nsXBLWindowKeyHandler : public nsI
 public:
   nsXBLWindowKeyHandler(nsIDOMElement* aElement, nsIDOMEventReceiver* aReceiver);
   virtual ~nsXBLWindowKeyHandler();
   
   // nsIDOMetc.
   NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent)
   {
     return NS_OK;
-  };
+  }
 
   NS_IMETHOD KeyUp(nsIDOMEvent* aKeyEvent);
   NS_IMETHOD KeyDown(nsIDOMEvent* aKeyEvent);
   NS_IMETHOD KeyPress(nsIDOMEvent* aKeyEvent);
    
   NS_DECL_ISUPPORTS
 
   // release globals
--- a/content/xslt/src/base/txCore.h
+++ b/content/xslt/src/base/txCore.h
@@ -49,17 +49,17 @@ class nsAString;
 class txObject
 {
 public:
     /**
      * Deletes this txObject
      */
     virtual ~txObject()
     {
-    };
+    }
 };
 
 /**
  * Utility class for doubles
  */
 class txDouble
 {
 public:
--- a/content/xslt/src/xpath/txXPathNode.h
+++ b/content/xslt/src/xpath/txXPathNode.h
@@ -113,25 +113,25 @@ private:
     nsINode *GetRootToAddRef() const
     {
         return mRefCountRoot ? Root() : nsnull;
     }
 
     PRBool isDocument() const
     {
         return mIndex == eDocument;
-    };
+    }
     PRBool isContent() const
     {
         return mIndex == eContent;
-    };
+    }
     PRBool isAttribute() const
     {
         return mIndex != eDocument && mIndex != eContent;
-    };
+    }
 
     nsIContent* Content() const
     {
         NS_ASSERTION(isContent() || isAttribute(), "wrong type");
         return NS_STATIC_CAST(nsIContent*, mNode);
     }
     nsIDocument* Document() const
     {
--- a/content/xslt/src/xslt/txEXSLTFunctions.cpp
+++ b/content/xslt/src/xslt/txEXSLTFunctions.cpp
@@ -745,9 +745,9 @@ TX_InitEXSLTFunction()
             txNamespaceManager::getNamespaceID(namespaceURI);
 
         if (desc.mNamespaceID == kNameSpaceID_Unknown) {
             return PR_FALSE;
         }
     }
 
     return PR_TRUE;
-}
\ No newline at end of file
+}
--- a/content/xslt/src/xslt/txMozillaXSLTProcessor.h
+++ b/content/xslt/src/xslt/txMozillaXSLTProcessor.h
@@ -97,17 +97,17 @@ public:
     // nsIXSLTProcessorPrivate interface
     NS_DECL_NSIXSLTPROCESSORPRIVATE
 
     // nsIDocumentTransformer interface
     NS_IMETHOD SetTransformObserver(nsITransformObserver* aObserver);
     NS_IMETHOD LoadStyleSheet(nsIURI* aUri, nsILoadGroup* aLoadGroup,
                               nsIPrincipal* aCallerPrincipal);
     NS_IMETHOD SetSourceContentModel(nsIDOMNode* aSource);
-    NS_IMETHOD CancelLoads() {return NS_OK;};
+    NS_IMETHOD CancelLoads() {return NS_OK;}
     NS_IMETHOD AddXSLTParamNamespace(const nsString& aPrefix,
                                      const nsString& aNamespace);
     NS_IMETHOD AddXSLTParam(const nsString& aName,
                             const nsString& aNamespace,
                             const nsString& aSelect,
                             const nsString& aValue,
                             nsIDOMNode* aContext);
 
--- a/content/xslt/src/xslt/txXMLEventHandler.h
+++ b/content/xslt/src/xslt/txXMLEventHandler.h
@@ -56,17 +56,17 @@ class nsIDOMDocument;
 /**
  * An interface for handling XML documents, loosely modeled
  * after Dave Megginson's SAX 1.0 API.
  */
 
 class txAXMLEventHandler
 {
 public:
-    virtual ~txAXMLEventHandler() {};
+    virtual ~txAXMLEventHandler() {}
 
     /**
      * Signals to receive the start of an attribute.
      *
      * @param aPrefix the prefix of the attribute
      * @param aLocalName the localname of the attribute
      * @param aLowercaseName the localname of the attribute in lower case
      * @param aNsID the namespace ID of the attribute
@@ -199,17 +199,17 @@ public:
 #endif
 
 /**
  * Interface used to create the appropriate outputhandler
  */
 class txAOutputHandlerFactory
 {
 public:
-    virtual ~txAOutputHandlerFactory() {};
+    virtual ~txAOutputHandlerFactory() {}
 
     /**
      * Creates an outputhandler for the specified format.
      * @param aFromat  format to get handler for
      * @param aHandler outparam. The created handler
      */
     virtual nsresult
     createHandlerWith(txOutputFormat* aFormat,
--- a/content/xtf/src/nsXTFElementWrapper.h
+++ b/content/xtf/src/nsXTFElementWrapper.h
@@ -128,17 +128,17 @@ public:
     return GetXTFElement()->CloneState(aElement);
   }
   nsresult Clone(nsINodeInfo *aNodeInfo, nsINode **aResult) const;
 
 protected:
   virtual nsIXTFElement* GetXTFElement() const
   {
     return mXTFElement;
-  };
+  }
   
   // implementation helpers:  
   PRBool QueryInterfaceInner(REFNSIID aIID, void** result);
 
   PRBool HandledByInner(nsIAtom* attr) const;
 
   void RegUnregAccessKey(PRBool aDoReg);
 
--- a/content/xul/content/src/nsXULPopupListener.cpp
+++ b/content/xul/content/src/nsXULPopupListener.cpp
@@ -107,27 +107,27 @@ public:
     // nsISupports
     NS_DECL_ISUPPORTS
 
     // nsIXULPopupListener
     NS_IMETHOD Init(nsIDOMElement* aElement, const XULPopupType& popupType);
 
     // nsIDOMMouseListener
     NS_IMETHOD MouseDown(nsIDOMEvent* aMouseEvent);
-    NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-    NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-    NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-    NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-    NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent) { return NS_OK; };
+    NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+    NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+    NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+    NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+    NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent) { return NS_OK; }
 
     // nsIDOMContextMenuListener
     NS_IMETHOD ContextMenu(nsIDOMEvent* aContextMenuEvent);
 
     // nsIDOMEventListener
-    NS_IMETHOD HandleEvent(nsIDOMEvent* anEvent) { return NS_OK; };
+    NS_IMETHOD HandleEvent(nsIDOMEvent* anEvent) { return NS_OK; }
 
 protected:
 
     virtual nsresult LaunchPopup(nsIDOMEvent* anEvent);
     virtual nsresult LaunchPopup(PRInt32 aClientX, PRInt32 aClientY) ;
 
 private:
 
--- a/content/xul/document/src/nsXULDocument.h
+++ b/content/xul/document/src/nsXULDocument.h
@@ -192,17 +192,17 @@ protected:
     nsresult GetPixelDimensions(nsIPresShell* aShell, PRInt32* aWidth,
                                 PRInt32* aHeight);
 
     static PRIntn
     RemoveElementsFromMapByContent(const PRUnichar* aID,
                                    nsIContent* aElement,
                                    void* aClosure);
 
-    void SetIsPopup(PRBool isPopup) { mIsPopup = isPopup; };
+    void SetIsPopup(PRBool isPopup) { mIsPopup = isPopup; }
 
     nsresult PrepareToLoad(nsISupports* aContainer,
                            const char* aCommand,
                            nsIChannel* aChannel,
                            nsILoadGroup* aLoadGroup,
                            nsIParser** aResult);
 
     nsresult
@@ -230,17 +230,17 @@ protected:
                                  nsIDOMElement* aListener,
                                  nsIAtom* aAttr);
 
     void GetFocusController(nsIFocusController** aFocusController);
 
     PRInt32 GetDefaultNamespaceID() const
     {
         return kNameSpaceID_XUL;
-    };
+    }
 
 protected:
     // pseudo constants
     static PRInt32 gRefCnt;
 
     static nsIAtom** kIdentityAttrs[];
 
     static nsIRDFService* gRDFService;
--- a/content/xul/templates/src/nsRDFQuery.h
+++ b/content/xul/templates/src/nsRDFQuery.h
@@ -82,19 +82,19 @@ public:
 
     NS_DECL_CYCLE_COLLECTING_ISUPPORTS
     NS_DECL_CYCLE_COLLECTION_CLASS(nsRDFQuery)
 
     /**
      * Retrieve the root node in the rule network
      * @return the root node in the rule network
      */
-    TestNode* GetRoot() { return mRoot; };
+    TestNode* GetRoot() { return mRoot; }
 
-    void SetRoot(TestNode* aRoot) { mRoot = aRoot; };
+    void SetRoot(TestNode* aRoot) { mRoot = aRoot; }
 
     void GetQueryNode(nsIDOMNode** aQueryNode)
     {
        *aQueryNode = mQueryNode;
        NS_IF_ADDREF(*aQueryNode);
     }
 
     void SetQueryNode(nsIDOMNode* aQueryNode)
--- a/content/xul/templates/src/nsXULSortService.h
+++ b/content/xul/templates/src/nsXULSortService.h
@@ -115,18 +115,18 @@ struct contentSortInfo {
 ////////////////////////////////////////////////////////////////////////
 // ServiceImpl
 //
 //   This is the sort service.
 //
 class XULSortServiceImpl : public nsIXULSortService
 {
 protected:
-  XULSortServiceImpl(void) {};
-  virtual ~XULSortServiceImpl(void) {};
+  XULSortServiceImpl(void) {}
+  virtual ~XULSortServiceImpl(void) {}
 
   friend nsresult NS_NewXULSortService(nsIXULSortService** mgr);
 
 private:
 
 public:
   // nsISupports
   NS_DECL_ISUPPORTS
--- a/docshell/base/nsGlobalHistory2Adapter.h
+++ b/docshell/base/nsGlobalHistory2Adapter.h
@@ -60,17 +60,17 @@ public:
                           void **aResult);
 
   static NS_METHOD RegisterSelf(nsIComponentManager* aCompMgr,
                                 nsIFile* aPath,
                                 const char* aLoaderStr,
                                 const char* aType,
                                 const nsModuleComponentInfo *aInfo);
 
-  NS_DEFINE_STATIC_CID_ACCESSOR(NS_GLOBALHISTORY2ADAPTER_CID);
+  NS_DEFINE_STATIC_CID_ACCESSOR(NS_GLOBALHISTORY2ADAPTER_CID)
 
 private:
   nsGlobalHistory2Adapter();
   ~nsGlobalHistory2Adapter();
 
   nsresult Init();
   nsCOMPtr<nsIGlobalHistory2> mHistory;
 };
--- a/docshell/base/nsGlobalHistoryAdapter.h
+++ b/docshell/base/nsGlobalHistoryAdapter.h
@@ -61,17 +61,17 @@ public:
                           void **aResult);
 
   static NS_METHOD RegisterSelf(nsIComponentManager* aCompMgr,
                                 nsIFile* aPath,
                                 const char* aLoaderStr,
                                 const char* aType,
                                 const nsModuleComponentInfo *aInfo);
 
-  NS_DEFINE_STATIC_CID_ACCESSOR(NS_GLOBALHISTORYADAPTER_CID);
+  NS_DEFINE_STATIC_CID_ACCESSOR(NS_GLOBALHISTORYADAPTER_CID)
 
 private:
   nsGlobalHistoryAdapter();
   ~nsGlobalHistoryAdapter();
 
   nsresult Init();
   nsCOMPtr<nsIGlobalHistory> mHistory;
 };
--- a/dom/src/base/nsFocusController.h
+++ b/dom/src/base/nsFocusController.h
@@ -97,17 +97,17 @@ public:
 
   NS_IMETHOD ResetElementFocus();
 
   // nsIDOMFocusListener
   NS_IMETHOD Focus(nsIDOMEvent* aEvent);
   NS_IMETHOD Blur(nsIDOMEvent* aEvent);
 
   // nsIDOMEventListener
-  NS_IMETHOD HandleEvent(nsIDOMEvent* anEvent) { return NS_OK; };
+  NS_IMETHOD HandleEvent(nsIDOMEvent* anEvent) { return NS_OK; }
 
   NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(nsFocusController,
                                            nsIFocusController)
 
 protected:
   void UpdateCommands();
   void UpdateWWActiveWindow();
 
--- a/dom/src/storage/nsDOMStorage.h
+++ b/dom/src/storage/nsDOMStorage.h
@@ -194,19 +194,19 @@ protected:
 };
 
 class nsDOMStorageList : public nsIDOMStorageList
 {
 public:
   nsDOMStorageList()
   {
     mStorages.Init();
-  };
+  }
 
-  virtual ~nsDOMStorageList() {};
+  virtual ~nsDOMStorageList() {}
 
   // nsISupports
   NS_DECL_ISUPPORTS
 
   // nsIDOMStorageList
   NS_DECL_NSIDOMSTORAGELIST
 
   /**
--- a/dom/src/storage/nsDOMStorageDB.h
+++ b/dom/src/storage/nsDOMStorageDB.h
@@ -45,18 +45,18 @@
 #include "nsTHashtable.h"
 
 class nsDOMStorage;
 class nsSessionStorageEntry;
 
 class nsDOMStorageDB
 {
 public:
-  nsDOMStorageDB() {};
-  ~nsDOMStorageDB() {};
+  nsDOMStorageDB() {}
+  ~nsDOMStorageDB() {}
 
   nsresult
   Init();
 
   /**
    * Retrieve a list of all the keys associated with a particular domain.
    */
   nsresult
--- a/editor/composer/src/nsComposeTxtSrvFilter.h
+++ b/editor/composer/src/nsComposeTxtSrvFilter.h
@@ -47,17 +47,17 @@
  *
  * This filter is used to skip over various form control nodes and
  * mail's cite nodes
  */
 class nsComposeTxtSrvFilter : public nsITextServicesFilter
 {
 public:
   nsComposeTxtSrvFilter();
-  virtual ~nsComposeTxtSrvFilter() {};
+  virtual ~nsComposeTxtSrvFilter() {}
 
   // nsISupports interface...
   NS_DECL_ISUPPORTS
 
   // nsITextServicesFilter 
   NS_DECL_NSITEXTSERVICESFILTER
 
   // Helper - Intializer
--- a/editor/libeditor/html/TypeInState.h
+++ b/editor/libeditor/html/TypeInState.h
@@ -47,17 +47,17 @@
 #include "nsVoidArray.h"
 
 struct PropItem
 {
   nsIAtom *tag;
   nsString attr;
   nsString value;
   
-  PropItem() : tag(nsnull), attr(), value() {};
+  PropItem() : tag(nsnull), attr(), value() {}
   PropItem(nsIAtom *aTag, const nsAString &aAttr, const nsAString &aValue);
   ~PropItem();
 };
 
 class TypeInState : public nsISelectionListener
 {
 public:
 
--- a/editor/libeditor/html/nsHTMLEditRules.h
+++ b/editor/libeditor/html/nsHTMLEditRules.h
@@ -53,20 +53,20 @@ class nsVoidArray;
 class nsIDOMElement;
 class nsIEditor;
 class nsHTMLEditor;
 
 struct StyleCache : public PropItem
 {
   PRBool mPresent;
   
-  StyleCache() : PropItem(nsnull, EmptyString(), EmptyString()), mPresent(PR_FALSE){};
+  StyleCache() : PropItem(nsnull, EmptyString(), EmptyString()), mPresent(PR_FALSE){}
   StyleCache(nsIAtom *aTag, const nsAString &aAttr, const nsAString &aValue) : 
-             PropItem(aTag, aAttr, aValue), mPresent(PR_FALSE) {};
-  ~StyleCache() {};
+             PropItem(aTag, aAttr, aValue), mPresent(PR_FALSE) {}
+  ~StyleCache() {}
 };
 
 
 #define SIZE_STYLE_TABLE 19
 
 class nsHTMLEditRules : public nsIHTMLEditRules, public nsTextEditRules, public nsIEditActionListener
 {
 public:
--- a/editor/libeditor/text/nsTextEditRules.h
+++ b/editor/libeditor/text/nsTextEditRules.h
@@ -236,19 +236,19 @@ class nsTextRulesInfo : public nsRulesIn
     maxLength(-1),
     collapsedAction(nsIEditor::eNext),
     bOrdered(PR_FALSE),
     entireList(PR_FALSE),
     bulletType(0),
     alignType(0),
     blockType(0),
     insertElement(0)
-    {};
+    {}
 
-  virtual ~nsTextRulesInfo() {};
+  virtual ~nsTextRulesInfo() {}
   
   // kInsertText
   const nsAString *inString;
   nsAString *outString;
   const nsAString *outputFormat;
   PRInt32 maxLength;
   
   // kDeleteSelection
--- a/embedding/browser/gtk/src/EmbedContextMenuInfo.h
+++ b/embedding/browser/gtk/src/EmbedContextMenuInfo.h
@@ -69,17 +69,17 @@ public:
   nsresult          UpdateContextData(nsIDOMEvent *aDOMEvent);
   nsresult          UpdateContextData(void *aEvent);
   const char*       GetSelectedText();
   nsresult          GetElementForScroll(nsIDOMDocument *targetDOMDocument);
   nsresult          GetElementForScroll(nsIDOMEvent *aEvent);
   nsresult          CheckDomImageElement(nsIDOMNode *node, nsString& aHref,
                                        PRInt32 *aWidth, PRInt32 *aHeight);
   nsresult          GetImageRequest(imgIRequest **aRequest, nsIDOMNode *aDOMNode);
-  nsString          GetCtxDocTitle(void) { return mCtxDocTitle; };
+  nsString          GetCtxDocTitle(void) { return mCtxDocTitle; }
 
 
   PRInt32                 mX, mY, mObjWidth, mObjHeight, mCtxFrameNum;
   nsString                mCtxURI, mCtxHref, mCtxImgHref;
   PRUint32                mEmbedCtxType;
   PRInt32 mCtxFormType;
   nsCOMPtr<nsIDOMNode>    mEventNode;
   nsCOMPtr<nsIDOMEventTarget> mEventTarget;
--- a/embedding/browser/gtk/src/EmbedDownloadMgr.cpp
+++ b/embedding/browser/gtk/src/EmbedDownloadMgr.cpp
@@ -75,21 +75,21 @@
 #define UNKNOWN_FILE_SIZE -1
 
 class EmbedDownloadMgr;
 class ProgressListener : public nsIWebProgressListener2
 {
 public:
     ProgressListener(EmbedDownload *aDownload):mDownload(aDownload)
     {
-    };
+    }
 
     ~ProgressListener(void)
     {
-    };
+    }
 
     NS_DECL_ISUPPORTS
     NS_DECL_NSIWEBPROGRESSLISTENER
     NS_DECL_NSIWEBPROGRESSLISTENER2
 
     EmbedDownload *mDownload;
 };
 
--- a/embedding/browser/gtk/src/EmbedEventListener.h
+++ b/embedding/browser/gtk/src/EmbedEventListener.h
@@ -115,17 +115,17 @@ class EmbedEventListener : public nsIDOM
 
   NS_IMETHOD Activate(nsIDOMEvent* aDOMEvent);
   NS_IMETHOD FocusIn(nsIDOMEvent* aDOMEvent);
   NS_IMETHOD FocusOut(nsIDOMEvent* aDOMEvent);
 
   // nsIDOMMouseMotionListener
   NS_IMETHOD MouseMove(nsIDOMEvent* aDOMEvent);
   NS_IMETHOD DragMove(nsIDOMEvent* aMouseEvent);
-  EmbedContextMenuInfo* GetContextInfo() { return mCtxInfo; };
+  EmbedContextMenuInfo* GetContextInfo() { return mCtxInfo; }
 
   // nsIDOMFocusListener
   NS_IMETHOD Focus(nsIDOMEvent* aEvent);
   NS_IMETHOD Blur(nsIDOMEvent* aEvent);
   NS_IMETHOD HandleSelection(nsIDOMMouseEvent* aDOMMouseEvent);
 
   nsresult   NewURI            (nsIURI **result,
                                 const char *spec);
--- a/embedding/browser/gtk/src/EmbedPrivate.h
+++ b/embedding/browser/gtk/src/EmbedPrivate.h
@@ -80,18 +80,18 @@ class EmbedContentListener;
 class EmbedEventListener;
 
 class nsPIDOMWindow;
 class nsIDirectoryServiceProvider;
 
 class EmbedCommon {
  public:
   EmbedCommon() {
-  };
-  ~EmbedCommon() { };
+  }
+  ~EmbedCommon() { }
   static EmbedCommon* GetInstance();
   static void DeleteInstance();
   nsresult    Init(void);
   GtkObject   *mCommon;
   static GtkMozEmbed* GetAnyLiveWidget();
 };
 class EmbedPrivate {
 
--- a/embedding/browser/webBrowser/nsDocShellTreeOwner.h
+++ b/embedding/browser/webBrowser/nsDocShellTreeOwner.h
@@ -196,17 +196,17 @@ public:
   NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent);
   NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent);
   NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent);
   NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent);
   NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent);
 
     // nsIDOMMouseMotionListener
   NS_IMETHOD MouseMove(nsIDOMEvent* aMouseEvent);
-  NS_IMETHOD DragMove(nsIDOMEvent* aMouseEvent) { return NS_OK; };
+  NS_IMETHOD DragMove(nsIDOMEvent* aMouseEvent) { return NS_OK; }
 
     // nsIDOMKeyListener
   NS_IMETHOD KeyDown(nsIDOMEvent* aKeyEvent) ;
   NS_IMETHOD KeyUp(nsIDOMEvent* aKeyEvent) ;
   NS_IMETHOD KeyPress(nsIDOMEvent* aKeyEvent) ;
 
     // Add/remove the relevant listeners, based on what interfaces
     // the embedding chrome implements.
--- a/embedding/browser/webBrowser/nsWebBrowser.h
+++ b/embedding/browser/webBrowser/nsWebBrowser.h
@@ -88,17 +88,17 @@ public:
 };
 
 class nsWebBrowserListenerState
 {
 public:
     PRBool Equals(nsIWeakReference *aListener, const nsIID& aID) {
         if (mWeakPtr.get() == aListener && mID.Equals(aID)) return PR_TRUE;
         return PR_FALSE;
-    };
+    }
 
     nsWeakPtr mWeakPtr;
     nsIID mID;
 };
 
 //  {F1EAC761-87E9-11d3-AF80-00A024FFC08C} - 
 #define NS_WEBBROWSER_CID \
 {0xf1eac761, 0x87e9, 0x11d3, { 0xaf, 0x80, 0x00, 0xa0, 0x24, 0xff, 0xc0, 0x8c }}
--- a/extensions/universalchardet/src/base/CharDistribution.h
+++ b/extensions/universalchardet/src/base/CharDistribution.h
@@ -40,20 +40,20 @@
 
 #include "nscore.h"
 
 #define ENOUGH_DATA_THRESHOLD 1024
  
 class CharDistributionAnalysis
 {
 public:
-  CharDistributionAnalysis() {Reset();};
+  CharDistributionAnalysis() {Reset();}
 
   //feed a block of data and do distribution analysis
-  void HandleData(const char* aBuf, PRUint32 aLen) {};
+  void HandleData(const char* aBuf, PRUint32 aLen) {}
   
   //Feed a character with known length
   void HandleOneChar(const char* aStr, PRUint32 aCharLen)
   {
     PRInt32 order;
 
     //we only care about 2-bytes character in our distribution analysis
     order = (aCharLen == 2) ? GetOrder(aStr) : -1;
@@ -63,42 +63,42 @@ public:
       mTotalChars++;
       //order is valid
       if ((PRUint32)order < mTableSize)
       {
         if (512 > mCharToFreqOrder[order])
           mFreqChars++;
       }
     }
-  };
+  }
 
   //return confidence base on existing data
   float GetConfidence();
 
   //Reset analyser, clear any state 
   void      Reset(void) 
   {
     mDone = PR_FALSE;
     mTotalChars = 0;
     mFreqChars = 0;
-  };
+  }
 
   //This function is for future extension. Caller can use this function to control
   //analyser's behavior
-  void      SetOpion(){};
+  void      SetOpion(){}
 
   //It is not necessary to receive all data to draw conclusion. For charset detection,
   // certain amount of data is enough
-  PRBool GotEnoughData() {return mTotalChars > ENOUGH_DATA_THRESHOLD;};
+  PRBool GotEnoughData() {return mTotalChars > ENOUGH_DATA_THRESHOLD;}
 
 protected:
   //we do not handle character base on its original encoding string, but 
   //convert this encoding string to a number, here called order.
   //This allow multiple encoding of a language to share one frequency table 
-  virtual PRInt32 GetOrder(const char* str) {return -1;};
+  virtual PRInt32 GetOrder(const char* str) {return -1;}
   
   //If this flag is set to PR_TRUE, detection is done and conclusion has been made
   PRBool   mDone;
 
   //The number of characters whose frequency order is less than 512
   PRUint32 mFreqChars;
 
   //Total character encounted.
@@ -126,17 +126,17 @@ protected:
   //  first  byte range: 0xc4 -- 0xfe
   //  second byte range: 0xa1 -- 0xfe
   //no validation needed here. State machine has done that
   PRInt32 GetOrder(const char* str) 
   { if ((unsigned char)*str >= (unsigned char)0xc4)  
       return 94*((unsigned char)str[0]-(unsigned char)0xc4) + (unsigned char)str[1] - (unsigned char)0xa1;
     else
       return -1;
-  };
+  }
 };
 
 
 class EUCKRDistributionAnalysis : public CharDistributionAnalysis
 {
 public:
   EUCKRDistributionAnalysis();
 protected:
@@ -144,34 +144,34 @@ protected:
   //  first  byte range: 0xb0 -- 0xfe
   //  second byte range: 0xa1 -- 0xfe
   //no validation needed here. State machine has done that
   PRInt32 GetOrder(const char* str) 
   { if ((unsigned char)*str >= (unsigned char)0xb0)  
       return 94*((unsigned char)str[0]-(unsigned char)0xb0) + (unsigned char)str[1] - (unsigned char)0xa1;
     else
       return -1;
-  };
+  }
 };
 
 class GB2312DistributionAnalysis : public CharDistributionAnalysis
 {
 public:
   GB2312DistributionAnalysis();
 protected:
   //for GB2312 encoding, we are interested 
   //  first  byte range: 0xb0 -- 0xfe
   //  second byte range: 0xa1 -- 0xfe
   //no validation needed here. State machine has done that
   PRInt32 GetOrder(const char* str) 
   { if ((unsigned char)*str >= (unsigned char)0xb0 && (unsigned char)str[1] >= (unsigned char)0xa1)  
       return 94*((unsigned char)str[0]-(unsigned char)0xb0) + (unsigned char)str[1] - (unsigned char)0xa1;
     else
       return -1;
-  };
+  }
 };
 
 
 class Big5DistributionAnalysis : public CharDistributionAnalysis
 {
 public:
   Big5DistributionAnalysis();
 protected:
@@ -182,17 +182,17 @@ protected:
   PRInt32 GetOrder(const char* str) 
   { if ((unsigned char)*str >= (unsigned char)0xa4)  
       if ((unsigned char)str[1] >= (unsigned char)0xa1)
         return 157*((unsigned char)str[0]-(unsigned char)0xa4) + (unsigned char)str[1] - (unsigned char)0xa1 +63;
       else
         return 157*((unsigned char)str[0]-(unsigned char)0xa4) + (unsigned char)str[1] - (unsigned char)0x40;
     else
       return -1;
-  };
+  }
 };
 
 class SJISDistributionAnalysis : public CharDistributionAnalysis
 {
 public:
   SJISDistributionAnalysis();
 protected:
   //for sjis encoding, we are interested 
@@ -207,30 +207,30 @@ protected:
     else if ((unsigned char)*str >= (unsigned char)0xe0 && (unsigned char)*str <= (unsigned char)0xef)  
       order = 188 * ((unsigned char)str[0]-(unsigned char)0xe0 + 31);
     else
       return -1;
     order += (unsigned char)*(str+1) - 0x40;
     if ((unsigned char)str[1] > (unsigned char)0x7f)
       order--;
     return order;
-  };
+  }
 };
 
 class EUCJPDistributionAnalysis : public CharDistributionAnalysis
 {
 public:
   EUCJPDistributionAnalysis();
 protected:
   //for euc-JP encoding, we are interested 
   //  first  byte range: 0xa0 -- 0xfe
   //  second byte range: 0xa1 -- 0xfe
   //no validation needed here. State machine has done that
   PRInt32 GetOrder(const char* str) 
   { if ((unsigned char)*str >= (unsigned char)0xa0)  
       return 94*((unsigned char)str[0]-(unsigned char)0xa1) + (unsigned char)str[1] - (unsigned char)0xa1;
     else
       return -1;
-  };
+  }
 };
 
 #endif //CharDistribution_h__
 
--- a/extensions/universalchardet/src/base/JpCntx.h
+++ b/extensions/universalchardet/src/base/JpCntx.h
@@ -46,17 +46,17 @@
 #define MAX_REL_THRESHOLD     1000
 
 //hiragana frequency category table
 extern char jp2CharContext[83][83];
 
 class JapaneseContextAnalysis
 {
 public:
-  JapaneseContextAnalysis() {Reset();};
+  JapaneseContextAnalysis() {Reset();}
 
   void HandleData(const char* aBuf, PRUint32 aLen);
 
   void HandleOneChar(const char* aStr, PRUint32 aCharLen)
   {
     PRInt32 order;
 
     //if we received enough data, stop here   
@@ -67,22 +67,22 @@ public:
     order = (aCharLen == 2) ? GetOrder(aStr) : -1;
     if (order != -1 && mLastCharOrder != -1)
     {
       mTotalRel++;
       //count this sequence to its category counter
       mRelSample[jp2CharContext[mLastCharOrder][order]]++;
     }
     mLastCharOrder = order;
-  };
+  }
 
   float GetConfidence();
   void      Reset(void);
-  void      SetOpion(){};
-  PRBool GotEnoughData() {return mTotalRel > ENOUGH_REL_THRESHOLD;};
+  void      SetOpion(){}
+  PRBool GotEnoughData() {return mTotalRel > ENOUGH_REL_THRESHOLD;}
 
 protected:
   virtual PRInt32 GetOrder(const char* str, PRUint32 *charLen) = 0;
   virtual PRInt32 GetOrder(const char* str) = 0;
 
   //category counters, each integer counts sequences in its category
   PRUint32 mRelSample[NUM_OF_CATEGORY];
 
@@ -110,28 +110,28 @@ protected:
   PRInt32 GetOrder(const char* str)
   {
     //We only interested in Hiragana, so first byte is '\202'
     if (*str == '\202' && 
           (unsigned char)*(str+1) >= (unsigned char)0x9f && 
           (unsigned char)*(str+1) <= (unsigned char)0xf1)
       return (unsigned char)*(str+1) - (unsigned char)0x9f;
     return -1;
-  };
+  }
 };
 
 class EUCJPContextAnalysis : public JapaneseContextAnalysis
 {
 protected:
   PRInt32 GetOrder(const char* str, PRUint32 *charLen);
   PRInt32 GetOrder(const char* str)
     //We only interested in Hiragana, so first byte is '\244'
   {
     if (*str == '\244' &&
           (unsigned char)*(str+1) >= (unsigned char)0xa1 &&
           (unsigned char)*(str+1) <= (unsigned char)0xf3)
       return (unsigned char)*(str+1) - (unsigned char)0xa1;
     return -1;
-  };
+  }
 };
 
 #endif /* __JPCNTX_H__ */
 
--- a/extensions/universalchardet/src/base/nsBig5Prober.h
+++ b/extensions/universalchardet/src/base/nsBig5Prober.h
@@ -40,24 +40,24 @@
 
 #include "nsCharSetProber.h"
 #include "nsCodingStateMachine.h"
 #include "CharDistribution.h"
 
 class nsBig5Prober: public nsCharSetProber {
 public:
   nsBig5Prober(void){mCodingSM = new nsCodingStateMachine(&Big5SMModel);
-                      Reset();};
-  virtual ~nsBig5Prober(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsBig5Prober(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "Big5";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "Big5";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   void      GetDistribution(PRUint32 aCharLen, const char* aStr);
   
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   //Big5ContextAnalysis mContextAnalyser;
--- a/extensions/universalchardet/src/base/nsCharSetProber.h
+++ b/extensions/universalchardet/src/base/nsCharSetProber.h
@@ -47,17 +47,17 @@ typedef enum {
   eFoundIt = 1,     //That's a positive answer
   eNotMe = 2        //Negative answer
 } nsProbingState;
 
 #define SHORTCUT_THRESHOLD      (float)0.95
 
 class nsCharSetProber {
 public:
-  virtual ~nsCharSetProber() {};
+  virtual ~nsCharSetProber() {}
   virtual const char* GetCharSetName() = 0;
   virtual nsProbingState HandleData(const char* aBuf, PRUint32 aLen) = 0;
   virtual nsProbingState GetState(void) = 0;
   virtual void      Reset(void)  = 0;
   virtual float     GetConfidence(void) = 0;
   virtual void      SetOpion() = 0;
 
 #ifdef DEBUG_chardet
--- a/extensions/universalchardet/src/base/nsCodingStateMachine.h
+++ b/extensions/universalchardet/src/base/nsCodingStateMachine.h
@@ -57,34 +57,34 @@ typedef struct
   const char* name;
 } SMModel;
 
 class nsCodingStateMachine {
 public:
   nsCodingStateMachine(SMModel* sm){
           mCurrentState = eStart;
           mModel = sm;
-        };
+        }
   nsSMState NextState(char c){
     //for each byte we get its class , if it is first byte, we also get byte length
     PRUint32 byteCls = GETCLASS(c);
     if (mCurrentState == eStart)
     { 
       mCurrentBytePos = 0; 
       mCurrentCharLen = mModel->charLenTable[byteCls];
     }
     //from byte's class and stateTable, we get its next state
     mCurrentState=(nsSMState)GETFROMPCK(mCurrentState*(mModel->classFactor)+byteCls,
                                        mModel->stateTable);
     mCurrentBytePos++;
     return mCurrentState;
-  };
-  PRUint32  GetCurrentCharLen(void) {return mCurrentCharLen;};
-  void      Reset(void) {mCurrentState = eStart;};
-  const char * GetCodingStateMachine() {return mModel->name;};
+  }
+  PRUint32  GetCurrentCharLen(void) {return mCurrentCharLen;}
+  void      Reset(void) {mCurrentState = eStart;}
+  const char * GetCodingStateMachine() {return mModel->name;}
 
 protected:
   nsSMState mCurrentState;
   PRUint32 mCurrentCharLen;
   PRUint32 mCurrentBytePos;
 
   SMModel *mModel;
 };
--- a/extensions/universalchardet/src/base/nsEUCJPProber.h
+++ b/extensions/universalchardet/src/base/nsEUCJPProber.h
@@ -46,24 +46,24 @@
 #include "nsCharSetProber.h"
 #include "nsCodingStateMachine.h"
 #include "JpCntx.h"
 #include "CharDistribution.h"
 
 class nsEUCJPProber: public nsCharSetProber {
 public:
   nsEUCJPProber(void){mCodingSM = new nsCodingStateMachine(&EUCJPSMModel);
-                      Reset();};
-  virtual ~nsEUCJPProber(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsEUCJPProber(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "EUC-JP";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "EUC-JP";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   EUCJPContextAnalysis mContextAnalyser;
   EUCJPDistributionAnalysis mDistributionAnalyser;
 
--- a/extensions/universalchardet/src/base/nsEUCKRProber.h
+++ b/extensions/universalchardet/src/base/nsEUCKRProber.h
@@ -40,24 +40,24 @@
 
 #include "nsCharSetProber.h"
 #include "nsCodingStateMachine.h"
 #include "CharDistribution.h"
 
 class nsEUCKRProber: public nsCharSetProber {
 public:
   nsEUCKRProber(void){mCodingSM = new nsCodingStateMachine(&EUCKRSMModel);
-                      Reset();};
-  virtual ~nsEUCKRProber(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsEUCKRProber(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "EUC-KR";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "EUC-KR";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   void      GetDistribution(PRUint32 aCharLen, const char* aStr);
   
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   //EUCKRContextAnalysis mContextAnalyser;
--- a/extensions/universalchardet/src/base/nsEUCTWProber.h
+++ b/extensions/universalchardet/src/base/nsEUCTWProber.h
@@ -40,24 +40,24 @@
 
 #include "nsCharSetProber.h"
 #include "nsCodingStateMachine.h"
 #include "CharDistribution.h"
 
 class nsEUCTWProber: public nsCharSetProber {
 public:
   nsEUCTWProber(void){mCodingSM = new nsCodingStateMachine(&EUCTWSMModel);
-                      Reset();};
-  virtual ~nsEUCTWProber(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsEUCTWProber(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "x-euc-tw";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "x-euc-tw";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   void      GetDistribution(PRUint32 aCharLen, const char* aStr);
   
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   //EUCTWContextAnalysis mContextAnalyser;
--- a/extensions/universalchardet/src/base/nsEscCharsetProber.h
+++ b/extensions/universalchardet/src/base/nsEscCharsetProber.h
@@ -43,21 +43,21 @@
 
 #define NUM_OF_ESC_CHARSETS   4
 
 class nsEscCharSetProber: public nsCharSetProber {
 public:
   nsEscCharSetProber(void);
   virtual ~nsEscCharSetProber(void);
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return mDetectedCharset;};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return mDetectedCharset;}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
-  float     GetConfidence(void){return (float)0.99;};
-  void      SetOpion() {};
+  float     GetConfidence(void){return (float)0.99;}
+  void      SetOpion() {}
 
 protected:
   void      GetDistribution(PRUint32 aCharLen, const char* aStr);
   
   nsCodingStateMachine* mCodingSM[NUM_OF_ESC_CHARSETS] ;
   PRUint32    mActiveSM;
   nsProbingState mState;
   const char *  mDetectedCharset;
--- a/extensions/universalchardet/src/base/nsGB2312Prober.h
+++ b/extensions/universalchardet/src/base/nsGB2312Prober.h
@@ -42,24 +42,24 @@
 #include "nsCodingStateMachine.h"
 #include "CharDistribution.h"
 
 // We use gb18030 to replace gb2312, because 18030 is a superset. 
 
 class nsGB18030Prober: public nsCharSetProber {
 public:
   nsGB18030Prober(void){mCodingSM = new nsCodingStateMachine(&GB18030SMModel);
-                      Reset();};
-  virtual ~nsGB18030Prober(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsGB18030Prober(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "gb18030";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "gb18030";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   void      GetDistribution(PRUint32 aCharLen, const char* aStr);
   
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   //GB2312ContextAnalysis mContextAnalyser;
--- a/extensions/universalchardet/src/base/nsHebrewProber.h
+++ b/extensions/universalchardet/src/base/nsHebrewProber.h
@@ -50,17 +50,17 @@ public:
   virtual ~nsHebrewProber(void) {}
   virtual nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
   virtual const char* GetCharSetName();
   virtual void Reset(void);
 
   virtual nsProbingState GetState(void);
 
   virtual float     GetConfidence(void) { return (float)0.0; }
-  virtual void      SetOpion() {};
+  virtual void      SetOpion() {}
 
   void SetModelProbers(nsCharSetProber *logicalPrb, nsCharSetProber *visualPrb) 
   { mLogicalProb = logicalPrb; mVisualProb = visualPrb; }
 
 #ifdef DEBUG_chardet
   virtual void  DumpStatus();
 #endif
 
--- a/extensions/universalchardet/src/base/nsLatin1Prober.h
+++ b/extensions/universalchardet/src/base/nsLatin1Prober.h
@@ -40,24 +40,24 @@
 #define nsLatin1Prober_h__
 
 #include "nsCharSetProber.h"
 
 #define FREQ_CAT_NUM    4
 
 class nsLatin1Prober: public nsCharSetProber {
 public:
-  nsLatin1Prober(void){Reset();};
-  virtual ~nsLatin1Prober(void){};
+  nsLatin1Prober(void){Reset();}
+  virtual ~nsLatin1Prober(void){}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "windows-1252";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "windows-1252";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 #ifdef DEBUG_chardet
   virtual void  DumpStatus();
 #endif
 
 protected:
   
   nsProbingState mState;
--- a/extensions/universalchardet/src/base/nsMBCSGroupProber.h
+++ b/extensions/universalchardet/src/base/nsMBCSGroupProber.h
@@ -50,20 +50,20 @@
 #define NUM_OF_PROBERS    7
 
 class nsMBCSGroupProber: public nsCharSetProber {
 public:
   nsMBCSGroupProber();
   virtual ~nsMBCSGroupProber();
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
   const char* GetCharSetName();
-  nsProbingState GetState(void) {return mState;};
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 #ifdef DEBUG_chardet
   void  DumpStatus();
 #endif
 #ifdef DEBUG_jgmyers
   void GetDetectorState(nsUniversalDetector::DetectorState (&states)[nsUniversalDetector::NumDetectors], PRUint32 &offset);
 #endif
 
--- a/extensions/universalchardet/src/base/nsSBCSGroupProber.h
+++ b/extensions/universalchardet/src/base/nsSBCSGroupProber.h
@@ -44,20 +44,20 @@
 
 class nsCharSetProber;
 class nsSBCSGroupProber: public nsCharSetProber {
 public:
   nsSBCSGroupProber();
   virtual ~nsSBCSGroupProber();
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
   const char* GetCharSetName();
-  nsProbingState GetState(void) {return mState;};
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 #ifdef DEBUG_chardet
   void  DumpStatus();
 #endif
 
 protected:
   nsProbingState mState;
   nsCharSetProber* mProbers[NUM_OF_SBCS_PROBERS];
--- a/extensions/universalchardet/src/base/nsSBCharSetProber.h
+++ b/extensions/universalchardet/src/base/nsSBCharSetProber.h
@@ -63,28 +63,28 @@ class nsSingleByteCharSetProber : public
 public:
   nsSingleByteCharSetProber(SequenceModel *model) 
     :mModel(model), mReversed(PR_FALSE), mNameProber(0) { Reset(); }
   nsSingleByteCharSetProber(SequenceModel *model, PRBool reversed, nsCharSetProber* nameProber)
     :mModel(model), mReversed(reversed), mNameProber(nameProber) { Reset(); }
 
   virtual const char* GetCharSetName();
   virtual nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  virtual nsProbingState GetState(void) {return mState;};
+  virtual nsProbingState GetState(void) {return mState;}
   virtual void      Reset(void);
   virtual float     GetConfidence(void);
-  virtual void      SetOpion() {};
+  virtual void      SetOpion() {}
   
   // This feature is not implemented yet. any current language model
   // contain this parameter as PR_FALSE. No one is looking at this
   // parameter or calling this method.
   // Moreover, the nsSBCSGroupProber which calls the HandleData of this
   // prober has a hard-coded call to FilterWithoutEnglishLetters which gets rid
   // of the English letters.
-  PRBool KeepEnglishLetters() {return mModel->keepEnglishLetter;}; // (not implemented)
+  PRBool KeepEnglishLetters() {return mModel->keepEnglishLetter;} // (not implemented)
 
 #ifdef DEBUG_chardet
   virtual void  DumpStatus();
 #endif
 
 protected:
   nsProbingState mState;
   const SequenceModel *mModel;
--- a/extensions/universalchardet/src/base/nsSJISProber.h
+++ b/extensions/universalchardet/src/base/nsSJISProber.h
@@ -47,24 +47,24 @@
 #include "nsCodingStateMachine.h"
 #include "JpCntx.h"
 #include "CharDistribution.h"
 
 
 class nsSJISProber: public nsCharSetProber {
 public:
   nsSJISProber(void){mCodingSM = new nsCodingStateMachine(&SJISSMModel);
-                      Reset();};
-  virtual ~nsSJISProber(void){delete mCodingSM;};
+                      Reset();}
+  virtual ~nsSJISProber(void){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "Shift_JIS";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "Shift_JIS";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
 
   SJISContextAnalysis mContextAnalyser;
   SJISDistributionAnalysis mDistributionAnalyser;
 
--- a/extensions/universalchardet/src/base/nsUTF8Prober.h
+++ b/extensions/universalchardet/src/base/nsUTF8Prober.h
@@ -40,24 +40,24 @@
 
 #include "nsCharSetProber.h"
 #include "nsCodingStateMachine.h"
 
 class nsUTF8Prober: public nsCharSetProber {
 public:
   nsUTF8Prober(){mNumOfMBChar = 0; 
                 mCodingSM = new nsCodingStateMachine(&UTF8SMModel);
-                Reset(); };
-  virtual ~nsUTF8Prober(){delete mCodingSM;};
+                Reset(); }
+  virtual ~nsUTF8Prober(){delete mCodingSM;}
   nsProbingState HandleData(const char* aBuf, PRUint32 aLen);
-  const char* GetCharSetName() {return "UTF-8";};
-  nsProbingState GetState(void) {return mState;};
+  const char* GetCharSetName() {return "UTF-8";}
+  nsProbingState GetState(void) {return mState;}
   void      Reset(void);
   float     GetConfidence(void);
-  void      SetOpion() {};
+  void      SetOpion() {}
 
 protected:
   nsCodingStateMachine* mCodingSM;
   nsProbingState mState;
   PRUint32 mNumOfMBChar;
 };
 
 #endif /* nsUTF8Prober_h__ */
--- a/gfx/thebes/src/gfxFont.cpp
+++ b/gfx/thebes/src/gfxFont.cpp
@@ -339,17 +339,17 @@ gfxFontGroup::ForEachFont(const nsAStrin
 
 struct ResolveData {
     ResolveData(gfxFontGroup::FontCreationCallback aCallback,
                 nsACString& aGenericFamily,
                 void *aClosure) :
         mCallback(aCallback),
         mGenericFamily(aGenericFamily),
         mClosure(aClosure) {
-    };
+    }
     gfxFontGroup::FontCreationCallback mCallback;
     nsCString mGenericFamily;
     void *mClosure;
 };
 
 PRBool
 gfxFontGroup::ForEachFontInternal(const nsAString& aFamilies,
                                   const nsACString& aLangGroup,
--- a/intl/chardet/src/nsCyrillicDetector.h
+++ b/intl/chardet/src/nsCyrillicDetector.h
@@ -93,18 +93,18 @@ class nsCyrillicDetector
                       const PRUint8 ** aCyrillicClass, 
                       const char **aCharsets) {
       mItems = aItems;
       mCyrillicClass = aCyrillicClass;
       mCharsets = aCharsets;
       for(PRUintn i=0;i<mItems;i++)
         mProb[i] = mLastCls[i] =0;
       mDone = PR_FALSE;
-    };
-    virtual ~nsCyrillicDetector() {};
+    }
+    virtual ~nsCyrillicDetector() {}
     virtual void HandleData(const char* aBuf, PRUint32 aLen);
     virtual void   DataEnd();
   protected:
     virtual void Report(const char* aCharset) = 0;
     PRBool  mDone;
 
   private:
     PRUint8  mItems;
@@ -153,33 +153,33 @@ class nsCyrXPCOMStringDetector :
     nsCOMPtr<nsICharsetDetectionObserver> mObserver;
     const char* mResult;
 };
 
 class nsRUProbDetector : public nsCyrXPCOMDetector
 {
   public:
     nsRUProbDetector() 
-      : nsCyrXPCOMDetector(5, gCyrillicCls, gRussian) {};
+      : nsCyrXPCOMDetector(5, gCyrillicCls, gRussian) {}
 };
 
 class nsRUStringProbDetector : public nsCyrXPCOMStringDetector
 {
   public:
     nsRUStringProbDetector() 
-      : nsCyrXPCOMStringDetector(5, gCyrillicCls, gRussian) {};
+      : nsCyrXPCOMStringDetector(5, gCyrillicCls, gRussian) {}
 };
 
 class nsUKProbDetector : public nsCyrXPCOMDetector
 {
   public:
     nsUKProbDetector() 
-      : nsCyrXPCOMDetector(5, gCyrillicCls, gUkrainian) {};
+      : nsCyrXPCOMDetector(5, gCyrillicCls, gUkrainian) {}
 };
 
 class nsUKStringProbDetector : public nsCyrXPCOMStringDetector
 {
   public:
     nsUKStringProbDetector() 
-      : nsCyrXPCOMStringDetector(5, gCyrillicCls, gUkrainian) {};
+      : nsCyrXPCOMStringDetector(5, gCyrillicCls, gUkrainian) {}
 };
 
 #endif
--- a/intl/chardet/src/nsDebugDetector.h
+++ b/intl/chardet/src/nsDebugDetector.h
@@ -84,24 +84,24 @@ private:
   nsDebugDetectorSel mSel;
   nsICharsetDetectionObserver* mObserver;
   PRBool mStop;
 };
 
 class ns1stBlkDbgDetector : public nsDebugDetector
 {
 public:
-    ns1stBlkDbgDetector () : nsDebugDetector(k1stBlk) {} ;
+    ns1stBlkDbgDetector () : nsDebugDetector(k1stBlk) {}
 };
 
 class ns2ndBlkDbgDetector : public nsDebugDetector
 {
 public:
-  ns2ndBlkDbgDetector () : nsDebugDetector(k2ndBlk) {} ;
+  ns2ndBlkDbgDetector () : nsDebugDetector(k2ndBlk) {}
 };
 
 class nsLastBlkDbgDetector : public nsDebugDetector
 {
 public:
-  nsLastBlkDbgDetector () : nsDebugDetector(klastBlk) {} ;
+  nsLastBlkDbgDetector () : nsDebugDetector(klastBlk) {}
 };
 
 #endif // nsDebugDetector_h__
--- a/intl/chardet/src/nsDetectionAdaptor.h
+++ b/intl/chardet/src/nsDetectionAdaptor.h
@@ -71,17 +71,17 @@ class nsMyObserver : public nsICharsetDe
    NS_IMETHOD Init(nsIWebShellServices* aWebShellSvc, 
                    nsIDocument* aDocument,
                    nsIParser* aParser,
                    const char* aCharset,
                    const char* aCommand);
 
    // Methods to support nsICharsetDetectionObserver
    NS_IMETHOD Notify(const char* aCharset, nsDetectionConfident aConf);
-   void SetNotifyByReload(PRBool aByReload) { mNotifyByReload = aByReload; };
+   void SetNotifyByReload(PRBool aByReload) { mNotifyByReload = aByReload; }
  private:
      nsCOMPtr<nsIWebShellServices> mWebShellSvc;
      PRBool mNotifyByReload;
 
      //The adaptor is owned by parser as filter, and adaptor owns detector, 
      //which in turn owns observer. Parser also live within the lifespan of 
      //document. The ownership tree is like:
      //  document->parser->adaptor->detector->observer
@@ -114,18 +114,18 @@ class nsDetectionAdaptor :
                    const char* aCommand=nsnull);
   
    // Methode to suppor nsIParserFilter
    NS_IMETHOD RawBuffer(const char * buffer, PRUint32 * buffer_length) ;
    NS_IMETHOD Finish();
 
    // really don't care the following two, only because they are defined
    // in nsIParserFilter.h
-   NS_IMETHOD WillAddToken(CToken & token) { return NS_OK; };
-   NS_IMETHOD ProcessTokens( void ) {return NS_OK;};
+   NS_IMETHOD WillAddToken(CToken & token) { return NS_OK; }
+   NS_IMETHOD ProcessTokens( void ) {return NS_OK;}
 
   private:
      nsCOMPtr<nsICharsetDetector> mDetector;
      PRBool mDontFeedToDetector;
      nsCOMPtr<nsMyObserver> mObserver; 
 };
 
 #endif /* nsDetectionAdaptor_h__ */
--- a/intl/chardet/src/nsObserverBase.h
+++ b/intl/chardet/src/nsObserverBase.h
@@ -43,18 +43,18 @@
 //
 // Class declaration for the class 
 //
 //========================================================================== 
 class nsObserverBase {
 
 public:
 
-  nsObserverBase() {};
-  virtual ~nsObserverBase() {};
+  nsObserverBase() {}
+  virtual ~nsObserverBase() {}
 
   /*
    *   Subject call observer when the parser hit the tag
    *   @param aDocumentID- ID of the document
    *   @param aTag- the tag
    *   @param valueArray - array of value
    */
 protected:
--- a/intl/chardet/src/nsPSMDetectors.h
+++ b/intl/chardet/src/nsPSMDetectors.h
@@ -217,17 +217,17 @@ class nsEUCSampler {
       nsEUCTWVerifier
       nsBIG5Verifer 
 
  */
 //----------------------------------------------------------
 class nsPSMDetector {
 public :
    nsPSMDetector(PRUint8 aItems, nsVerifier* const * aVerifierSet, nsEUCStatistics* const * aStatisticsSet);
-   virtual ~nsPSMDetector() {};
+   virtual ~nsPSMDetector() {}
 
    virtual PRBool HandleData(const char* aBuf, PRUint32 aLen);
    virtual void   DataEnd();
  
 protected:
    virtual void Report(const char* charset) = 0;
 
    PRUint8 mItems;
@@ -287,89 +287,89 @@ protected:
 private:
   const char* mResult;
 };
 
 class nsJAPSMDetector : public nsXPCOMDetector
 {
 public:
   nsJAPSMDetector() 
-    : nsXPCOMDetector(JA_DETECTOR_NUM_VERIFIERS, gJaVerifierSet, nsnull) {};
+    : nsXPCOMDetector(JA_DETECTOR_NUM_VERIFIERS, gJaVerifierSet, nsnull) {}
 };
 
 class nsJAStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsJAStringPSMDetector() 
-    : nsXPCOMStringDetector(JA_DETECTOR_NUM_VERIFIERS - 3, gJaVerifierSet, nsnull) {};
+    : nsXPCOMStringDetector(JA_DETECTOR_NUM_VERIFIERS - 3, gJaVerifierSet, nsnull) {}
 };
 
 class nsKOPSMDetector : public nsXPCOMDetector
 {
 public:
   nsKOPSMDetector() 
-    : nsXPCOMDetector(KO_DETECTOR_NUM_VERIFIERS, gKoVerifierSet, nsnull){};
+    : nsXPCOMDetector(KO_DETECTOR_NUM_VERIFIERS, gKoVerifierSet, nsnull){}
 };
 
 class nsKOStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsKOStringPSMDetector() 
-    : nsXPCOMStringDetector(KO_DETECTOR_NUM_VERIFIERS - 3, gKoVerifierSet, nsnull) {};
+    : nsXPCOMStringDetector(KO_DETECTOR_NUM_VERIFIERS - 3, gKoVerifierSet, nsnull) {}
 };
 
 class nsZHTWPSMDetector : public nsXPCOMDetector
 {
 public:
   nsZHTWPSMDetector() 
-    : nsXPCOMDetector(ZHTW_DETECTOR_NUM_VERIFIERS, gZhTwVerifierSet, gZhTwStatisticsSet) {};
+    : nsXPCOMDetector(ZHTW_DETECTOR_NUM_VERIFIERS, gZhTwVerifierSet, gZhTwStatisticsSet) {}
 };
 
 class nsZHTWStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsZHTWStringPSMDetector() 
-    : nsXPCOMStringDetector(ZHTW_DETECTOR_NUM_VERIFIERS - 3, gZhTwVerifierSet, gZhTwStatisticsSet) {};
+    : nsXPCOMStringDetector(ZHTW_DETECTOR_NUM_VERIFIERS - 3, gZhTwVerifierSet, gZhTwStatisticsSet) {}
 };
 
 class nsZHCNPSMDetector : public nsXPCOMDetector
 {
 public:
   nsZHCNPSMDetector() 
-    : nsXPCOMDetector(ZHCN_DETECTOR_NUM_VERIFIERS, gZhCnVerifierSet, nsnull) {};
+    : nsXPCOMDetector(ZHCN_DETECTOR_NUM_VERIFIERS, gZhCnVerifierSet, nsnull) {}
 };
 
 class nsZHCNStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsZHCNStringPSMDetector() 
-    : nsXPCOMStringDetector(ZHCN_DETECTOR_NUM_VERIFIERS - 3, gZhCnVerifierSet, nsnull) {};
+    : nsXPCOMStringDetector(ZHCN_DETECTOR_NUM_VERIFIERS - 3, gZhCnVerifierSet, nsnull) {}
 };
 
 class nsZHPSMDetector : public nsXPCOMDetector
 {
 public:
   nsZHPSMDetector() 
-    : nsXPCOMDetector(ZH_DETECTOR_NUM_VERIFIERS, gZhVerifierSet, gZhStatisticsSet) {};
+    : nsXPCOMDetector(ZH_DETECTOR_NUM_VERIFIERS, gZhVerifierSet, gZhStatisticsSet) {}
 };
 
 class nsZHStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsZHStringPSMDetector() 
-    : nsXPCOMStringDetector(ZH_DETECTOR_NUM_VERIFIERS - 3, gZhVerifierSet, gZhStatisticsSet) {};
+    : nsXPCOMStringDetector(ZH_DETECTOR_NUM_VERIFIERS - 3, gZhVerifierSet, gZhStatisticsSet) {}
 };
 
 class nsCJKPSMDetector : public nsXPCOMDetector
 {
 public:
   nsCJKPSMDetector() 
-    : nsXPCOMDetector(CJK_DETECTOR_NUM_VERIFIERS, gCJKVerifierSet, gCJKStatisticsSet) {};
+    : nsXPCOMDetector(CJK_DETECTOR_NUM_VERIFIERS, gCJKVerifierSet, gCJKStatisticsSet) {}
 };
 
 class nsCJKStringPSMDetector : public nsXPCOMStringDetector
 {
 public:
   nsCJKStringPSMDetector() 
-    : nsXPCOMStringDetector(CJK_DETECTOR_NUM_VERIFIERS - 3, gCJKVerifierSet, gCJKStatisticsSet) {};
+    : nsXPCOMStringDetector(CJK_DETECTOR_NUM_VERIFIERS - 3, gCJKVerifierSet, gCJKStatisticsSet) {}
 };
 
 #endif // nsPSMDetectors_h__
--- a/intl/locale/src/nsCollation.h
+++ b/intl/locale/src/nsCollation.h
@@ -50,17 +50,17 @@
 // 
 class nsCollationFactory: public nsICollationFactory {
 
 public: 
   NS_DECL_ISUPPORTS 
 
   NS_IMETHOD CreateCollation(nsILocale* locale, nsICollation** instancePtr);
 
-  nsCollationFactory() {};
+  nsCollationFactory() {}
 };
 
 
 struct nsCollation {
 
 public: 
 
   nsCollation();
--- a/intl/uconv/src/nsUTF8ConverterService.h
+++ b/intl/uconv/src/nsUTF8ConverterService.h
@@ -41,14 +41,14 @@
 
 //==============================================================
 
 class nsUTF8ConverterService: public nsIUTF8ConverterService {
   NS_DECL_ISUPPORTS
   NS_DECL_NSIUTF8CONVERTERSERVICE
 
 public:
-  nsUTF8ConverterService() {};
-  virtual ~nsUTF8ConverterService() {};
+  nsUTF8ConverterService() {}
+  virtual ~nsUTF8ConverterService() {}
 };
 
 #endif // nsUTF8ConverterService_h__
 
--- a/intl/uconv/src/nsUnicodeToUTF8.h
+++ b/intl/uconv/src/nsUnicodeToUTF8.h
@@ -61,33 +61,33 @@ class nsUnicodeToUTF8 : public nsIUnicod
 {
   NS_DECL_ISUPPORTS
 
 public:
 
   /**
    * Class constructor.
    */
-  nsUnicodeToUTF8() {mHighSurrogate = 0;};
+  nsUnicodeToUTF8() {mHighSurrogate = 0;}
 
   NS_IMETHOD FillInfo(PRUint32* aInfo);
 
   NS_IMETHOD Convert(const PRUnichar * aSrc, 
                      PRInt32 * aSrcLength, 
                      char * aDest, 
                      PRInt32 * aDestLength);
 
   NS_IMETHOD Finish(char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength, 
       PRInt32 * aDestLength);
 
   NS_IMETHOD Reset() {mHighSurrogate = 0; return NS_OK;}
 
   NS_IMETHOD SetOutputErrorBehavior(PRInt32 aBehavior, 
-    nsIUnicharEncoder * aEncoder, PRUnichar aChar) {return NS_OK;};
+    nsIUnicharEncoder * aEncoder, PRUnichar aChar) {return NS_OK;}
 
 protected:
   PRUnichar mHighSurrogate;
 
 };
 
 #endif /* nsUnicodeToUTF8_h___ */
--- a/intl/uconv/ucvcn/nsCP936ToUnicode.h
+++ b/intl/uconv/ucvcn/nsCP936ToUnicode.h
@@ -51,14 +51,14 @@
  */
 class nsCP936ToUnicode : public nsGBKToUnicode
 {
 public:
 		  
   /**
    * Class constructor.
    */
-  nsCP936ToUnicode(){};
+  nsCP936ToUnicode(){}
 
 };
 
 #endif /* nsCP936ToUnicode_h___ */
 
--- a/intl/uconv/ucvcn/nsGB2312ToUnicodeV2.h
+++ b/intl/uconv/ucvcn/nsGB2312ToUnicodeV2.h
@@ -52,13 +52,13 @@
  */
 class nsGB2312ToUnicodeV2 : public nsGB18030ToUnicode
 {
 public:
 		  
   /**
    * Class constructor.
    */
-  nsGB2312ToUnicodeV2(){};
+  nsGB2312ToUnicodeV2(){}
 };
   
 
 #endif /* nsGB2312ToUnicodeV2_h___ */
--- a/intl/uconv/ucvcn/nsGBKConvUtil.h
+++ b/intl/uconv/ucvcn/nsGBKConvUtil.h
@@ -35,18 +35,18 @@
  *
  * ***** END LICENSE BLOCK ***** */
 #ifndef nsGBKConvUtil_h__
 #define nsGBKConvUtil_h__
 #include "prtypes.h"
 #include "nscore.h"
 class nsGBKConvUtil {
 public:
-  nsGBKConvUtil() {  };
-  ~nsGBKConvUtil() { };
+  nsGBKConvUtil() {  }
+  ~nsGBKConvUtil() { }
   void InitToGBKTable();
   PRUnichar GBKCharToUnicode(char aByte1, char aByte2);
   PRBool UnicodeToGBKChar(PRUnichar aChar, PRBool aToGL, 
                            char* aOutByte1, char* aOutByte2);
   void FillInfo(PRUint32 *aInfo, PRUint8 aStart1, PRUint8 aEnd1,
                                  PRUint8 aStart2, PRUint8 aEnd2);
   void FillGB2312Info(PRUint32 *aInfo);
 };
--- a/intl/uconv/ucvcn/nsGBKToUnicode.cpp
+++ b/intl/uconv/ucvcn/nsGBKToUnicode.cpp
@@ -50,17 +50,17 @@
 //------------------------------------------------------------
 // nsGBKUnique2BytesToUnicode
 //------------------------------------------------------------
 class nsGBKUnique2BytesToUnicode : public nsTableDecoderSupport 
 {
 public:
   nsGBKUnique2BytesToUnicode();
   virtual ~nsGBKUnique2BytesToUnicode() 
-    { };
+    { }
 protected:
 };
 
 static const PRUint16 g_utGBKUnique2Bytes[] = {
 #include "gbkuniq2b.ut"
 };
 nsGBKUnique2BytesToUnicode::nsGBKUnique2BytesToUnicode() 
   : nsTableDecoderSupport(u2BytesCharset, nsnull,
@@ -71,17 +71,17 @@ nsGBKUnique2BytesToUnicode::nsGBKUnique2
 //------------------------------------------------------------
 // nsGB18030Unique2BytesToUnicode
 //------------------------------------------------------------
 class nsGB18030Unique2BytesToUnicode : public nsTableDecoderSupport 
 {
 public:
   nsGB18030Unique2BytesToUnicode();
   virtual ~nsGB18030Unique2BytesToUnicode() 
-    { };
+    { }
 protected:
 };
 
 static const PRUint16 g_utGB18030Unique2Bytes[] = {
 #include "gb18030uniq2b.ut"
 };
 nsGB18030Unique2BytesToUnicode::nsGB18030Unique2BytesToUnicode() 
   : nsTableDecoderSupport(u2BytesCharset, nsnull,
@@ -92,17 +92,17 @@ nsGB18030Unique2BytesToUnicode::nsGB1803
 //------------------------------------------------------------
 // nsGB18030Unique4BytesToUnicode
 //------------------------------------------------------------
 class nsGB18030Unique4BytesToUnicode : public nsTableDecoderSupport 
 {
 public:
   nsGB18030Unique4BytesToUnicode();
   virtual ~nsGB18030Unique4BytesToUnicode() 
-    { };
+    { }
 protected:
 };
 
 static const PRUint16 g_utGB18030Unique4Bytes[] = {
 #include "gb180304bytes.ut"
 };
 nsGB18030Unique4BytesToUnicode::nsGB18030Unique4BytesToUnicode() 
   : nsTableDecoderSupport(u4BytesGB18030Charset, nsnull,
--- a/intl/uconv/ucvcn/nsGBKToUnicode.h
+++ b/intl/uconv/ucvcn/nsGBKToUnicode.h
@@ -58,17 +58,17 @@ public:
 		  
   /**
    * Class constructor.
    */
   nsGBKToUnicode() : nsBufferDecoderSupport(1)
   {
     mExtensionDecoder = nsnull;
     m4BytesDecoder = nsnull;
-  };
+  }
 
 protected:
 
   //--------------------------------------------------------------------
   // Subclassing of nsDecoderSupport class [declaration]
   NS_IMETHOD ConvertNoBuff(const char* aSrc, PRInt32 * aSrcLength, PRUnichar *aDest, PRInt32 * aDestLength);
 
 protected:
@@ -83,18 +83,18 @@ protected:
   virtual PRBool DecodeToSurrogate(const char* aSrc, PRUnichar* aDest);
 
 };
 
 
 class nsGB18030ToUnicode : public nsGBKToUnicode
 {
 public:
-  nsGB18030ToUnicode() {};
-  virtual ~nsGB18030ToUnicode() {};
+  nsGB18030ToUnicode() {}
+  virtual ~nsGB18030ToUnicode() {}
 protected:
   virtual void CreateExtensionDecoder();
   virtual void Create4BytesDecoder();
   virtual PRBool DecodeToSurrogate(const char* aSrc, PRUnichar* aDest);
 };
 
 #endif /* nsGBK2312ToUnicode_h___ */
 
--- a/intl/uconv/ucvcn/nsISO2022CNToUnicode.h
+++ b/intl/uconv/ucvcn/nsISO2022CNToUnicode.h
@@ -51,37 +51,37 @@
 #define SS2         0x4e
 #define SS3         0x4f
 
 class nsISO2022CNToUnicode : public nsBasicDecoderSupport
 {
 public:
   nsISO2022CNToUnicode() : 
         mState(eState_ASCII), 
-        mPlaneID(0) { };
+        mPlaneID(0) { }
 
-  virtual ~nsISO2022CNToUnicode() {};
+  virtual ~nsISO2022CNToUnicode() {}
 
   NS_IMETHOD Convert(const char *aSrc, PRInt32 * aSrcLength,
      PRUnichar * aDest, PRInt32 * aDestLength) ;
 
   NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
      PRInt32 * aDestLength)
   {
     *aDestLength = aSrcLength;
     return NS_OK;
-  };
+  }
 
   NS_IMETHOD Reset()
   {
     mState = eState_ASCII;
     mPlaneID = 0;
 
     return NS_OK;
-  };
+  }
 
 private:
   // State Machine ID
   enum {
     eState_ASCII,
     eState_ESC,                           // ESC
     eState_ESC_24,                        // ESC $
 
--- a/intl/uconv/ucvcn/nsUnicodeToCP936.h
+++ b/intl/uconv/ucvcn/nsUnicodeToCP936.h
@@ -51,14 +51,14 @@
  */
 class nsUnicodeToCP936 : public nsUnicodeToGBK
 {
 public:
 
   /**
    * Class constructor.
    */
-  nsUnicodeToCP936() {};
+  nsUnicodeToCP936() {}
 
 
 };
 
 #endif /* nsUnicodeToCP936_h___ */
--- a/intl/uconv/ucvcn/nsUnicodeToGB2312GL.h
+++ b/intl/uconv/ucvcn/nsUnicodeToGB2312GL.h
@@ -68,17 +68,17 @@ protected:
 
   //--------------------------------------------------------------------
   // Subclassing of nsEncoderSupport class [declaration]
 
   NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength, 
                                 char * aDest, PRInt32 * aDestLength)
   {
     return NS_OK;
-  };  // just make it not abstract;
+  }  // just make it not abstract;
 
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 protected:
   nsGBKConvUtil mUtil;
 
 };
 
 
--- a/intl/uconv/ucvcn/nsUnicodeToGB2312V2.h
+++ b/intl/uconv/ucvcn/nsUnicodeToGB2312V2.h
@@ -68,16 +68,16 @@ protected:
 
   //--------------------------------------------------------------------
   // Subclassing of nsEncoderSupport class [declaration]
 
   NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength, 
                                 char * aDest, PRInt32 * aDestLength)
   {
     return NS_OK;
-  };  // just make it not abstract;
+  }   // just make it not abstract;
 
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 protected:
   nsGBKConvUtil mUtil;
 };
 
 #endif /* nsUnicodeToGB2312V2_h___ */
--- a/intl/uconv/ucvcn/nsUnicodeToGBK.cpp
+++ b/intl/uconv/ucvcn/nsUnicodeToGBK.cpp
@@ -63,47 +63,47 @@
 static const PRUint16 g_uf_gb18030_2bytes[] = {
 #include "gb18030uniq2b.uf"
 };
 class nsUnicodeToGB18030Uniq2Bytes : public nsTableEncoderSupport
 {
 public: 
   nsUnicodeToGB18030Uniq2Bytes() 
     : nsTableEncoderSupport(u2BytesCharset,
-                            (uMappingTable*) &g_uf_gb18030_2bytes, 2) {};
+                            (uMappingTable*) &g_uf_gb18030_2bytes, 2) {}
 protected: 
 };
 //-----------------------------------------------------------------------
 //  Private class used by nsUnicodeToGB18030
 //    nsUnicodeTo4BytesGB18030
 //-----------------------------------------------------------------------
 static const PRUint16 g_uf_gb18030_4bytes[] = {
 #include "gb180304bytes.uf"
 };
 class nsUnicodeTo4BytesGB18030 : public nsTableEncoderSupport
 {
 public: 
   nsUnicodeTo4BytesGB18030()
     : nsTableEncoderSupport(u4BytesGB18030Charset, 
-                             (uMappingTable*) &g_uf_gb18030_4bytes, 4) {};
+                             (uMappingTable*) &g_uf_gb18030_4bytes, 4) {}
 protected: 
 };
 //-----------------------------------------------------------------------
 //  Private class used by nsUnicodeToGBK
 //    nsUnicodeToGBKUniq2Bytes
 //-----------------------------------------------------------------------
 static const PRUint16 g_uf_gbk_2bytes[] = {
 #include "gbkuniq2b.uf"
 };
 class nsUnicodeToGBKUniq2Bytes : public nsTableEncoderSupport
 {
 public: 
   nsUnicodeToGBKUniq2Bytes()
     : nsTableEncoderSupport(u2BytesCharset, 
-                             (uMappingTable*) &g_uf_gbk_2bytes, 2) {};
+                             (uMappingTable*) &g_uf_gbk_2bytes, 2) {}
 protected: 
 };
 //-----------------------------------------------------------------------
 //  nsUnicodeToGB18030
 //-----------------------------------------------------------------------
 void nsUnicodeToGB18030::CreateExtensionEncoder()
 {
   mExtensionEncoder = new nsUnicodeToGB18030Uniq2Bytes();
--- a/intl/uconv/ucvcn/nsUnicodeToGBK.h
+++ b/intl/uconv/ucvcn/nsUnicodeToGBK.h
@@ -56,32 +56,32 @@
 class nsUnicodeToGBK: public nsEncoderSupport
 {
 public:
 
   /**
    * Class constructor.
    */
   nsUnicodeToGBK(PRUint32 aMaxLengthFactor = 2);
-  virtual ~nsUnicodeToGBK() {};
+  virtual ~nsUnicodeToGBK() {}
 
 protected:
 
   //--------------------------------------------------------------------
   // Subclassing of nsEncoderSupport class [declaration]
   NS_IMETHOD ConvertNoBuff(const PRUnichar * aSrc, 
                             PRInt32 * aSrcLength, 
                             char * aDest, 
                             PRInt32 * aDestLength);
 
   NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength, 
                                 char * aDest, PRInt32 * aDestLength)
   {
     return NS_OK;
-  };  // just make it not abstract;
+  }  // just make it not abstract;
 
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 
   virtual void CreateExtensionEncoder();
   virtual void Create4BytesEncoder();
 
   nsCOMPtr<nsIUnicodeEncoder> mExtensionEncoder;
   nsCOMPtr<nsIUnicodeEncoder> m4BytesEncoder;
@@ -91,40 +91,40 @@ protected:
   PRBool TryExtensionEncoder(PRUnichar aChar, char* aDest, PRInt32* aOutLen);
   PRBool Try4BytesEncoder(PRUnichar aChar, char* aDest, PRInt32* aOutLen);
   virtual PRBool EncodeSurrogate(PRUnichar aSurrogateHigh, PRUnichar aSurrogateLow, char* aDest);
 };
 
 class nsUnicodeToGB18030: public nsUnicodeToGBK
 {
 public:
-  nsUnicodeToGB18030() : nsUnicodeToGBK(4) {};
-  virtual ~nsUnicodeToGB18030() {};
+  nsUnicodeToGB18030() : nsUnicodeToGBK(4) {}
+  virtual ~nsUnicodeToGB18030() {}
 protected:
   virtual void CreateExtensionEncoder();
   virtual void Create4BytesEncoder();
   virtual PRBool EncodeSurrogate(PRUnichar aSurrogateHigh, PRUnichar aSurrogateLow, char* aDest);
 };
 
 #ifdef MOZ_EXTRA_X11CONVERTERS
 class nsUnicodeToGB18030Font0: public nsUnicodeToGB18030
 {
 public:
-  nsUnicodeToGB18030Font0() {};
-  virtual ~nsUnicodeToGB18030Font0() {};
+  nsUnicodeToGB18030Font0() {}
+  virtual ~nsUnicodeToGB18030Font0() {}
 protected:
   virtual void Create4BytesEncoder();
   NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength, 
       PRInt32 * aDestLength);
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 };
 class nsUnicodeToGB18030Font1 : public nsTableEncoderSupport
 {
 public: 
   nsUnicodeToGB18030Font1();
-  virtual ~nsUnicodeToGB18030Font1() {};
+  virtual ~nsUnicodeToGB18030Font1() {}
 protected: 
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 };
 #endif 
 
 #endif /* nsUnicodeToGBK_h___ */
 
--- a/intl/uconv/ucvcn/nsUnicodeToHZ.h
+++ b/intl/uconv/ucvcn/nsUnicodeToHZ.h
@@ -72,17 +72,17 @@ protected:
   NS_IMETHOD FinishNoBuff(char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD FillInfo(PRUint32 *aInfo);
 
   NS_IMETHOD ConvertNoBuffNoErr(const PRUnichar * aSrc, PRInt32 * aSrcLength, 
                                 char * aDest, PRInt32 * aDestLength)
   {
     return NS_OK;
-  };  // just make it not abstract;
+  }  // just make it not abstract;
 
   PRUint16 mHZState;
 protected:
   nsGBKConvUtil mUtil;
 
 
 };
 
--- a/intl/uconv/ucvja/nsJapaneseToUnicode.h
+++ b/intl/uconv/ucvja/nsJapaneseToUnicode.h
@@ -53,66 +53,66 @@ protected:
 class nsShiftJISToUnicode : public nsJapaneseToUnicode
 {
 public:
 
  nsShiftJISToUnicode() 
      { 
          mState=0; mData=0; 
          setMapMode();
-     };
- virtual ~nsShiftJISToUnicode() {};
+     }
+ virtual ~nsShiftJISToUnicode() {}
 
  NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
      PRUnichar * aDest, PRInt32 * aDestLength) ;
  NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
      PRInt32 * aDestLength) 
      {
         *aDestLength = aSrcLength;
         return NS_OK;
-     };
+     }
  NS_IMETHOD Reset()
      {
         mState = 0;
         setMapMode();
         return NS_OK;
-     };
+     }
 
 private:
 
 private:
  PRInt32  mState;
  PRInt32 mData;
 };
 
 class nsEUCJPToUnicodeV2 : public nsJapaneseToUnicode
 {
 public:
 
  nsEUCJPToUnicodeV2() 
      { 
           mState=0; mData=0; 
           setMapMode();
-     };
- virtual ~nsEUCJPToUnicodeV2() {};
+     }
+ virtual ~nsEUCJPToUnicodeV2() {}
 
  NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
      PRUnichar * aDest, PRInt32 * aDestLength) ;
  NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
      PRInt32 * aDestLength) 
      {
         *aDestLength = aSrcLength;
         return NS_OK;
-     };
+     }
  NS_IMETHOD Reset()
      {
         mState = 0;
         setMapMode();
         return NS_OK;
-     };
+     }
 
 private:
  PRInt32  mState;
  PRInt32 mData;
 };
  
 class nsISO2022JPToUnicodeV2 : public nsJapaneseToUnicode
 {
@@ -123,39 +123,39 @@ public:
         mState = mState_ASCII;
         mLastLegalState = mState_ASCII;
         mData = 0;
         G2charset = G2_unknown;
         mGB2312Decoder = nsnull;
         mEUCKRDecoder = nsnull;
         mISO88597Decoder = nsnull;
         setMapMode();
-     };
+     }
  virtual ~nsISO2022JPToUnicodeV2()
      {
         NS_IF_RELEASE(mGB2312Decoder);
         NS_IF_RELEASE(mEUCKRDecoder);
         NS_IF_RELEASE(mISO88597Decoder);
-     };
+     }
 
  NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
      PRUnichar * aDest, PRInt32 * aDestLength) ;
  NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
      PRInt32 * aDestLength) 
      {
         *aDestLength = aSrcLength;
         return NS_OK;
-     };
+     }
  NS_IMETHOD Reset()
      {
         mState = mState_ASCII;
         mLastLegalState = mState_ASCII;
         setMapMode();
         return NS_OK;
-     };
+     }
 
 private:
  enum {
    mState_ASCII,
    mState_ESC,
    mState_ESC_28,
    mState_ESC_24,
    mState_ESC_24_28,
--- a/intl/uconv/ucvko/nsISO2022KRToUnicode.h
+++ b/intl/uconv/ucvko/nsISO2022KRToUnicode.h
@@ -45,39 +45,39 @@ class nsISO2022KRToUnicode : public nsBa
 {
 public:
   nsISO2022KRToUnicode()
   { 
     mState = mState_ASCII;
     mLastLegalState = mState_ASCII;
     mData = 0;
     mEUCKRDecoder = nsnull;
-  };
+  }
 
   virtual ~nsISO2022KRToUnicode()
   {
     NS_IF_RELEASE(mEUCKRDecoder);
-  };
+  }
 
   NS_IMETHOD Convert(const char * aSrc, PRInt32 * aSrcLength,
      PRUnichar * aDest, PRInt32 * aDestLength) ;
   
   NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength,
      PRInt32 * aDestLength) 
   {
     *aDestLength = aSrcLength;
     return NS_OK;
-  };
+  }
 
   NS_IMETHOD Reset()
   {
     mState = mState_ASCII;
     mLastLegalState = mState_ASCII;
     return NS_OK;
-  };
+  }
 
 private:
   enum {
     mState_ASCII,
     mState_ESC,
     mState_ESC_24,
     mState_ESC_24_29,
     mState_KSX1001_1992,
--- a/intl/uconv/ucvlatin/nsUCS2BEToUnicode.h
+++ b/intl/uconv/ucvlatin/nsUCS2BEToUnicode.h
@@ -41,17 +41,17 @@
 #include "nsISupports.h"
 #include "nsUCSupport.h"
 
 // internal base class
 class nsUTF16ToUnicodeBase : public nsBasicDecoderSupport
 {
 protected:
   // ctor accessible only by child classes
-  nsUTF16ToUnicodeBase() { Reset();};
+  nsUTF16ToUnicodeBase() { Reset();}
 
 public: 
   //--------------------------------------------------------------------
   // Subclassing of nsDecoderSupport class [declaration]
 
   NS_IMETHOD GetMaxLength(const char * aSrc, PRInt32 aSrcLength, 
       PRInt32 * aDestLength);
   NS_IMETHOD Reset();
--- a/intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic16.h
+++ b/intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic16.h
@@ -44,18 +44,18 @@
 class nsUnicodeToLangBoxArabic16 : public nsBasicEncoder
 {
 
 public:
 
   /**
    * Class constructor.
    */
-  nsUnicodeToLangBoxArabic16() {};
-  virtual ~nsUnicodeToLangBoxArabic16() {};
+  nsUnicodeToLangBoxArabic16() {}
+  virtual ~nsUnicodeToLangBoxArabic16() {}
 
   NS_IMETHOD Convert(
       const PRUnichar * aSrc, PRInt32 * aSrcLength,
       char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD Finish(
       char * aDest, PRInt32 * aDestLength);
 
--- a/intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic8.h
+++ b/intl/uconv/ucvlatin/nsUnicodeToLangBoxArabic8.h
@@ -43,18 +43,18 @@
 class nsUnicodeToLangBoxArabic8 : public nsBasicEncoder
 {
 
 public:
 
   /**
    * Class constructor.
    */
-  nsUnicodeToLangBoxArabic8() {};
-  virtual ~nsUnicodeToLangBoxArabic8() {};
+  nsUnicodeToLangBoxArabic8() {}
+  virtual ~nsUnicodeToLangBoxArabic8() {}
 
   NS_IMETHOD Convert(
       const PRUnichar * aSrc, PRInt32 * aSrcLength,
       char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD Finish(
       char * aDest, PRInt32 * aDestLength);
 
--- a/intl/uconv/ucvlatin/nsUnicodeToTSCII.h
+++ b/intl/uconv/ucvlatin/nsUnicodeToTSCII.h
@@ -50,18 +50,18 @@
 // Class nsUnicodeToTSCII [declaration]
 
 class nsUnicodeToTSCII : public nsIUnicodeEncoder, public nsICharRepresentable
 {
 
 NS_DECL_ISUPPORTS
 
 public:
-  nsUnicodeToTSCII() { mBuffer = 0; };
-  virtual ~nsUnicodeToTSCII() {};
+  nsUnicodeToTSCII() { mBuffer = 0; }
+  virtual ~nsUnicodeToTSCII() {}
 
   NS_IMETHOD Convert(const PRUnichar * aSrc, PRInt32 * aSrcLength,
                      char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD Finish(char * aDest, PRInt32 * aDestLength);
 
   NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength,
                           PRInt32 * aDestLength);
@@ -85,18 +85,18 @@ private:
 //----------------------------------------------------------------------
 // Class nsUnicodeToTamilTTF [declaration]
 
 class nsUnicodeToTamilTTF : public nsUnicodeToTSCII
 {
   NS_DECL_ISUPPORTS_INHERITED
 
 public:
-  nsUnicodeToTamilTTF() : nsUnicodeToTSCII() {};
-  virtual ~nsUnicodeToTamilTTF() {};
+  nsUnicodeToTamilTTF() : nsUnicodeToTSCII() {}
+  virtual ~nsUnicodeToTamilTTF() {}
 
   NS_IMETHOD Convert      (const PRUnichar * aSrc, PRInt32 * aSrcLength,
                            char * aDest, PRInt32 * aDestLength);
   NS_IMETHOD GetMaxLength (const PRUnichar * aSrc, PRInt32  aSrcLength,
                            PRInt32 * aDestLength);
 
   NS_IMETHOD SetOutputErrorBehavior (PRInt32 aBehavior, 
                                      nsIUnicharEncoder *aEncoder, 
--- a/intl/uconv/ucvlatin/nsUnicodeToUCS2BE.h
+++ b/intl/uconv/ucvlatin/nsUnicodeToUCS2BE.h
@@ -38,17 +38,17 @@
 #ifndef nsUnicodeToUCS2BE_h___
 #define nsUnicodeToUCS2BE_h___
 
 #include "nsUCSupport.h"
 
 class nsUnicodeToUTF16BE: public nsBasicEncoder
 {
 public:
-  nsUnicodeToUTF16BE() { mBOM = 0;};
+  nsUnicodeToUTF16BE() { mBOM = 0;}
 
   //--------------------------------------------------------------------
   // Interface nsIUnicodeEncoder [declaration]
 
   NS_IMETHOD Convert(const PRUnichar * aSrc, PRInt32 * aSrcLength, 
       char * aDest, PRInt32 * aDestLength);
   NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength, 
       PRInt32 * aDestLength);
@@ -64,29 +64,29 @@ public:
 protected:
   PRUnichar mBOM;
   NS_IMETHOD CopyData(char* aDest, const PRUnichar* aSrc, PRInt32 aLen  );
 };
 
 class nsUnicodeToUTF16LE: public nsUnicodeToUTF16BE
 {
 public:
-  nsUnicodeToUTF16LE() { mBOM = 0;};
+  nsUnicodeToUTF16LE() { mBOM = 0;}
 
 protected:
   NS_IMETHOD CopyData(char* aDest, const PRUnichar* aSrc, PRInt32 aLen  );
 };
 
 // XXX In theory, we have to check the endianness at run-time because some
 // modern RISC processors can be run at both LE and BE. 
 #ifdef IS_LITTLE_ENDIAN
 class nsUnicodeToUTF16: public nsUnicodeToUTF16LE
 #elif defined(IS_BIG_ENDIAN)
 class nsUnicodeToUTF16: public nsUnicodeToUTF16BE
 #else
 #error "Unknown endianness"
 #endif
 {
 public:
-  nsUnicodeToUTF16() { mBOM = 0xFEFF;};
+  nsUnicodeToUTF16() { mBOM = 0xFEFF;}
 };
 
 #endif /* nsUnicodeToUCS2BE_h___ */
--- a/intl/uconv/ucvlatin/nsUnicodeToUTF32.h
+++ b/intl/uconv/ucvlatin/nsUnicodeToUTF32.h
@@ -55,34 +55,34 @@ class nsUnicodeToUTF32 : public nsIUnico
 {
    NS_DECL_ISUPPORTS
 
 public:
 
  /**
    * Class constructor.
    */
-  nsUnicodeToUTF32() {mHighSurrogate = 0;};
-  virtual ~nsUnicodeToUTF32() {};
+  nsUnicodeToUTF32() {mHighSurrogate = 0;}
+  virtual ~nsUnicodeToUTF32() {}
 
 protected:
   PRUnichar  mHighSurrogate;
 
   NS_IMETHOD GetMaxLength(const PRUnichar * aSrc, PRInt32 aSrcLength, 
                           PRInt32 * aDestLength);
 
   //--------------------------------------------------------------------
   // Subclassing of nsIUnicodeEncoder class [declaration]
 
-  NS_IMETHOD Reset() {mHighSurrogate = 0; return NS_OK;};
+  NS_IMETHOD Reset() {mHighSurrogate = 0; return NS_OK;}
   NS_IMETHOD FillInfo(PRUint32* aInfo);
   NS_IMETHOD SetOutputErrorBehavior(PRInt32 aBehavior, 
                                     nsIUnicharEncoder * aEncoder, 
                                     PRUnichar aChar) 
-                                    {return NS_OK;};
+                                    {return NS_OK;}
 
 };
 
 //----------------------------------------------------------------------
 // Class nsUnicodeToUTF32BE [declaration]  
 
 /**
  * A character set converter from Unicode to UTF32BE.
--- a/intl/unicharutil/src/nsCaseConversionImp2.h
+++ b/intl/unicharutil/src/nsCaseConversionImp2.h
@@ -42,17 +42,17 @@
 #include "nsISupports.h"
 
 #include "nsICaseConversion.h"
 
 class nsCaseConversionImp2 : public nsICaseConversion { 
   NS_DECL_ISUPPORTS 
 
 public:
-  virtual ~nsCaseConversionImp2() { };
+  virtual ~nsCaseConversionImp2() { }
 
   static nsCaseConversionImp2* GetInstance();
 
   NS_IMETHOD ToUpper(PRUnichar aChar, PRUnichar* aReturn);
 
   NS_IMETHOD ToLower(PRUnichar aChar, PRUnichar* aReturn);
 
   NS_IMETHOD ToTitle(PRUnichar aChar, PRUnichar* aReturn);
--- a/intl/unicharutil/util/nsCompressedCharMap.h
+++ b/intl/unicharutil/util/nsCompressedCharMap.h
@@ -105,17 +105,17 @@ MapToCCMapExt(PRUint32* aBmpPlaneMap, PR
 
 class nsCompressedCharMap {
 public:
   nsCompressedCharMap();
   ~nsCompressedCharMap();
 
   PRUint16* NewCCMap();
   PRUint16* FillCCMap(PRUint16* aCCMap);
-  PRUint16  GetSize() {return mUsedLen;};
+  PRUint16  GetSize() {return mUsedLen;}
   void      SetChar(PRUint32);
   void      SetChars(PRUint16*);
   void      SetChars(PRUint16, ALU_TYPE*);
   void      SetChars(PRUint32*);
   void      Extend() {mExtended = PR_TRUE;} // enable surrogate area
 
 protected:
   union {
--- a/js/src/liveconnect/nsCLiveconnect.cpp
+++ b/js/src/liveconnect/nsCLiveconnect.cpp
@@ -92,17 +92,17 @@ PR_END_EXTERN_C
 class AutoPushJSContext
 {
 public:
     AutoPushJSContext(nsISupports* aSecuritySupports,
                       JSContext *cx);
 
     ~AutoPushJSContext();
 
-    nsresult ResultOfPush() { return mPushResult; };
+    nsresult ResultOfPush() { return mPushResult; }
 
 private:
     nsCOMPtr<nsIJSContextStack> mContextStack;
     JSContext*                  mContext;
     JSStackFrame                mFrame;
     nsresult                    mPushResult;
 };
 
--- a/layout/base/nsFrameTraversal.cpp
+++ b/layout/base/nsFrameTraversal.cpp
@@ -130,17 +130,17 @@ private:
 
 
 // Bidi visual iterator
 class nsVisualIterator: public nsFrameIterator
 {
 public:
   nsVisualIterator(nsPresContext* aPresContext, nsIFrame *aStart,
                    nsIteratorType aType, PRBool aLockScroll, PRBool aFollowOOFs) :
-  nsFrameIterator(aPresContext, aStart, aType, aLockScroll, aFollowOOFs) {};
+  nsFrameIterator(aPresContext, aStart, aType, aLockScroll, aFollowOOFs) {}
 
 protected:
   nsIFrame* GetFirstChildInner(nsIFrame* aFrame);
   nsIFrame* GetLastChildInner(nsIFrame* aFrame);  
   
   nsIFrame* GetNextSiblingInner(nsIFrame* aFrame);
   nsIFrame* GetPrevSiblingInner(nsIFrame* aFrame);  
 };
--- a/layout/base/nsPresContext.h
+++ b/layout/base/nsPresContext.h
@@ -690,20 +690,20 @@ public:
 #endif
 
   /**
    * This table maps border-width enums 'thin', 'medium', 'thick'
    * to actual nscoord values.
    */
   const nscoord* GetBorderWidthTable() { return mBorderWidthTable; }
 
-  PRBool IsDynamic() { return (mType == eContext_PageLayout || mType == eContext_Galley); };
+  PRBool IsDynamic() { return (mType == eContext_PageLayout || mType == eContext_Galley); }
   PRBool IsScreen() { return (mMedium == nsGkAtoms::screen ||
                               mType == eContext_PageLayout ||
-                              mType == eContext_PrintPreview); };
+                              mType == eContext_PrintPreview); }
 
   const nsTArray<nsIFrame*>& GetActivePopups() {
     NS_ASSERTION(this == RootPresContext(), "Only on root prescontext");
     return mActivePopups;
   }
   void NotifyAddedActivePopupToTop(nsIFrame* aFrame) {
     NS_ASSERTION(this == RootPresContext(), "Only on root prescontext");
     mActivePopups.AppendElement(aFrame);
--- a/layout/forms/nsTextControlFrame.h
+++ b/layout/forms/nsTextControlFrame.h
@@ -195,17 +195,17 @@ public: //for methods who access nsTextC
   /** Called when the frame is focused, to remember the value for onChange. */
   nsresult InitFocusedValue();
   nsresult DOMPointToOffset(nsIDOMNode* aNode, PRInt32 aNodeOffset, PRInt32 *aResult);
   nsresult OffsetToDOMPoint(PRInt32 aOffset, nsIDOMNode** aResult, PRInt32* aPosition);
 
   void SetFireChangeEventState(PRBool aNewState)
   {
     mFireChangeEventState = aNewState;
-  };
+  }
 
   PRBool GetFireChangeEventState() const
   {
     return mFireChangeEventState;
   }    
 
   /* called to free up native keybinding services */
   static NS_HIDDEN_(void) ShutDown();
--- a/layout/generic/nsFrame.h
+++ b/layout/generic/nsFrame.h
@@ -151,17 +151,17 @@ public:
   void operator delete(void* aPtr, size_t sz);
 
   // We compute and store the HTML content's overflow area. So don't
   // try to compute it in the box code.
   virtual PRBool ComputesOwnOverflowArea() { return PR_TRUE; }
 
 private:
   // The normal operator new is disallowed on nsFrames.
-  void* operator new(size_t sz) CPP_THROW_NEW { return nsnull; };
+  void* operator new(size_t sz) CPP_THROW_NEW { return nsnull; }
 
 public:
 
   // nsISupports
   NS_IMETHOD  QueryInterface(const nsIID& aIID, void** aInstancePtr);
 
   // nsIFrame
   NS_IMETHOD  Init(nsIContent*      aContent,
--- a/layout/generic/nsInlineFrame.h
+++ b/layout/generic/nsInlineFrame.h
@@ -164,17 +164,17 @@ protected:
     PRPackedBool mSetParentPointer;  // when reflowing child frame first set its
                                      // parent frame pointer
 
     InlineReflowState()  {
       mPrevFrame = nsnull;
       mNextInFlow = nsnull;
       mLineContainer = nsnull;
       mSetParentPointer = PR_FALSE;
-    };
+    }
   };
 
   nsInlineFrame(nsStyleContext* aContext) : nsInlineFrameSuper(aContext) {}
 
   virtual PRIntn GetSkipSides() const;
 
   nsresult ReflowFrames(nsPresContext* aPresContext,
                         const nsHTMLReflowState& aReflowState,
--- a/layout/generic/nsObjectFrame.h
+++ b/layout/generic/nsObjectFrame.h
@@ -112,17 +112,17 @@ public:
   virtual nsresult Instantiate(const char* aMimeType, nsIURI* aURI);
   virtual void StopPlugin();
 
 
   /* fail on any requests to get a cursor from us because plugins set their own! see bug 118877 */
   NS_IMETHOD GetCursor(const nsPoint& aPoint, nsIFrame::Cursor& aCursor) 
   {
     return NS_ERROR_NOT_IMPLEMENTED;
-  };
+  }
 
   // accessibility support
 #ifdef ACCESSIBILITY
   NS_IMETHOD GetAccessible(nsIAccessible** aAccessible);
 #ifdef XP_WIN
   NS_IMETHOD GetPluginPort(HWND *aPort);
 #endif
 #endif
--- a/layout/generic/nsSimplePageSequence.h
+++ b/layout/generic/nsSimplePageSequence.h
@@ -98,17 +98,17 @@ public:
                                const nsDisplayListSet& aLists);
 
   // nsIPageSequenceFrame
   NS_IMETHOD SetPageNo(PRInt32 aPageNo) { return NS_OK;}
   NS_IMETHOD SetSelectionHeight(nscoord aYOffset, nscoord aHeight) { mYSelOffset = aYOffset; mSelectionHeight = aHeight; return NS_OK; }
   NS_IMETHOD SetTotalNumPages(PRInt32 aTotal) { mTotalPages = aTotal; return NS_OK; }
 
   // Gets the dead space (the gray area) around the Print Preview Page
-  NS_IMETHOD GetDeadSpaceValue(nscoord* aValue) { *aValue = NS_INCHES_TO_TWIPS(0.25); return NS_OK; };
+  NS_IMETHOD GetDeadSpaceValue(nscoord* aValue) { *aValue = NS_INCHES_TO_TWIPS(0.25); return NS_OK; }
   
   // For Shrink To Fit
   NS_IMETHOD GetSTFPercent(float& aSTFPercent);
 
   // Async Printing
   NS_IMETHOD StartPrint(nsPresContext*  aPresContext,
                         nsIPrintSettings* aPrintSettings,
                         PRUnichar*        aDocTitle,
--- a/layout/inspector/src/inDOMView.cpp
+++ b/layout/inspector/src/inDOMView.cpp
@@ -63,17 +63,17 @@
 #endif
 
 ////////////////////////////////////////////////////////////////////////
 // inDOMViewNode
 
 class inDOMViewNode
 {
 public:
-  inDOMViewNode() {};
+  inDOMViewNode() {}
   inDOMViewNode(nsIDOMNode* aNode);
   ~inDOMViewNode();
 
   nsCOMPtr<nsIDOMNode> node;
 
   inDOMViewNode* parent;
   inDOMViewNode* next;
   inDOMViewNode* previous;
--- a/layout/mathml/base/src/nsMathMLChar.cpp
+++ b/layout/mathml/base/src/nsMathMLChar.cpp
@@ -627,17 +627,17 @@ nsGlyphTable::DrawGlyph(nsIRenderingCont
 
 // class to map a Unicode point to a string (used to store the list of
 // fonts preferred for the base size of certain characters, i.e., when
 // stretching doesn't happen with a char, we use its preferred base fonts)
 class nsBaseFontEntry : public PLDHashInt32Entry
 {
 public:
   nsBaseFontEntry(const void* aKey) : PLDHashInt32Entry(aKey) { }
-  ~nsBaseFontEntry() { };
+  ~nsBaseFontEntry() { }
 
   nsString mFontFamily; // a font-family list a-la CSS
 };
 
 DECL_DHASH_WRAPPER(nsBaseFontHashtable, nsBaseFontEntry, PRInt32)
 DHASH_WRAPPER(nsBaseFontHashtable, nsBaseFontEntry, PRInt32)
 
 // -----------------------------------------------------------------------------------
--- a/layout/style/nsCSSValue.h
+++ b/layout/style/nsCSSValue.h
@@ -157,17 +157,17 @@ public:
   NS_HIDDEN_(nsCSSValue&)  operator=(const nsCSSValue& aCopy);
   NS_HIDDEN_(PRBool)      operator==(const nsCSSValue& aOther) const;
 
   PRBool operator!=(const nsCSSValue& aOther) const
   {
     return !(*this == aOther);
   }
 
-  nsCSSUnit GetUnit() const { return mUnit; };
+  nsCSSUnit GetUnit() const { return mUnit; }
   PRBool    IsLengthUnit() const
     { return PRBool((eCSSUnit_Inch <= mUnit) && (mUnit <= eCSSUnit_Proportional)); }
   PRBool    IsFixedLengthUnit() const  
     { return PRBool((eCSSUnit_Inch <= mUnit) && (mUnit <= eCSSUnit_Cicero)); }
   PRBool    IsRelativeLengthUnit() const  
     { return PRBool((eCSSUnit_EM <= mUnit) && (mUnit <= eCSSUnit_Proportional)); }
   PRBool    IsAngularUnit() const  
     { return PRBool((eCSSUnit_Degree <= mUnit) && (mUnit <= eCSSUnit_Radian)); }
--- a/layout/style/nsIStyleRuleProcessor.h
+++ b/layout/style/nsIStyleRuleProcessor.h
@@ -73,17 +73,17 @@ struct RuleProcessorData {
   ~RuleProcessorData();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~RuleProcessorData();
     aContext->FreeToShell(sizeof(RuleProcessorData), this);
-  };
+  }
 
   const nsString* GetLang();
 
   nsPresContext*   mPresContext;
   nsIContent*       mContent;       // weak ref
   nsIContent*       mParentContent; // if content, content->GetParent(); weak ref
   nsRuleWalker*     mRuleWalker; // Used to add rules to our results.
   nsIContent*       mScopedRoot;    // Root of scoped stylesheet (set and unset by the supplier of the scoped stylesheet
--- a/layout/style/nsRuleData.h
+++ b/layout/style/nsRuleData.h
@@ -78,13 +78,13 @@ struct nsRuleData
      mPositionData(nsnull), mTableData(nsnull), mColorData(nsnull), mContentData(nsnull), mTextData(nsnull),
      mUserInterfaceData(nsnull), mColumnData(nsnull)
   {
     mCanStoreInRuleTree = PR_TRUE;
     mXULData = nsnull;
 #ifdef MOZ_SVG
     mSVGData = nsnull;
 #endif
-  };
-  ~nsRuleData() {};
+  }
+  ~nsRuleData() {}
 };
 
 #endif
--- a/layout/style/nsRuleNode.cpp
+++ b/layout/style/nsRuleNode.cpp
@@ -83,17 +83,17 @@ public:
     MOZ_COUNT_DTOR(nsRuleList);
     mRuleNode->Destroy();
     if (mNext)
       mNext->Destroy(mNext->mRuleNode->mPresContext);
   }
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
-  };
+  }
   void operator delete(void* aPtr) {} // Does nothing. The arena will free us up when the rule tree
                                       // dies.
 
   void Destroy(nsPresContext* aContext) {
     this->~nsRuleList();
     aContext->FreeToShell(sizeof(nsRuleList), this);
   }
 
--- a/layout/style/nsRuleNode.h
+++ b/layout/style/nsRuleNode.h
@@ -71,100 +71,100 @@ struct nsInheritedStyleData
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_INHERITED
 #undef STYLE_STRUCT_RESET
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
-  };
+  }
 
   void ClearInheritedData(PRUint32 aBits) {
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args) \
     if (m##name##Data && (aBits & NS_STYLE_INHERIT_BIT(name))) \
       m##name##Data = nsnull;
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_INHERITED
 #undef STYLE_STRUCT_RESET
-  };
+  }
 
   void Destroy(PRUint32 aBits, nsPresContext* aContext) {
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args) \
     if (m##name##Data && !(aBits & NS_STYLE_INHERIT_BIT(name))) \
       m##name##Data->Destroy(aContext);
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_INHERITED
 #undef STYLE_STRUCT_RESET
 
     aContext->FreeToShell(sizeof(nsInheritedStyleData), this);
-  };
+  }
 
   nsInheritedStyleData() {
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args) \
     m##name##Data = nsnull;
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_INHERITED
 #undef STYLE_STRUCT_RESET
 
-  };
+  }
 };
 
 struct nsResetStyleData
 {
   nsResetStyleData()
   {
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args) \
     m##name##Data = nsnull;
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_RESET
 #undef STYLE_STRUCT_INHERITED
-  };
+  }
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
 
   void ClearInheritedData(PRUint32 aBits) {
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args) \
     if (m##name##Data && (aBits & NS_STYLE_INHERIT_BIT(name))) \
       m##name##Data = nsnull;
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_RESET
 #undef STYLE_STRUCT_INHERITED
-  };
+  }
 
   void Destroy(PRUint32 aBits, nsPresContext* aContext) {
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args) \
     if (m##name##Data && !(aBits & NS_STYLE_INHERIT_BIT(name))) \
       m##name##Data->Destroy(aContext);
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_RESET
 #undef STYLE_STRUCT_INHERITED
 
     aContext->FreeToShell(sizeof(nsResetStyleData), this);
-  };
+  }
 
 #define STYLE_STRUCT_RESET(name, checkdata_cb, ctor_args) \
   nsStyle##name * m##name##Data;
 #define STYLE_STRUCT_INHERITED(name, checkdata_cb, ctor_args)
 
 #include "nsStyleStructList.h"
 
 #undef STYLE_STRUCT_RESET
@@ -182,21 +182,21 @@ struct nsCachedStyleData
 
   static StyleStructInfo gInfo[];
 
   nsInheritedStyleData* mInheritedData;
   nsResetStyleData* mResetData;
 
   static PRBool IsReset(const nsStyleStructID& aSID) {
     return gInfo[aSID].mIsReset;
-  };
+  }
 
   static PRUint32 GetBitForSID(const nsStyleStructID& aSID) {
     return 1 << aSID;
-  };
+  }
 
   NS_HIDDEN_(nsStyleStruct*) NS_FASTCALL GetStyleData(const nsStyleStructID& aSID) {
     // Each struct is stored at this.m##type##Data->m##name##Data where
     // |type| is either Inherit or Reset, and |name| is the name of the
     // style struct.  The |gInfo| stores the offset of the appropriate
     // m##type##Data for the struct within nsCachedStyleData (|this|)
     // and the offset of the appropriate m##name##Data within the
     // m##type##Data.  Note that if we don't have any reset structs,
@@ -217,17 +217,17 @@ struct nsCachedStyleData
     nsStyleStruct* data = nsnull;
     if (resetOrInherit) {
       // If we have the mInheritedData or mResetData, then we might have
       // the struct, so get it.
       char* dataSlot = resetOrInherit + info.mInheritResetOffset;
       data = *NS_REINTERPRET_CAST(nsStyleStruct**, dataSlot);
     }
     return data;
-  };
+  }
 
   // Typesafe and faster versions of the above
   #define STYLE_STRUCT_INHERITED(name_, checkdata_cb_, ctor_args_)       \
     NS_HIDDEN_(nsStyle##name_ *) NS_FASTCALL GetStyle##name_ () {        \
       return mInheritedData ? mInheritedData->m##name_##Data : nsnull;   \
     }
   #define STYLE_STRUCT_RESET(name_, checkdata_cb_, ctor_args_)           \
     NS_HIDDEN_(nsStyle##name_ *) NS_FASTCALL GetStyle##name_ () {        \
@@ -248,18 +248,18 @@ struct nsCachedStyleData
     if (mResetData)
       mResetData->Destroy(aBits, aContext);
     if (mInheritedData)
       mInheritedData->Destroy(aBits, aContext);
     mResetData = nsnull;
     mInheritedData = nsnull;
   }
 
-  nsCachedStyleData() :mInheritedData(nsnull), mResetData(nsnull) {};
-  ~nsCachedStyleData() {};
+  nsCachedStyleData() :mInheritedData(nsnull), mResetData(nsnull) {}
+  ~nsCachedStyleData() {}
 };
 
 /**
  * nsRuleNode is a node in a lexicographic tree (the "rule tree")
  * indexed by style rules (implementations of nsIStyleRule).
  *
  * The rule tree is owned by the nsStyleSet and is destroyed when the
  * presentation of the document goes away.  It is garbage-collected
--- a/layout/style/nsRuleWalker.h
+++ b/layout/style/nsRuleWalker.h
@@ -63,11 +63,11 @@ public:
 
   PRBool AtRoot() { return mCurrent == mRoot; }
 
 private:
   nsRuleNode* mCurrent; // Our current position.
   nsRuleNode* mRoot; // The root of the tree we're walking.
 
 public:
-  nsRuleWalker(nsRuleNode* aRoot) :mCurrent(aRoot), mRoot(aRoot) { MOZ_COUNT_CTOR(nsRuleWalker); };
-  ~nsRuleWalker() { MOZ_COUNT_DTOR(nsRuleWalker); };
+  nsRuleWalker(nsRuleNode* aRoot) :mCurrent(aRoot), mRoot(aRoot) { MOZ_COUNT_CTOR(nsRuleWalker); }
+  ~nsRuleWalker() { MOZ_COUNT_DTOR(nsRuleWalker); }
 };
--- a/layout/style/nsStyleContext.h
+++ b/layout/style/nsStyleContext.h
@@ -102,17 +102,17 @@ public:
   nsStyleContext* GetFirstChild() const { return mChild; }
 
   nsIAtom* GetPseudoType() const { return mPseudoTag; }
 
   NS_HIDDEN_(already_AddRefed<nsStyleContext>)
   FindChildWithRules(const nsIAtom* aPseudoTag, nsRuleNode* aRules);
 
   NS_HIDDEN_(PRBool)    Equals(const nsStyleContext* aOther) const;
-  PRBool    HasTextDecorations() { return mBits & NS_STYLE_HAS_TEXT_DECORATIONS; };
+  PRBool    HasTextDecorations() { return mBits & NS_STYLE_HAS_TEXT_DECORATIONS; }
 
   NS_HIDDEN_(void) SetStyle(nsStyleStructID aSID, nsStyleStruct* aStruct);
 
   nsRuleNode* GetRuleNode() { return mRuleNode; }
   void AddStyleBit(const PRUint32& aBit) { mBits |= aBit; }
 
   /*
    * Mark this style context's rule node (and its ancestors) to prevent
--- a/layout/style/nsStyleStruct.h
+++ b/layout/style/nsStyleStruct.h
@@ -99,17 +99,17 @@ struct nsStyleStruct {
 
 // The lifetime of these objects is managed by the presshell's arena.
 
 struct nsStyleFont : public nsStyleStruct {
   nsStyleFont(void);
   nsStyleFont(const nsFont& aFont);
   nsStyleFont(const nsStyleFont& aStyleFont);
   nsStyleFont(nsPresContext *aPresContext);
-  ~nsStyleFont(void) {};
+  ~nsStyleFont(void) {}
 
   nsChangeHint CalcDifference(const nsStyleFont& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   static nsChangeHint CalcFontDifference(const nsFont& aFont1, const nsFont& aFont2);
 
   static nscoord ZoomText(nsPresContext* aPresContext, nscoord aSize);
@@ -124,30 +124,30 @@ struct nsStyleFont : public nsStyleStruc
                         // which is our "actual size" and is enforced to be >= the user's
                         // preferred min-size. mFont.size should be used for display purposes
                         // while mSize is the value to return in getComputedStyle() for example.
 };
 
 struct nsStyleColor : public nsStyleStruct {
   nsStyleColor(nsPresContext* aPresContext);
   nsStyleColor(const nsStyleColor& aOther);
-  ~nsStyleColor(void) {};
+  ~nsStyleColor(void) {}
 
   nsChangeHint CalcDifference(const nsStyleColor& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleColor();
     aContext->FreeToShell(sizeof(nsStyleColor), this);
-  };
+  }
 
   // Don't add ANY members to this struct!  We can achieve caching in the rule
   // tree (rather than the style tree) by letting color stay by itself! -dwh
   nscolor mColor;                 // [inherited]
 };
 
 struct nsStyleBackground : public nsStyleStruct {
   nsStyleBackground(nsPresContext* aPresContext);
@@ -155,17 +155,17 @@ struct nsStyleBackground : public nsStyl
   ~nsStyleBackground();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleBackground();
     aContext->FreeToShell(sizeof(nsStyleBackground), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleBackground& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   // On Linux (others?), there is an extra byte being used up by
   // inheritance so we only have 3 bytes to fit these 6 things into.
@@ -212,17 +212,17 @@ struct nsStyleBackground : public nsStyl
 #define NS_SPACING_MARGIN   0
 #define NS_SPACING_PADDING  1
 #define NS_SPACING_BORDER   2
 
 
 struct nsStyleMargin: public nsStyleStruct {
   nsStyleMargin(void);
   nsStyleMargin(const nsStyleMargin& aMargin);
-  ~nsStyleMargin(void) {};
+  ~nsStyleMargin(void) {}
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW;
   void Destroy(nsPresContext* aContext);
 
   void RecalcData();
   nsChangeHint CalcDifference(const nsStyleMargin& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
@@ -243,17 +243,17 @@ protected:
   PRPackedBool  mHasCachedMargin;
   nsMargin      mCachedMargin;
 };
 
 
 struct nsStylePadding: public nsStyleStruct {
   nsStylePadding(void);
   nsStylePadding(const nsStylePadding& aPadding);
-  ~nsStylePadding(void) {};
+  ~nsStylePadding(void) {}
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW;
   void Destroy(nsPresContext* aContext);
 
   void RecalcData();
   nsChangeHint CalcDifference(const nsStylePadding& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
@@ -282,17 +282,17 @@ struct nsBorderColors {
 
   nsBorderColors* CopyColors() {
     nsBorderColors* next = nsnull;
     if (mNext)
       next = mNext->CopyColors();
     return new nsBorderColors(mColor, mTransparent, next);
   }
 
-  nsBorderColors() :mNext(nsnull) { mColor = NS_RGB(0,0,0); };
+  nsBorderColors() :mNext(nsnull) { mColor = NS_RGB(0,0,0); }
 
   nsBorderColors(const nscolor& aColor, PRBool aTransparent, nsBorderColors* aNext=nsnull) {
     mColor = aColor;
     mTransparent = aTransparent;
     mNext = aNext;
   }
 
   ~nsBorderColors() {
@@ -329,17 +329,17 @@ struct nsStyleBorder: public nsStyleStru
   nsStyleBorder(nsPresContext* aContext);
   nsStyleBorder(const nsStyleBorder& aBorder);
   ~nsStyleBorder(void) {
     if (mBorderColors) {
       for (PRInt32 i = 0; i < 4; i++)
         delete mBorderColors[i];
       delete []mBorderColors;
     }
-  };
+  }
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW;
   void Destroy(nsPresContext* aContext);
 
   nsChangeHint CalcDifference(const nsStyleBorder& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
@@ -504,25 +504,25 @@ protected:
 
   nscoord       mTwipsPerPixel;
 };
 
 
 struct nsStyleOutline: public nsStyleStruct {
   nsStyleOutline(nsPresContext* aPresContext);
   nsStyleOutline(const nsStyleOutline& aOutline);
-  ~nsStyleOutline(void) {};
+  ~nsStyleOutline(void) {}
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleOutline();
     aContext->FreeToShell(sizeof(nsStyleOutline), this);
-  };
+  }
 
   void RecalcData(nsPresContext* aContext);
   nsChangeHint CalcDifference(const nsStyleOutline& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
  
   nsStyleSides  mOutlineRadius;    // [reset] length, percent
@@ -613,17 +613,17 @@ struct nsStyleList : public nsStyleStruc
   ~nsStyleList(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleList();
     aContext->FreeToShell(sizeof(nsStyleList), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleList& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   PRUint8   mListStyleType;             // [inherited] See nsStyleConsts.h
   PRUint8   mListStylePosition;         // [inherited] 
@@ -637,17 +637,17 @@ struct nsStylePosition : public nsStyleS
   ~nsStylePosition(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStylePosition();
     aContext->FreeToShell(sizeof(nsStylePosition), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStylePosition& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   nsStyleSides  mOffset;                // [reset]
   nsStyleCoord  mWidth;                 // [reset] coord, percent, auto
@@ -666,17 +666,17 @@ struct nsStyleTextReset : public nsStyle
   ~nsStyleTextReset(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleTextReset();
     aContext->FreeToShell(sizeof(nsStyleTextReset), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleTextReset& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   PRUint8 mTextDecoration;              // [reset] see nsStyleConsts.h
   PRUint8 mUnicodeBidi;                 // [reset] see nsStyleConsts.h
@@ -690,17 +690,17 @@ struct nsStyleText : public nsStyleStruc
   ~nsStyleText(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleText();
     aContext->FreeToShell(sizeof(nsStyleText), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleText& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   PRUint8 mTextAlign;                   // [inherited] see nsStyleConsts.h
   PRUint8 mTextTransform;               // [inherited] see nsStyleConsts.h
@@ -720,25 +720,25 @@ struct nsStyleText : public nsStyleStruc
     return mWhiteSpace == NS_STYLE_WHITESPACE_NORMAL ||
            mWhiteSpace == NS_STYLE_WHITESPACE_MOZ_PRE_WRAP;
   }
 };
 
 struct nsStyleVisibility : public nsStyleStruct {
   nsStyleVisibility(nsPresContext* aPresContext);
   nsStyleVisibility(const nsStyleVisibility& aVisibility);
-  ~nsStyleVisibility() {};
+  ~nsStyleVisibility() {}
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleVisibility();
     aContext->FreeToShell(sizeof(nsStyleVisibility), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleVisibility& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   PRUint8 mDirection;                  // [inherited] see nsStyleConsts.h NS_STYLE_DIRECTION_*
   PRUint8   mVisible;                  // [inherited]
@@ -752,25 +752,25 @@ struct nsStyleVisibility : public nsStyl
 		return ((mVisible == NS_STYLE_VISIBILITY_VISIBLE) ||
 						(mVisible == NS_STYLE_VISIBILITY_COLLAPSE));
 	}
 };
 
 struct nsStyleDisplay : public nsStyleStruct {
   nsStyleDisplay();
   nsStyleDisplay(const nsStyleDisplay& aOther); 
-  ~nsStyleDisplay() {};
+  ~nsStyleDisplay() {}
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleDisplay();
     aContext->FreeToShell(sizeof(nsStyleDisplay), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleDisplay& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   nsCOMPtr<nsIURI> mBinding;    // [reset]
 #if 0
@@ -859,17 +859,17 @@ struct nsStyleTable: public nsStyleStruc
   ~nsStyleTable(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleTable();
     aContext->FreeToShell(sizeof(nsStyleTable), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleTable& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   PRUint8       mLayoutStrategy;// [reset] see nsStyleConsts.h NS_STYLE_TABLE_LAYOUT_*
   PRUint8       mFrame;         // [reset] see nsStyleConsts.h NS_STYLE_TABLE_FRAME_*
@@ -884,17 +884,17 @@ struct nsStyleTableBorder: public nsStyl
   ~nsStyleTableBorder(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleTableBorder();
     aContext->FreeToShell(sizeof(nsStyleTableBorder), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleTableBorder& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   nsStyleCoord  mBorderSpacingX;// [inherited]
   nsStyleCoord  mBorderSpacingY;// [inherited]
@@ -950,17 +950,17 @@ struct nsStyleQuotes : public nsStyleStr
   ~nsStyleQuotes();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleQuotes();
     aContext->FreeToShell(sizeof(nsStyleQuotes), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleQuotes& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   PRUint32  QuotesCount(void) const { return mQuotesCount; } // [inherited]
 
@@ -1020,17 +1020,17 @@ struct nsStyleContent: public nsStyleStr
   ~nsStyleContent(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleContent();
     aContext->FreeToShell(sizeof(nsStyleContent), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleContent& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   PRUint32  ContentCount(void) const  { return mContentCount; } // [reset]
 
@@ -1125,17 +1125,17 @@ struct nsStyleUIReset: public nsStyleStr
   ~nsStyleUIReset(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleUIReset();
     aContext->FreeToShell(sizeof(nsStyleUIReset), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleUIReset& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   PRUint8   mUserSelect;      // [reset] (selection-style)
   PRUint8   mForceBrokenImageIcon; // [reset]  (0 if not forcing, otherwise forcing)
@@ -1155,17 +1155,17 @@ struct nsStyleUserInterface: public nsSt
   ~nsStyleUserInterface(void);
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleUserInterface();
     aContext->FreeToShell(sizeof(nsStyleUserInterface), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleUserInterface& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   PRUint8   mUserInput;       // [inherited]
   PRUint8   mUserModify;      // [inherited] (modify-content)
@@ -1190,17 +1190,17 @@ struct nsStyleXUL : public nsStyleStruct
   ~nsStyleXUL();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleXUL();
     aContext->FreeToShell(sizeof(nsStyleXUL), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleXUL& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
   
   float         mBoxFlex;               // [reset] see nsStyleConsts.h
   PRUint32      mBoxOrdinal;            // [reset] see nsStyleConsts.h
@@ -1216,17 +1216,17 @@ struct nsStyleColumn : public nsStyleStr
   ~nsStyleColumn();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleColumn();
     aContext->FreeToShell(sizeof(nsStyleColumn), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleColumn& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   PRUint32     mColumnCount; // [reset] see nsStyleConsts.h
   nsStyleCoord mColumnWidth; // [reset]
@@ -1266,17 +1266,17 @@ struct nsStyleSVG : public nsStyleStruct
   ~nsStyleSVG();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleSVG();
     aContext->FreeToShell(sizeof(nsStyleSVG), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleSVG& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   nsStyleSVGPaint  mFill;             // [inherited]
   nsStyleSVGPaint  mStroke;           // [inherited]
@@ -1311,17 +1311,17 @@ struct nsStyleSVGReset : public nsStyleS
   ~nsStyleSVGReset();
 
   void* operator new(size_t sz, nsPresContext* aContext) CPP_THROW_NEW {
     return aContext->AllocateFromShell(sz);
   }
   void Destroy(nsPresContext* aContext) {
     this->~nsStyleSVGReset();
     aContext->FreeToShell(sizeof(nsStyleSVGReset), this);
-  };
+  }
 
   nsChangeHint CalcDifference(const nsStyleSVGReset& aOther) const;
 #ifdef DEBUG
   static nsChangeHint MaxDifference();
 #endif
 
   nscolor          mStopColor;        // [reset]
   nscolor          mFloodColor;       // [reset]
--- a/layout/tables/SpanningCellSorter.h
+++ b/layout/tables/SpanningCellSorter.h
@@ -115,11 +115,11 @@ private:
     PRUint32 mEnumerationIndex; // into mArray or mSortedHashTable
     HashTableEntry **mSortedHashTable;
 
     /*
      * operator new is forbidden since we use the pres shell's stack
      * memory, which much be pushed and popped at points matching a
      * push/pop on the C++ stack.
      */
-    void* operator new(size_t sz) CPP_THROW_NEW { return nsnull; };
+    void* operator new(size_t sz) CPP_THROW_NEW { return nsnull; }
 };
 
--- a/layout/tables/nsITableLayoutStrategy.h
+++ b/layout/tables/nsITableLayoutStrategy.h
@@ -48,17 +48,17 @@
 #include "nsCoord.h"
 
 class nsIRenderingContext;
 struct nsHTMLReflowState;
 
 class nsITableLayoutStrategy
 {
 public:
-    virtual ~nsITableLayoutStrategy() {};
+    virtual ~nsITableLayoutStrategy() {}
 
     /** Implement nsIFrame::GetMinWidth for the table */
     virtual nscoord GetMinWidth(nsIRenderingContext* aRenderingContext) = 0;
 
     /** Implement nsIFrame::GetPrefWidth for the table */
     virtual nscoord GetPrefWidth(nsIRenderingContext* aRenderingContext,
                                  PRBool aComputingSize) = 0;
 
--- a/layout/tables/nsTableRowGroupFrame.h
+++ b/layout/tables/nsTableRowGroupFrame.h
@@ -369,20 +369,20 @@ protected:
                         
 private:
   // border widths in pixels in the collapsing border model
   BCPixelSize mRightContBorderWidth;
   BCPixelSize mBottomContBorderWidth;
   BCPixelSize mLeftContBorderWidth;
 
 public:
-  virtual nsIFrame* GetFirstFrame() { return mFrames.FirstChild(); };
-  virtual nsIFrame* GetLastFrame() { return mFrames.LastChild(); };
+  virtual nsIFrame* GetFirstFrame() { return mFrames.FirstChild(); }
+  virtual nsIFrame* GetLastFrame() { return mFrames.LastChild(); }
   virtual void GetNextFrame(nsIFrame*  aFrame, 
-                            nsIFrame** aResult) { *aResult = aFrame->GetNextSibling(); };
+                            nsIFrame** aResult) { *aResult = aFrame->GetNextSibling(); }
   PRBool IsRepeatable() const;
   void   SetRepeatable(PRBool aRepeatable);
   PRBool HasStyleHeight() const;
   void   SetHasStyleHeight(PRBool aValue);
 };
 
 
 inline PRBool nsTableRowGroupFrame::IsRepeatable() const
--- a/layout/xul/base/src/nsBoxLayout.h
+++ b/layout/xul/base/src/nsBoxLayout.h
@@ -40,17 +40,17 @@
 
 #include "nsIBoxLayout.h"
 
 class nsBoxLayout : public nsIBoxLayout {
 
 public:
 
   nsBoxLayout();
-  virtual ~nsBoxLayout() {};
+  virtual ~nsBoxLayout() {}
 
   NS_DECL_ISUPPORTS
 
   NS_IMETHOD Layout(nsIBox* aBox, nsBoxLayoutState& aState);
 
   NS_IMETHOD GetPrefSize(nsIBox* aBox, nsBoxLayoutState& aBoxLayoutState, nsSize& aSize);
   NS_IMETHOD GetMinSize(nsIBox* aBox, nsBoxLayoutState& aBoxLayoutState, nsSize& aSize);
   NS_IMETHOD GetMaxSize(nsIBox* aBox, nsBoxLayoutState& aBoxLayoutState, nsSize& aSize);
--- a/layout/xul/base/src/nsMenuBarFrame.h
+++ b/layout/xul/base/src/nsMenuBarFrame.h
@@ -68,34 +68,34 @@ public:
   NS_DECL_ISUPPORTS
 
   // nsIMenuParentInterface
   virtual nsIMenuFrame* GetCurrentMenuItem();
   NS_IMETHOD SetCurrentMenuItem(nsIMenuFrame* aMenuItem);
   virtual nsIMenuFrame* GetNextMenuItem(nsIMenuFrame* aStart);
   virtual nsIMenuFrame* GetPreviousMenuItem(nsIMenuFrame* aStart);
   NS_IMETHOD SetActive(PRBool aActiveFlag); 
-  NS_IMETHOD GetIsActive(PRBool& isActive) { isActive = IsActive(); return NS_OK; };
-  NS_IMETHOD IsMenuBar(PRBool& isMenuBar) { isMenuBar = PR_TRUE; return NS_OK; };
+  NS_IMETHOD GetIsActive(PRBool& isActive) { isActive = IsActive(); return NS_OK; }
+  NS_IMETHOD IsMenuBar(PRBool& isMenuBar) { isMenuBar = PR_TRUE; return NS_OK; }
   NS_IMETHOD ConsumeOutsideClicks(PRBool& aConsumeOutsideClicks) \
-    {aConsumeOutsideClicks = PR_FALSE; return NS_OK;};
+    {aConsumeOutsideClicks = PR_FALSE; return NS_OK;}
   NS_IMETHOD ClearRecentlyRolledUp();
   NS_IMETHOD RecentlyRolledUp(nsIMenuFrame *aMenuFrame, PRBool *aJustRolledUp);
 
-  NS_IMETHOD SetIsContextMenu(PRBool aIsContextMenu) { return NS_OK; };
-  NS_IMETHOD GetIsContextMenu(PRBool& aIsContextMenu) { aIsContextMenu = PR_FALSE; return NS_OK; }; 
+  NS_IMETHOD SetIsContextMenu(PRBool aIsContextMenu) { return NS_OK; }
+  NS_IMETHOD GetIsContextMenu(PRBool& aIsContextMenu) { aIsContextMenu = PR_FALSE; return NS_OK; }
 
   NS_IMETHOD GetParentPopup(nsIMenuParent** aResult) { *aResult = nsnull;
-                                                       return NS_OK;};
+                                                       return NS_OK;}
 
-  NS_IMETHOD IsActive() { return mIsActive; };
+  NS_IMETHOD IsActive() { return mIsActive; }
 
   NS_IMETHOD IsOpen();
   NS_IMETHOD KillPendingTimers();
-  NS_IMETHOD CancelPendingTimers() { return NS_OK; };
+  NS_IMETHOD CancelPendingTimers() { return NS_OK; }
 
   // Closes up the chain of open cascaded menus.
   NS_IMETHOD DismissChain();
 
   // Hides the chain of cascaded menus without closing them up.
   NS_IMETHOD HideChain();
 
   NS_IMETHOD InstallKeyboardNavigator();
--- a/layout/xul/base/src/nsMenuDismissalListener.h
+++ b/layout/xul/base/src/nsMenuDismissalListener.h
@@ -57,23 +57,23 @@ class nsIMenuParent;
 class nsMenuDismissalListener : public nsIDOMMouseListener,
                                 public nsIMenuRollup,
                                 public nsIRollupListener
 {
 
 public:
   friend class nsMenuPopupFrame;
 
-  NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD MouseDown(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent) { return NS_OK; };
+  NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD MouseDown(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent) { return NS_OK; }
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSIROLLUPLISTENER
   NS_DECL_NSIMENUROLLUP
 
   void EnableListener(PRBool aEnabled);
   void SetCurrentMenuParent(nsIMenuParent* aMenuParent);
   nsIMenuParent* GetCurrentMenuParent();
--- a/layout/xul/base/src/nsMenuFrame.h
+++ b/layout/xul/base/src/nsMenuFrame.h
@@ -115,17 +115,17 @@ public:
   NS_IMETHOD Init(nsIContent*      aContent,
                   nsIFrame*        aParent,
                   nsIFrame*        aPrevInFlow);
 
 #ifdef DEBUG_LAYOUT
   NS_IMETHOD SetDebug(nsBoxLayoutState& aState, PRBool aDebug);
 #endif
 
-  NS_IMETHOD IsActive(PRBool& aResult) { aResult = PR_TRUE; return NS_OK; };
+  NS_IMETHOD IsActive(PRBool& aResult) { aResult = PR_TRUE; return NS_OK; }
 
   // The following four methods are all overridden so that the menu children
   // can be stored in a separate list (so that they don't impact reflow of the
   // actual menu item at all).
   virtual nsIFrame* GetFirstChild(nsIAtom* aListName) const;
   NS_IMETHOD SetInitialChildList(nsIAtom*        aListName,
                                  nsIFrame*       aChildList);
   virtual nsIAtom* GetAdditionalChildListName(PRInt32 aIndex) const;
@@ -170,37 +170,37 @@ public:
 
   NS_IMETHOD Escape(PRBool& aHandledFlag); // @see comment ***
   NS_IMETHOD Enter(); // @see comment ***
   NS_IMETHOD ShortcutNavigation(nsIDOMKeyEvent* aKeyEvent, PRBool& aHandledFlag); // @see comment ***
   NS_IMETHOD KeyboardNavigation(PRUint32 aKeyCode, PRBool& aHandledFlag); // @see comment ***
 
   NS_IMETHOD SetParent(const nsIFrame* aParent);
 
-  virtual nsIMenuParent *GetMenuParent() { return mMenuParent; };
+  virtual nsIMenuParent *GetMenuParent() { return mMenuParent; }
   virtual nsIFrame *GetMenuChild() { return mPopupFrames.FirstChild(); }
-  NS_IMETHOD GetRadioGroupName(nsString &aName) { aName = mGroupName; return NS_OK; };
-  NS_IMETHOD GetMenuType(nsMenuType &aType) { aType = mType; return NS_OK; };
+  NS_IMETHOD GetRadioGroupName(nsString &aName) { aName = mGroupName; return NS_OK; }
+  NS_IMETHOD GetMenuType(nsMenuType &aType) { aType = mType; return NS_OK; }
   NS_IMETHOD MarkAsGenerated();
 
   // nsIScrollableViewProvider methods
 
   virtual nsIScrollableView* GetScrollableView();
 
   // nsMenuFrame methods 
 
   nsresult DestroyPopupFrames(nsPresContext* aPresContext);
 
-  PRBool IsOpen() { return mMenuOpen; };
+  PRBool IsOpen() { return mMenuOpen; }
   PRBool IsMenu();
   PRBool IsDisabled();
   PRBool IsGenerated();
   NS_IMETHOD ToggleMenuState(); // @see comment ***
 
-  void SetIsMenu(PRBool aIsMenu) { mIsMenu = aIsMenu; };
+  void SetIsMenu(PRBool aIsMenu) { mIsMenu = aIsMenu; }
 
 #ifdef DEBUG
   NS_IMETHOD GetFrameName(nsAString& aResult) const
   {
       return MakeFrameName(NS_LITERAL_STRING("Menu"), aResult);
   }
 #endif
 
--- a/layout/xul/base/src/nsMenuPopupFrame.h
+++ b/layout/xul/base/src/nsMenuPopupFrame.h
@@ -106,24 +106,24 @@ public:
   NS_DECL_ISUPPORTS
 
 
   // nsIMenuParentInterface
   virtual nsIMenuFrame* GetCurrentMenuItem();
   NS_IMETHOD SetCurrentMenuItem(nsIMenuFrame* aMenuItem);
   virtual nsIMenuFrame* GetNextMenuItem(nsIMenuFrame* aStart);
   virtual nsIMenuFrame* GetPreviousMenuItem(nsIMenuFrame* aStart);
-  NS_IMETHOD SetActive(PRBool aActiveFlag) { return NS_OK; }; // We don't care.
-  NS_IMETHOD GetIsActive(PRBool& isActive) { isActive = PR_FALSE; return NS_OK; };
-  NS_IMETHOD IsMenuBar(PRBool& isMenuBar) { isMenuBar = PR_FALSE; return NS_OK; };
+  NS_IMETHOD SetActive(PRBool aActiveFlag) { return NS_OK; } // We don't care.
+  NS_IMETHOD GetIsActive(PRBool& isActive) { isActive = PR_FALSE; return NS_OK; }
+  NS_IMETHOD IsMenuBar(PRBool& isMenuBar) { isMenuBar = PR_FALSE; return NS_OK; }
   NS_IMETHOD ConsumeOutsideClicks(PRBool& aConsumeOutsideClicks);
   NS_IMETHOD ClearRecentlyRolledUp() {return NS_OK;}
   NS_IMETHOD RecentlyRolledUp(nsIMenuFrame *aMenuFrame, PRBool *aJustRolledUp) {*aJustRolledUp = PR_FALSE; return NS_OK;}
-  NS_IMETHOD SetIsContextMenu(PRBool aIsContextMenu) { mIsContextMenu = aIsContextMenu; return NS_OK; };
-  NS_IMETHOD GetIsContextMenu(PRBool& aIsContextMenu) { aIsContextMenu = mIsContextMenu; return NS_OK; };
+  NS_IMETHOD SetIsContextMenu(PRBool aIsContextMenu) { mIsContextMenu = aIsContextMenu; return NS_OK; }
+  NS_IMETHOD GetIsContextMenu(PRBool& aIsContextMenu) { aIsContextMenu = mIsContextMenu; return NS_OK; }
   
   NS_IMETHOD GetParentPopup(nsIMenuParent** aResult);
 
   // Closes up the chain of open cascaded menus.
   NS_IMETHOD DismissChain();
 
   // Hides the chain of cascaded menus without closing them up.
   NS_IMETHOD HideChain();
--- a/layout/xul/base/src/nsXULTooltipListener.h
+++ b/layout/xul/base/src/nsXULTooltipListener.h
@@ -61,39 +61,39 @@ class nsXULTooltipListener : public nsID
 public:
 
   // nsISupports
   NS_DECL_ISUPPORTS
 
   // nsIDOMMouseListener
   NS_IMETHOD MouseDown(nsIDOMEvent* aMouseEvent);
   NS_IMETHOD MouseUp(nsIDOMEvent* aMouseEvent);
-  NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; };
-  NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; };
+  NS_IMETHOD MouseClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseDblClick(nsIDOMEvent* aMouseEvent) { return NS_OK; }
+  NS_IMETHOD MouseOver(nsIDOMEvent* aMouseEvent) { return NS_OK; }
   NS_IMETHOD MouseOut(nsIDOMEvent* aMouseEvent);
 
   // nsIDOMMouseMotionListener
-  NS_IMETHOD DragMove(nsIDOMEvent* aMouseEvent) { return NS_OK; };
+  NS_IMETHOD DragMove(nsIDOMEvent* aMouseEvent) { return NS_OK; }
   NS_IMETHOD MouseMove(nsIDOMEvent* aMouseEvent);
 
   // nsIDOMKeyListener
   NS_IMETHOD KeyDown(nsIDOMEvent* aKeyEvent);
-  NS_IMETHOD KeyUp(nsIDOMEvent* aKeyEvent) { return NS_OK; };
-  NS_IMETHOD KeyPress(nsIDOMEvent* aKeyEvent) { return NS_OK; };
+  NS_IMETHOD KeyUp(nsIDOMEvent* aKeyEvent) { return NS_OK; }
+  NS_IMETHOD KeyPress(nsIDOMEvent* aKeyEvent) { return NS_OK; }
 
   // nsIDOMXULListener
-  NS_IMETHOD PopupShowing(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD PopupShown(nsIDOMEvent* aEvent) { return NS_OK; };
+  NS_IMETHOD PopupShowing(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD PopupShown(nsIDOMEvent* aEvent) { return NS_OK; }
   NS_IMETHOD PopupHiding(nsIDOMEvent* aEvent);
-  NS_IMETHOD PopupHidden(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD Close(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD Command(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD Broadcast(nsIDOMEvent* aEvent) { return NS_OK; };
-  NS_IMETHOD CommandUpdate(nsIDOMEvent* aEvent) { return NS_OK; };
+  NS_IMETHOD PopupHidden(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD Close(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD Command(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD Broadcast(nsIDOMEvent* aEvent) { return NS_OK; }
+  NS_IMETHOD CommandUpdate(nsIDOMEvent* aEvent) { return NS_OK; }
 
   // nsIDOMEventListener
   NS_IMETHOD HandleEvent(nsIDOMEvent* aEvent);
 
   nsresult AddTooltipSupport(nsIContent* aNode);
   nsresult RemoveTooltipSupport(nsIContent* aNode);
   static nsXULTooltipListener* GetInstance() {
     if (!mInstance)
--- a/layout/xul/base/src/tree/src/nsTreeBodyFrame.h
+++ b/layout/xul/base/src/tree/src/nsTreeBodyFrame.h
@@ -94,17 +94,17 @@ public:
   virtual PRBool ReflowFinished();
 
   // nsICSSPseudoComparator
   NS_IMETHOD PseudoMatches(nsIAtom* aTag, nsCSSSelector* aSelector, PRBool* aResult);
 
   // nsIScrollbarMediator
   NS_IMETHOD PositionChanged(nsISupports* aScrollbar, PRInt32 aOldIndex, PRInt32& aNewIndex);
   NS_IMETHOD ScrollbarButtonPressed(nsISupports* aScrollbar, PRInt32 aOldIndex, PRInt32 aNewIndex);
-  NS_IMETHOD VisibilityChanged(nsISupports* aScrollbar, PRBool aVisible) { Invalidate(); return NS_OK; };
+  NS_IMETHOD VisibilityChanged(nsISupports* aScrollbar, PRBool aVisible) { Invalidate(); return NS_OK; }
 
   // Overridden from nsIFrame to cache our pres context.
   NS_IMETHOD Init(nsIContent*     aContent,
                   nsIFrame*       aParent,
                   nsIFrame*       aPrevInFlow);
   virtual void Destroy();
 
   NS_IMETHOD GetCursor(const nsPoint& aPoint,
@@ -221,17 +221,17 @@ protected:
                             nsPresContext*      aPresContext, 
                             nsIRenderingContext& aRenderingContext, 
                             const nsRect&        aRect,
                             const nsRect&        aDirtyRect);
 
 
   PRInt32 GetLastVisibleRow() {
     return mTopRowIndex + mPageLength;
-  };
+  }
 
   // An internal hit test.  aX and aY are expected to be in twips in the
   // coordinate system of this frame.
   PRInt32 GetRowAt(nscoord aX, nscoord aY);
 
   // Check for bidi characters in the text, and if there are any, ensure
   // that the prescontext is in bidi mode.
   void CheckTextForBidi(nsAutoString& aText);
@@ -354,17 +354,17 @@ protected:
 
   // Mark ourselves dirty if we're a select widget
   void MarkDirtyIfSelect();
 
   void InvalidateDropFeedback(PRInt32 aRow, PRInt16 aOrientation) {
     InvalidateRow(aRow);
     if (aOrientation != nsITreeView::DROP_ON)
       InvalidateRow(aRow + aOrientation);
-  };
+  }
 
   already_AddRefed<nsTreeColumn> GetColumnImpl(nsITreeColumn* aUnknownCol) {
     if (!aUnknownCol)
       return nsnull;
 
     nsTreeColumn* col;
     aUnknownCol->QueryInterface(kTreeColumnImplCID, (void**)&col);
     return col;
@@ -445,22 +445,22 @@ protected: // Data Members
 
   // Cached row count.
   PRInt32 mRowCount;
 
   class Slots {
     public:
       Slots()
         : mValueArray(~PRInt32(0)) {
-      };
+      }
 
       ~Slots() {
         if (mTimer)
           mTimer->Cancel();
-      };
+      }
 
       friend class nsTreeBodyFrame;
 
     protected:
       // If the drop is actually allowed here or not.
       PRBool                   mDropAllowed;
 
       // The row the mouse is hovering over during a drop.
--- a/layout/xul/base/src/tree/src/nsTreeColumns.h
+++ b/layout/xul/base/src/tree/src/nsTreeColumns.h
@@ -69,38 +69,38 @@ protected:
    * y and height. May fail in case there's no frame for the column.
    */
   nsresult GetRect(nsIFrame* aBodyFrame, nscoord aY, nscoord aHeight,
                    nsRect* aResult);
 
   nsresult GetXInTwips(nsIFrame* aBodyFrame, nscoord* aResult);
   nsresult GetWidthInTwips(nsIFrame* aBodyFrame, nscoord* aResult);
 
-  void SetColumns(nsTreeColumns* aColumns) { mColumns = aColumns; };
+  void SetColumns(nsTreeColumns* aColumns) { mColumns = aColumns; }
 
-  const nsAString& GetId() { return mId; };
-  nsIAtom* GetAtom() { return mAtom; };
+  const nsAString& GetId() { return mId; }
+  nsIAtom* GetAtom() { return mAtom; }
 
-  PRInt32 GetIndex() { return mIndex; };
+  PRInt32 GetIndex() { return mIndex; }
 
-  PRBool IsPrimary() { return mIsPrimary; };
-  PRBool IsCycler() { return mIsCycler; };
-  PRBool IsEditable() { return mIsEditable; };
-  PRBool IsSelectable() { return mIsSelectable; };
-  PRBool Overflow() { return mOverflow; };
+  PRBool IsPrimary() { return mIsPrimary; }
+  PRBool IsCycler() { return mIsCycler; }
+  PRBool IsEditable() { return mIsEditable; }
+  PRBool IsSelectable() { return mIsSelectable; }
+  PRBool Overflow() { return mOverflow; }
 
-  PRInt16 GetType() { return mType; };
+  PRInt16 GetType() { return mType; }
 
-  PRInt8 GetCropStyle() { return mCropStyle; };
-  PRInt32 GetTextAlignment() { return mTextAlignment; };
+  PRInt8 GetCropStyle() { return mCropStyle; }
+  PRInt32 GetTextAlignment() { return mTextAlignment; }
 
-  nsTreeColumn* GetNext() { return mNext; };
-  nsTreeColumn* GetPrevious() { return mPrevious; };
-  void SetNext(nsTreeColumn* aNext) { NS_IF_ADDREF(mNext = aNext); };
-  void SetPrevious(nsTreeColumn* aPrevious) { mPrevious = aPrevious; };
+  nsTreeColumn* GetNext() { return mNext; }
+  nsTreeColumn* GetPrevious() { return mPrevious; }
+  void SetNext(nsTreeColumn* aNext) { NS_IF_ADDREF(mNext = aNext); }
+  void SetPrevious(nsTreeColumn* aPrevious) { mPrevious = aPrevious; }
 
 private:
   /**
    * Non-null nsIContent for the associated <treecol> element.
    */
   nsCOMPtr<nsIContent> mContent;
 
   nsTreeColumns* mColumns;
@@ -138,22 +138,22 @@ public:
   nsTreeColumns(nsITreeBoxObject* aTree);
   ~nsTreeColumns();
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSITREECOLUMNS
 
   friend class nsTreeBodyFrame;
 protected:
-  void SetTree(nsITreeBoxObject* aTree) { mTree = aTree; };
+  void SetTree(nsITreeBoxObject* aTree) { mTree = aTree; }
 
   // Builds our cache of column info.
   void EnsureColumns();
 
-  nsTreeColumn* GetFirstColumn() { EnsureColumns(); return mFirstColumn; };
+  nsTreeColumn* GetFirstColumn() { EnsureColumns(); return mFirstColumn; }
   nsTreeColumn* GetPrimaryColumn();
 
 private:
   nsITreeBoxObject* mTree;
 
   /**
    * The first column in the list of columns. All of the columns are supposed
    * to be "alive", i.e. have a frame. This is achieved by clearing the columns
--- a/layout/xul/base/src/tree/src/nsTreeImageListener.h
+++ b/layout/xul/base/src/tree/src/nsTreeImageListener.h
@@ -78,39 +78,39 @@ public:
   NS_IMETHOD FrameChanged(imgIContainer *aContainer, gfxIImageFrame *newframe,
                           nsRect * dirtyRect);
 
   NS_IMETHOD AddCell(PRInt32 aIndex, nsITreeColumn* aCol);
  
   friend class nsTreeBodyFrame;
 
 protected:
-  void UnsuppressInvalidation() { mInvalidationSuppressed = PR_FALSE; };
+  void UnsuppressInvalidation() { mInvalidationSuppressed = PR_FALSE; }
   void Invalidate();
 
 private:
   nsITreeBoxObject* mTree;
 
   // A guard that prevents us from recursive painting.
   PRBool mInvalidationSuppressed;
 
   class InvalidationArea {
     public:
       InvalidationArea(nsITreeColumn* aCol);
-      ~InvalidationArea() { delete mNext; };
+      ~InvalidationArea() { delete mNext; }
 
       friend class nsTreeImageListener;
 
     protected:
       void AddRow(PRInt32 aIndex);
-      nsITreeColumn* GetCol() { return mCol.get(); };
-      PRInt32 GetMin() { return mMin; };
-      PRInt32 GetMax() { return mMax; };
-      InvalidationArea* GetNext() { return mNext; };
-      void SetNext(InvalidationArea* aNext) { mNext = aNext; };
+      nsITreeColumn* GetCol() { return mCol.get(); }
+      PRInt32 GetMin() { return mMin; }
+      PRInt32 GetMax() { return mMax; }
+      InvalidationArea* GetNext() { return mNext; }
+      void SetNext(InvalidationArea* aNext) { mNext = aNext; }
 
     private:
       nsCOMPtr<nsITreeColumn> mCol;
       PRInt32                 mMin;
       PRInt32                 mMax;
       InvalidationArea*       mNext;
   };
 
--- a/layout/xul/base/src/tree/src/nsTreeSelection.cpp
+++ b/layout/xul/base/src/tree/src/nsTreeSelection.cpp
@@ -64,34 +64,34 @@ struct nsTreeRange
 
   nsTreeRange* mPrev;
   nsTreeRange* mNext;
 
   PRInt32 mMin;
   PRInt32 mMax;
 
   nsTreeRange(nsTreeSelection* aSel, PRInt32 aSingleVal)
-    :mSelection(aSel), mPrev(nsnull), mNext(nsnull), mMin(aSingleVal), mMax(aSingleVal) {};
+    :mSelection(aSel), mPrev(nsnull), mNext(nsnull), mMin(aSingleVal), mMax(aSingleVal) {}
   nsTreeRange(nsTreeSelection* aSel, PRInt32 aMin, PRInt32 aMax) 
-    :mSelection(aSel), mPrev(nsnull), mNext(nsnull), mMin(aMin), mMax(aMax) {};
+    :mSelection(aSel), mPrev(nsnull), mNext(nsnull), mMin(aMin), mMax(aMax) {}
 
-  ~nsTreeRange() { delete mNext; };
+  ~nsTreeRange() { delete mNext; }
 
   void Connect(nsTreeRange* aPrev = nsnull, nsTreeRange* aNext = nsnull) {
     if (aPrev)
       aPrev->mNext = this;
     else
       mSelection->mFirstRange = this;
 
     if (aNext)
       aNext->mPrev = this;
 
     mPrev = aPrev;
     mNext = aNext;
-  };
+  }
 
   nsresult RemoveRange(PRInt32 aStart, PRInt32 aEnd) {
     // This should so be a loop... sigh...
     // We start past the range to remove, so no more to remove
     if (aEnd < mMin)
       return NS_OK;
     // We are the last range to be affected
     if (aEnd < mMax) {
@@ -121,17 +121,17 @@ struct nsTreeRange
         next->mPrev = mPrev;
       mPrev = mNext = nsnull;
       delete this;
     } else if (aStart <= mMax) {
       // Just chop the end of the range off
       mMax = aStart - 1;
     }
     return next ? next->RemoveRange(aStart, aEnd) : NS_OK;
-  };
+  }
 
   nsresult Remove(PRInt32 aIndex) {
     if (aIndex >= mMin && aIndex <= mMax) {
       // We have found the range that contains us.
       if (mMin == mMax) {
         // Delete the whole range.
         if (mPrev)
           mPrev->mNext = mNext;
@@ -156,17 +156,17 @@ struct nsTreeRange
         newRange->Connect(this, mNext);
         mMax = aIndex - 1;
       }
     }
     else if (mNext)
       return mNext->Remove(aIndex);
 
     return NS_OK;
-  };
+  }
 
   nsresult Add(PRInt32 aIndex) {
     if (aIndex < mMin) {
       // We have found a spot to insert.
       if (aIndex + 1 == mMin)
         mMin = aIndex;
       else if (mPrev && mPrev->mMax+1 == aIndex)
         mPrev->mMax = aIndex;
@@ -190,41 +190,41 @@ struct nsTreeRange
         nsTreeRange* newRange = new nsTreeRange(mSelection, aIndex);
         if (!newRange)
           return NS_ERROR_OUT_OF_MEMORY;
 
         newRange->Connect(this, nsnull);
       }
     }
     return NS_OK;
-  };
+  }
 
   PRBool Contains(PRInt32 aIndex) {
     if (aIndex >= mMin && aIndex <= mMax)
       return PR_TRUE;
 
     if (mNext)
       return mNext->Contains(aIndex);
 
     return PR_FALSE;
-  };
+  }
 
   PRInt32 Count() {
     PRInt32 total = mMax - mMin + 1;
     if (mNext)
       total += mNext->Count();
     return total;
-  };
+  }
 
   void Invalidate() {
     if (mSelection->mTree)
       mSelection->mTree->InvalidateRange(mMin, mMax);
     if (mNext)
       mNext->Invalidate();
-  };
+  }
 
   void RemoveAllBut(PRInt32 aIndex) {
     if (aIndex >= mMin && aIndex <= mMax) {
 
       // Invalidate everything in this list.
       mSelection->mFirstRange->Invalidate();
 
       mMin = aIndex;
@@ -239,26 +239,26 @@ struct nsTreeRange
       
       if (first != this) {
         delete mSelection->mFirstRange;
         mSelection->mFirstRange = this;
       }
     }
     else if (mNext)
       mNext->RemoveAllBut(aIndex);
-  };
+  }
 
   void Insert(nsTreeRange* aRange) {
     if (mMin >= aRange->mMax)
       aRange->Connect(mPrev, this);
     else if (mNext)
       mNext->Insert(aRange);
     else 
       aRange->Connect(this, nsnull);
-  };
+  }
 };
 
 nsTreeSelection::nsTreeSelection(nsITreeBoxObject* aTree)
   : mTree(aTree),
     mSuppressed(PR_FALSE),
     mCurrentIndex(-1),
     mShiftSelectPivot(-1),
     mFirstRange(nsnull)
--- a/layout/xul/base/src/tree/src/nsTreeStyleCache.h
+++ b/layout/xul/base/src/tree/src/nsTreeStyleCache.h
@@ -45,19 +45,19 @@
 #include "nsICSSPseudoComparator.h"
 #include "nsStyleContext.h"
 
 class nsDFAState : public nsHashKey
 {
 public:
   PRUint32 mStateID;
 
-  nsDFAState(PRUint32 aID) :mStateID(aID) {};
+  nsDFAState(PRUint32 aID) :mStateID(aID) {}
 
-  PRUint32 GetStateID() { return mStateID; };
+  PRUint32 GetStateID() { return mStateID; }
 
   PRUint32 HashCode(void) const {
     return mStateID;
   }
 
   PRBool Equals(const nsHashKey *aKey) const {
     nsDFAState* key = (nsDFAState*)aKey;
     return key->mStateID == mStateID;
@@ -69,17 +69,17 @@ public:
 };
 
 class nsTransitionKey : public nsHashKey
 {
 public:
   PRUint32 mState;
   nsCOMPtr<nsIAtom> mInputSymbol;
 
-  nsTransitionKey(PRUint32 aState, nsIAtom* aSymbol) :mState(aState), mInputSymbol(aSymbol) {};
+  nsTransitionKey(PRUint32 aState, nsIAtom* aSymbol) :mState(aState), mInputSymbol(aSymbol) {}
 
   PRUint32 HashCode(void) const {
     // Make a 32-bit integer that combines the low-order 16 bits of the state and the input symbol.
     PRInt32 hb = mState << 16;
     PRInt32 lb = (NS_PTR_TO_INT32(mInputSymbol.get()) << 16) >> 16;
     return hb+lb;
   }
 
@@ -91,20 +91,20 @@ public:
   nsHashKey *Clone(void) const {
     return new nsTransitionKey(mState, mInputSymbol);
   }
 };
 
 class nsTreeStyleCache 
 {
 public:
-  nsTreeStyleCache() :mTransitionTable(nsnull), mCache(nsnull), mNextState(0) {};
-  ~nsTreeStyleCache() { Clear(); };
+  nsTreeStyleCache() :mTransitionTable(nsnull), mCache(nsnull), mNextState(0) {}
+  ~nsTreeStyleCache() { Clear(); }
 
-  void Clear() { delete mTransitionTable; mTransitionTable = nsnull; delete mCache; mCache = nsnull; mNextState = 0; };
+  void Clear() { delete mTransitionTable; mTransitionTable = nsnull; delete mCache; mCache = nsnull; mNextState = 0; }
 
   nsStyleContext* GetStyleContext(nsICSSPseudoComparator* aComparator,
                                   nsPresContext* aPresContext, 
                                   nsIContent* aContent, 
                                   nsStyleContext* aContext,
                                   nsIAtom* aPseudoElement,
                                   nsISupportsArray* aInputWord);
 
--- a/modules/libjar/nsJAR.h
+++ b/modules/libjar/nsJAR.h
@@ -98,17 +98,17 @@ class nsJAR : public nsIZipReader, publi
   // Allows nsJARInputStream to call the verification functions
   friend class nsJARInputStream;
 
   public:
 
     nsJAR();
     virtual ~nsJAR();
     
-    NS_DEFINE_STATIC_CID_ACCESSOR( NS_ZIPREADER_CID );
+    NS_DEFINE_STATIC_CID_ACCESSOR( NS_ZIPREADER_CID )
   
     NS_DECL_ISUPPORTS
 
     NS_DECL_NSIZIPREADER
 
     NS_DECL_NSIJAR
 
     nsresult GetJarPath(nsACString& aResult);
@@ -173,17 +173,17 @@ class nsJAR : public nsIZipReader, publi
  */
 class nsJARItem : public nsIZipEntry
 {
 public:
     NS_DECL_ISUPPORTS
     NS_DECL_NSIZIPENTRY
     
     nsJARItem(nsZipItem* aZipItem);
-    virtual ~nsJARItem() {};
+    virtual ~nsJARItem() {}
 
 private:
     PRUint32     mSize;             /* size in original file */
     PRUint32     mRealsize;         /* inflated size */
     PRUint32     mCrc32;
     PRUint16     mDate;
     PRUint16     mTime;
     PRUint8      mCompression;
--- a/modules/libjar/nsXPTZipLoader.h
+++ b/modules/libjar/nsXPTZipLoader.h
@@ -47,17 +47,17 @@
   { 0x320e073, 0x79c7, 0x4dae, \
       { 0x80, 0x55, 0x81, 0xbe, 0xd8, 0xb8, 0xdb, 0x96 } }
 
 
 class nsXPTZipLoader : public nsIXPTLoader
 {
  public:
     nsXPTZipLoader();
-    virtual ~nsXPTZipLoader() {};
+    virtual ~nsXPTZipLoader() {}
     
     NS_DECL_ISUPPORTS
     NS_DECL_NSIXPTLOADER
 
  private:
     nsIZipReader* GetZipReader(nsILocalFile* aFile);
     nsCOMPtr<nsIZipReaderCache> mCache;
 };
--- a/modules/libpref/src/nsPrefBranch.h
+++ b/modules/libpref/src/nsPrefBranch.h
@@ -67,17 +67,17 @@ public:
 
   nsPrefBranch(const char *aPrefRoot, PRBool aDefaultBranch);
   virtual ~nsPrefBranch();
 
   PRInt32 GetRootLength() { return mPrefRootLength; }
 
 protected:
   nsPrefBranch()	/* disallow use of this constructer */
-    { };
+    { }
 
   nsresult   GetDefaultFromPropertiesFile(const char *aPrefName, PRUnichar **return_buf);
   const char *getPrefName(const char *aPrefName);
   nsresult   getValidatedPrefName(const char *aPrefName, const char **_retval);
   void       freeObserverList(void);
 
 private:
   PRInt32         mPrefRootLength;
--- a/modules/oji/src/nsCNullSecurityContext.h
+++ b/modules/oji/src/nsCNullSecurityContext.h
@@ -84,17 +84,17 @@ public:
      *                   -- NS_FALSE otherwise.
      */
     NS_IMETHOD GetCertificateID(char* buf, int len);
 
    
     //////////////////////////////////////////////////////////////////////
     // from nsISecureJNI:
 
-    nsCNullSecurityContext() { };
+    nsCNullSecurityContext() { }
 };
 
 #endif // CSecurityContext_h___
 
 
 
 
 
--- a/modules/plugin/base/src/ns4xPlugin.cpp
+++ b/modules/plugin/base/src/ns4xPlugin.cpp
@@ -1057,17 +1057,17 @@ protected:
   nsIOutputStream *fStream;
   NPStream        fNPStream;
 
 public:
   ns4xStreamWrapper(nsIOutputStream* stream);
   ~ns4xStreamWrapper();
 
   void GetStream(nsIOutputStream* &result);
-  NPStream* GetNPStream(void) { return &fNPStream; };
+  NPStream* GetNPStream(void) { return &fNPStream; }
 };
 
 NS_IMPL_ISUPPORTS1(ns4xStreamWrapper, nsISupports)
 
 ns4xStreamWrapper::ns4xStreamWrapper(nsIOutputStream* stream)
   : fStream(stream)
 {
   NS_ASSERTION(stream != NULL, "bad stream");
--- a/modules/plugin/base/src/ns4xPluginInstance.h
+++ b/modules/plugin/base/src/ns4xPluginInstance.h
@@ -140,17 +140,17 @@ public:
 
     // Use Release() to destroy this
     virtual ~ns4xPluginInstance(void);
 
     // returns the state of mStarted
     PRBool IsStarted(void);
 
     // cache this 4.x plugin like an XPCOM plugin
-    nsresult SetCached(PRBool aCache) { mCached = aCache; return NS_OK; };
+    nsresult SetCached(PRBool aCache) { mCached = aCache; return NS_OK; }
 
     // Non-refcounting accessor for faster access to the peer.
     nsIPluginInstancePeer *Peer()
     {
         return mPeer;
     }
 
     already_AddRefed<nsPIDOMWindow> GetDOMWindow();
--- a/netwerk/base/src/nsUnicharStreamLoader.h
+++ b/netwerk/base/src/nsUnicharStreamLoader.h
@@ -50,17 +50,17 @@ class nsUnicharStreamLoader : public nsI
 {
 public:
   NS_DECL_ISUPPORTS
   NS_DECL_NSIUNICHARSTREAMLOADER
   NS_DECL_NSIREQUESTOBSERVER
   NS_DECL_NSISTREAMLISTENER
 
   nsUnicharStreamLoader() { }
-  virtual ~nsUnicharStreamLoader() {};
+  virtual ~nsUnicharStreamLoader() {}
 
   static NS_METHOD
   Create(nsISupports *aOuter, REFNSIID aIID, void **aResult);
 
 protected:
   /**
    * callback method used for ReadSegments
    */
--- a/netwerk/cookie/src/nsCookie.h
+++ b/netwerk/cookie/src/nsCookie.h
@@ -111,17 +111,17 @@ class nsCookie : public nsICookie2
                              nsInt64           aExpiry,
                              nsInt64           aLastAccessed,
                              PRBool            aIsSession,
                              PRBool            aIsSecure,
                              PRBool            aIsHttpOnly,
                              nsCookieStatus    aStatus,
                              nsCookiePolicy    aPolicy);
 
-    virtual ~nsCookie() {};
+    virtual ~nsCookie() {}
 
     // fast (inline, non-xpcom) getters
     inline const nsDependentCString Name()  const { return nsDependentCString(mName, mValue - 1); }
     inline const nsDependentCString Value() const { return nsDependentCString(mValue, mHost - 1); }
     inline const nsDependentCString Host()  const { return nsDependentCString(mHost, mPath - 1); }
     inline const nsDependentCString RawHost() const { return nsDependentCString(IsDomain() ? mHost + 1 : mHost, mPath - 1); }
     inline const nsDependentCString Path()  const { return nsDependentCString(mPath, mEnd); }
     inline nsInt64 Expiry()                 const { return mExpiry; }
--- a/netwerk/mime/src/nsMIMEHeaderParamImpl.h
+++ b/netwerk/mime/src/nsMIMEHeaderParamImpl.h
@@ -40,14 +40,14 @@
 #ifndef __nsmimeheaderparamimpl_h___
 #define __nsmimeheaderparamimpl_h___
 class nsMIMEHeaderParamImpl : public nsIMIMEHeaderParam
 {
 public:
   NS_DECL_ISUPPORTS
   NS_DECL_NSIMIMEHEADERPARAM
 
-  nsMIMEHeaderParamImpl() {};
-  virtual ~nsMIMEHeaderParamImpl() {};
+  nsMIMEHeaderParamImpl() {}
+  virtual ~nsMIMEHeaderParamImpl() {}
 };
 
 #endif 
 
--- a/parser/htmlparser/src/nsParserService.cpp
+++ b/parser/htmlparser/src/nsParserService.cpp
@@ -221,22 +221,22 @@ nsParserService::CheckQName(const nsAStr
   return NS_ERROR_DOM_NAMESPACE_ERR;
 }
 
 class nsMatchesTopic : public nsDequeFunctor{
   const nsAString& mString;
 public:
   PRBool matched;
   nsObserverEntry* entry;
-  nsMatchesTopic(const nsAString& aString):mString(aString),matched(PR_FALSE){};
+  nsMatchesTopic(const nsAString& aString):mString(aString),matched(PR_FALSE){}
   virtual void* operator()(void* anObject){
     entry=NS_STATIC_CAST(nsObserverEntry*, anObject);
     matched=mString.Equals(entry->mTopic);
     return matched ? nsnull : anObject;
-  };
+  }
 };
 
 // XXX This may be more efficient as a HashTable instead of linear search
 nsObserverEntry*
 nsParserService::GetEntry(const nsAString& aTopic)
 {
   if (!mHaveNotifiedCategoryObservers) {
     mHaveNotifiedCategoryObservers = PR_TRUE;
--- a/rdf/base/src/nsInMemoryDataSource.cpp
+++ b/rdf/base/src/nsInMemoryDataSource.cpp
@@ -2130,17 +2130,17 @@ InMemoryDataSource::SweepForwardArcsEntr
 // rdfIDataSource methods
 
 class VisitorClosure
 {
 public:
     VisitorClosure(rdfITripleVisitor* aVisitor) :
         mVisitor(aVisitor),
         mRv(NS_OK)
-    {};
+    {}
     rdfITripleVisitor* mVisitor;
     nsresult mRv;
 };
 
 PLDHashOperator PR_CALLBACK
 SubjectEnumerator(PLDHashTable* aTable, PLDHashEntryHdr* aHdr,
                   PRUint32 aNumber, void* aArg) {
     Entry* entry = NS_REINTERPRET_CAST(Entry*, aHdr);
@@ -2172,17 +2172,17 @@ InMemoryDataSource::VisitAllSubjects(rdf
 
     return cls.mRv;
 } 
 
 class TriplesInnerClosure
 {
 public:
     TriplesInnerClosure(nsIRDFNode* aSubject, VisitorClosure* aClosure) :
-        mSubject(aSubject), mOuter(aClosure) {};
+        mSubject(aSubject), mOuter(aClosure) {}
     nsIRDFNode* mSubject;
     VisitorClosure* mOuter;
 };
 
 PLDHashOperator PR_CALLBACK
 TriplesInnerEnumerator(PLDHashTable* aTable, PLDHashEntryHdr* aHdr,
                   PRUint32 aNumber, void* aArg) {
     Entry* entry = NS_REINTERPRET_CAST(Entry*, aHdr);
--- a/rdf/base/src/rdfTriplesSerializer.cpp
+++ b/rdf/base/src/rdfTriplesSerializer.cpp
@@ -51,17 +51,17 @@
 #include "rdfITripleVisitor.h"
 
 #include "nsIRDFResource.h"
 #include "nsIRDFLiteral.h"
 
 class TriplesVisitor : public rdfITripleVisitor
 {
 public:
-    TriplesVisitor(nsIOutputStream* aOut) : mOut(aOut) {};
+    TriplesVisitor(nsIOutputStream* aOut) : mOut(aOut) {}
     NS_DECL_RDFITRIPLEVISITOR
     NS_DECL_ISUPPORTS
 protected:
     nsresult writeResource(nsIRDFResource* aResource);
     nsIOutputStream* mOut;
 };
 
 NS_IMPL_ISUPPORTS1(TriplesVisitor, rdfITripleVisitor)
--- a/security/manager/ssl/src/nsCMS.h
+++ b/security/manager/ssl/src/nsCMS.h
@@ -66,17 +66,17 @@ public:
   NS_DECL_NSICMSMESSAGE
   NS_DECL_NSICMSMESSAGE2
 
   nsCMSMessage();
   nsCMSMessage(NSSCMSMessage* aCMSMsg);
   virtual ~nsCMSMessage();
   
   void referenceContext(nsIInterfaceRequestor* aContext) {m_ctx = aContext;}
-  NSSCMSMessage* getCMS() {return m_cmsMsg;};
+  NSSCMSMessage* getCMS() {return m_cmsMsg;}
 private:
   nsCOMPtr<nsIInterfaceRequestor> m_ctx;
   NSSCMSMessage * m_cmsMsg;
   NSSCMSSignerInfo* GetTopLevelSignerInfo();
   nsresult CommonVerifySignature(unsigned char* aDigestData, PRUint32 aDigestDataLen);
 
   nsresult CommonAsyncVerifySignature(nsISMimeVerificationListener *aListener,
                                       unsigned char* aDigestData, PRUint32 aDigestDataLen);
--- a/security/manager/ssl/src/nsKeyModule.h
+++ b/security/manager/ssl/src/nsKeyModule.h
@@ -84,15 +84,15 @@ class nsKeyObjectFactory : public nsIKey
 {
 public:
   nsKeyObjectFactory();
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSIKEYOBJECTFACTORY
 
 private:
-  ~nsKeyObjectFactory() {};  
+  ~nsKeyObjectFactory() {}
 
   // Disallow copy constructor
   nsKeyObjectFactory(nsKeyObjectFactory&);
 };
 
 #endif // _NS_KEYMODULE_H_
--- a/security/manager/ssl/src/nsNSSComponent.h
+++ b/security/manager/ssl/src/nsNSSComponent.h
@@ -187,17 +187,17 @@ class nsNSSComponent : public nsISignatu
                        public nsIEntropyCollector,
                        public nsINSSComponent,
                        public nsIObserver,
                        public nsSupportsWeakReference,
                        public nsITimerCallback,
                        public nsINSSErrorsService
 {
 public:
-  NS_DEFINE_STATIC_CID_ACCESSOR( NS_NSSCOMPONENT_CID );
+  NS_DEFINE_STATIC_CID_ACCESSOR( NS_NSSCOMPONENT_CID )
 
   nsNSSComponent();
   virtual ~nsNSSComponent();
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSISIGNATUREVERIFIER
   NS_DECL_NSIENTROPYCOLLECTOR
   NS_DECL_NSIOBSERVER
--- a/toolkit/components/downloads/src/nsDownloadManager.h
+++ b/toolkit/components/downloads/src/nsDownloadManager.h
@@ -117,32 +117,32 @@ protected:
   PRBool   NeedsUIUpdate() { return mListener != nsnull; }
   PRInt32  GetRetentionBehavior();
 
   static PRBool IsInFinalStage(DownloadState aState)
   {
     return aState == nsIDownloadManager::DOWNLOAD_NOTSTARTED ||
            aState == nsIDownloadManager::DOWNLOAD_DOWNLOADING ||
            aState == nsIXPInstallManagerUI::INSTALL_INSTALLING;
-  };
+  }
 
   static PRBool IsInProgress(DownloadState aState) 
   {
     return aState == nsIDownloadManager::DOWNLOAD_NOTSTARTED || 
            aState == nsIDownloadManager::DOWNLOAD_DOWNLOADING || 
            aState == nsIDownloadManager::DOWNLOAD_PAUSED || 
            aState == nsIXPInstallManagerUI::INSTALL_DOWNLOADING ||
            aState == nsIXPInstallManagerUI::INSTALL_INSTALLING;
-  };
+  }
 
   static PRBool CompletedSuccessfully(DownloadState aState)
   {
     return aState == nsIDownloadManager::DOWNLOAD_FINISHED || 
            aState == nsIXPInstallManagerUI::INSTALL_FINISHED;
-  };
+  }
 
 private:
   nsCOMPtr<nsIDownloadProgressListener> mListener;
   nsCOMPtr<nsIRDFDataSource> mDataSource;
   nsCOMPtr<nsIXPIProgressDialog> mXPIProgress;
   nsCOMPtr<nsIRDFContainer> mDownloadsContainer;
   nsCOMPtr<nsIRDFContainerUtils> mRDFContainerUtils;
   nsCOMPtr<nsIStringBundle> mBundle;
@@ -154,17 +154,17 @@ private:
 };
 
 class nsXPIProgressListener : public nsIXPIProgressDialog
 {
 public:
   NS_DECL_NSIXPIPROGRESSDIALOG
   NS_DECL_ISUPPORTS
 
-  nsXPIProgressListener() { };
+  nsXPIProgressListener() { }
   nsXPIProgressListener(nsDownloadManager* aManager);
   virtual ~nsXPIProgressListener();
 
   void AddDownload(nsIDownload* aDownload);
 
   PRBool HasActiveXPIOperations();
 
 protected:
@@ -182,18 +182,18 @@ class nsDownloadsDataSource : public nsI
 {
 public:
   NS_DECL_NSIRDFDATASOURCE
   NS_DECL_NSIRDFREMOTEDATASOURCE
   NS_DECL_CYCLE_COLLECTING_ISUPPORTS
   NS_DECL_CYCLE_COLLECTION_CLASS_AMBIGUOUS(nsDownloadsDataSource,
                                            nsIRDFDataSource)
 
-  nsDownloadsDataSource() { };
-  virtual ~nsDownloadsDataSource() { };
+  nsDownloadsDataSource() { }
+  virtual ~nsDownloadsDataSource() { }
 
   nsresult LoadDataSource();
 
 private:
   nsCOMPtr<nsIRDFDataSource> mInner;
 };
 
 class nsDownload : public nsIDownload
--- a/toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.cpp
+++ b/toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.cpp
@@ -68,17 +68,17 @@ public:
                       nsUrlClassifierStreamUpdater* aStreamUpdater);
   nsCOMPtr<nsIUrlClassifierDBService> mDBService;
 
   NS_DECL_ISUPPORTS
   NS_DECL_NSIREQUESTOBSERVER
   NS_DECL_NSISTREAMLISTENER
 
 private:
-  ~TableUpdateListener() {};
+  ~TableUpdateListener() {}
 
   // Callback when table updates complete.
   nsCOMPtr<nsIUrlClassifierCallback> mTableCallback;
   nsCOMPtr<nsIUrlClassifierCallback> mErrorCallback;
 
   // Reference to the stream updater that created this.
   nsUrlClassifierStreamUpdater *mStreamUpdater;
 };
--- a/toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.h
+++ b/toolkit/components/url-classifier/src/nsUrlClassifierStreamUpdater.h
@@ -61,17 +61,17 @@ public:
   NS_DECL_NSIOBSERVER
 
   // When the channel gets OnStopRequest, we call this
   // to reset the stream updater.
   void DownloadDone();
 
 private:
   // No subclassing
-  ~nsUrlClassifierStreamUpdater() {};
+  ~nsUrlClassifierStreamUpdater() {}
 
   // Disallow copy constructor
   nsUrlClassifierStreamUpdater(nsUrlClassifierStreamUpdater&);
 
   PRBool mIsUpdating;
   PRBool mInitialized;
   nsCOMPtr<nsIURI> mUpdateUrl;
   nsCOMPtr<nsIStreamListener> mListener;
--- a/tools/leaky/config.h
+++ b/tools/leaky/config.h
@@ -48,13 +48,13 @@
 #define REAL_MALLOC(_x) __libc_malloc(_x)
 #define REAL_REALLOC(_x,_y) __libc_realloc(_x,_y)
 #define REAL_FREE(_x) __libc_free(_x)
 
 extern "C" {
   void* __libc_malloc(size_t);
   void* __libc_realloc(void*, size_t);
   void __libc_free(void*);
-};
+}
 
 #endif /* linux */
 
 #endif /* config_h___ */
--- a/tools/leaky/libmalloc.h
+++ b/tools/leaky/libmalloc.h
@@ -95,12 +95,12 @@ extern u_long SetMallocFlags(u_long flag
 
 // Log reference count calls (addref/release)
 #define LIBMALLOC_LOG_RC 0x8
 
 void __log_addref(void* p, int oldrc, int newrc);
 void __log_release(void* p, int oldrc, int newrc);
 
 #ifdef __cplusplus
-}; /* end of extern "C" */
+} /* end of extern "C" */
 #endif
 
 #endif /* libmalloc_h___ */
--- a/widget/src/gtk2/nsDeviceContextSpecG.cpp
+++ b/widget/src/gtk2/nsDeviceContextSpecG.cpp
@@ -110,17 +110,17 @@ protected:
   static nsStringArray* mGlobalPrinterList;
 };
 
 #ifdef SET_PRINTER_FEATURES_VIA_PREFS
 /* "Prototype" for the new nsPrinterFeatures service */
 class nsPrinterFeatures {
 public:
   nsPrinterFeatures( const char *printername );
-  ~nsPrinterFeatures() {};
+  ~nsPrinterFeatures() {}
 
   /* Does this printer allow to set/change the paper size ? */
   void SetCanChangePaperSize( PRBool aCanSetPaperSize );
   /* Does this Mozilla print module allow set/change the paper size ? */
   void SetSupportsPaperSizeChange( PRBool aSupportsPaperSizeChange );
   /* Set number of paper size records and the records itself */
   void SetNumPaperSizeRecords( PRInt32 aCount );
   void SetPaperRecord( PRInt32 aIndex, const char *aName, PRInt32 aWidthMM, PRInt32 aHeightMM, PRBool aIsInch );
--- a/xpcom/glue/nsGenericFactory.h
+++ b/xpcom/glue/nsGenericFactory.h
@@ -43,17 +43,17 @@
 #include "nsIClassInfo.h"
 
 /**
  * Most factories follow this simple pattern, so why not just use a function
  * pointer for most creation operations?
  */
 class nsGenericFactory : public nsIGenericFactory, public nsIClassInfo {
 public:
-    NS_DEFINE_STATIC_CID_ACCESSOR(NS_GENERICFACTORY_CID);
+    NS_DEFINE_STATIC_CID_ACCESSOR(NS_GENERICFACTORY_CID)
 
     nsGenericFactory(const nsModuleComponentInfo *info = NULL);
     
     NS_DECL_ISUPPORTS
     NS_DECL_NSICLASSINFO
     
     /* nsIGenericFactory methods */
     NS_IMETHOD SetComponentInfo(const nsModuleComponentInfo *info);
--- a/xpcom/io/nsBinaryStream.h
+++ b/xpcom/io/nsBinaryStream.h
@@ -56,19 +56,19 @@
 #define NS_BINARYOUTPUTSTREAM_CONTRACTID "@mozilla.org/binaryoutputstream;1"
 #define NS_BINARYOUTPUTSTREAM_CLASSNAME "Binary Output Stream"
 
 // Derive from nsIObjectOutputStream so this class can be used as a superclass
 // by nsObjectOutputStream.
 class nsBinaryOutputStream : public nsIObjectOutputStream
 {
 public:
-    nsBinaryOutputStream() {};
+    nsBinaryOutputStream() {}
     // virtual dtor since subclasses call our Release()
-    virtual ~nsBinaryOutputStream() {};
+    virtual ~nsBinaryOutputStream() {}
 
 protected:
     // nsISupports methods
     NS_DECL_ISUPPORTS
 
     // nsIOutputStream methods
     NS_DECL_NSIOUTPUTSTREAM
 
@@ -96,19 +96,19 @@ protected:
 #define NS_BINARYINPUTSTREAM_CONTRACTID "@mozilla.org/binaryinputstream;1"
 #define NS_BINARYINPUTSTREAM_CLASSNAME "Binary Input Stream"
 
 // Derive from nsIObjectInputStream so this class can be used as a superclass
 // by nsObjectInputStream.
 class nsBinaryInputStream : public nsIObjectInputStream
 {
 public:
-    nsBinaryInputStream() {};
+    nsBinaryInputStream() {}
     // virtual dtor since subclasses call our Release()
-    virtual ~nsBinaryInputStream() {};
+    virtual ~nsBinaryInputStream() {}
 
 protected:
     // nsISupports methods
     NS_DECL_ISUPPORTS
 
     // nsIInputStream methods
     NS_DECL_NSIINPUTSTREAM
 
--- a/xpcom/io/nsScriptableInputStream.h
+++ b/xpcom/io/nsScriptableInputStream.h
@@ -52,20 +52,20 @@ class nsScriptableInputStream : public n
 public:
     // nsISupports methods
     NS_DECL_ISUPPORTS
 
     // nsIScriptableInputStream methods
     NS_DECL_NSISCRIPTABLEINPUTSTREAM
 
     // nsScriptableInputStream methods
-    nsScriptableInputStream() {};
+    nsScriptableInputStream() {}
 
     static NS_METHOD
     Create(nsISupports *aOuter, REFNSIID aIID, void **aResult);
 
 private:
-    ~nsScriptableInputStream() {};
+    ~nsScriptableInputStream() {}
 
     nsCOMPtr<nsIInputStream> mInputStream;
 };
 
 #endif // ___nsscriptableinputstream___h_
--- a/xpinstall/src/nsSoftwareUpdate.h
+++ b/xpinstall/src/nsSoftwareUpdate.h
@@ -24,17 +24,17 @@ class nsIPrincipal;
 #include "nsTopProgressNotifier.h"
 
 class nsSoftwareUpdate: public nsISoftwareUpdate,
                         public nsPIXPIStubHook,
                         public nsIObserver
 {
     public:
 
-        NS_DEFINE_STATIC_CID_ACCESSOR( NS_SoftwareUpdate_CID );
+        NS_DEFINE_STATIC_CID_ACCESSOR( NS_SoftwareUpdate_CID )
 
         static nsSoftwareUpdate *GetInstance();
 
         /** GetProgramDirectory
          *  Information used within the XPI module -- not
          *  available through any interface
          */
         static nsIFile* GetProgramDirectory() { return mProgramDir; }