diff --git a/Interface.cpp b/Interface.cpp
index e0c4461..52e9a98 100644
--- a/Interface.cpp
+++ b/Interface.cpp
@@ -114,6 +114,11 @@
 
 
 bool Interface::addMethod(Method *method) {
+    if (isIBase()) {
+        // ignore addMethod requests for IBase; they are all HIDL reserved methods.
+        return true;
+    }
+
     CHECK(!method->isHidlReserved());
     if (lookupMethod(method->name()) != nullptr) {
         LOG(ERROR) << "Redefinition of method " << method->name();
@@ -188,7 +193,9 @@
         }
     }
     for (Method *reservedMethod : hidlReservedMethods()) {
-        v.push_back(InterfaceAndMethod(this, reservedMethod));
+        v.push_back(InterfaceAndMethod(
+                *chain.rbegin(), // IBase
+                reservedMethod));
     }
     return v;
 }
