Bug 583727 DOMCI_CASTABLE_INTERFACE: macro redefinition; r=peterv a=jst
authortimeless@mozdev.org
Mon, 02 Aug 2010 16:52:12 +0300
changeset 61951 bff2cdc499f6042e554463cd09aa939931be64e2
parent 61950 c14b6fd8ed6d5626f1a157c08bcf35c1923513c2
child 61952 2a73f1addf2f0253e54a9363c2f9eb5b2876a40b
push idunknown
push userunknown
push dateunknown
reviewerspeterv, jst
bugs583727
milestone2.0b12pre
Bug 583727 DOMCI_CASTABLE_INTERFACE: macro redefinition; r=peterv a=jst
dom/base/nsDOMClassInfoID.h
js/src/xpconnect/src/nsDOMQS.h
--- a/dom/base/nsDOMClassInfoID.h
+++ b/dom/base/nsDOMClassInfoID.h
@@ -68,16 +68,17 @@ enum nsDOMClassInfoID {
  * DOMCI_CASTABLE_INTERFACES(extra). For every interface there will be one
  * call to DOMCI_CASTABLE_INTERFACE with the bit that it corresponds to and
  * the extra argument that was passed in to DOMCI_CASTABLE_INTERFACES.
  *
  * WARNING: Be very careful when adding interfaces to this list. Every object
  *          that implements one of these interfaces must be directly castable
  *          to that interface from the *canonical* nsISupports!
  */
+#undef DOMCI_CASTABLE_INTERFACE
 #define DOMCI_CASTABLE_INTERFACES(_extra)                                     \
 DOMCI_CASTABLE_INTERFACE(nsINode, nsINode, 0, _extra)                         \
 DOMCI_CASTABLE_INTERFACE(nsIContent, nsIContent, 1, _extra)                   \
 DOMCI_CASTABLE_INTERFACE(nsIDocument, nsIDocument, 2, _extra)                 \
 DOMCI_CASTABLE_INTERFACE(nsINodeList, nsINodeList, 3, _extra)                 \
 DOMCI_CASTABLE_INTERFACE(nsICSSDeclaration, nsICSSDeclaration, 4, _extra)     \
 DOMCI_CASTABLE_INTERFACE(nsGenericTextNode, nsGenericTextNode, 5, _extra)     \
 DOMCI_CASTABLE_INTERFACE(nsDocument, nsIDocument, 6, _extra)                  \
--- a/js/src/xpconnect/src/nsDOMQS.h
+++ b/js/src/xpconnect/src/nsDOMQS.h
@@ -73,16 +73,17 @@ xpc_qsUnwrapArg<_interface>(JSContext *c
                                                    &rv);                      \
     if(NS_SUCCEEDED(rv))                                                      \
         *ppArg = static_cast<_interface*>(static_cast<_base*>(native));       \
     return rv;                                                                \
 }
 
 #undef DOMCI_CASTABLE_INTERFACE
 
+#undef DOMCI_CASTABLE_INTERFACE
 #define DOMCI_CASTABLE_INTERFACE(_interface, _base, _bit, _extra)             \
   DEFINE_UNWRAP_CAST(_interface, _base, _bit)
 
 DOMCI_CASTABLE_INTERFACES(unused)
 
 #undef DOMCI_CASTABLE_INTERFACE
 
 // Ideally we'd just add nsGenericElement to the castable interfaces, but for