diff --git a/openstack/objectstorage/v1/accounts/requests.go b/openstack/objectstorage/v1/accounts/requests.go
index 57616c0..b5beef2 100644
--- a/openstack/objectstorage/v1/accounts/requests.go
+++ b/openstack/objectstorage/v1/accounts/requests.go
@@ -43,6 +43,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // UpdateOptsBuilder allows extensions to add additional headers to the Update
@@ -95,4 +96,5 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
diff --git a/openstack/objectstorage/v1/containers/requests.go b/openstack/objectstorage/v1/containers/requests.go
index ba11916..a668673 100644
--- a/openstack/objectstorage/v1/containers/requests.go
+++ b/openstack/objectstorage/v1/containers/requests.go
@@ -109,11 +109,13 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // Delete is a function that deletes a container.
 func Delete(c *gophercloud.ServiceClient, containerName string) (r DeleteResult) {
 	_, r.Err = c.Delete(deleteURL(c, containerName), nil)
+	return
 }
 
 // UpdateOptsBuilder allows extensions to add additional parameters to the
@@ -171,6 +173,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // Get is a function that retrieves the metadata of a container. To extract just
@@ -184,4 +187,5 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
diff --git a/openstack/objectstorage/v1/objects/requests.go b/openstack/objectstorage/v1/objects/requests.go
index 5f8e7c1..99ad9a7 100644
--- a/openstack/objectstorage/v1/objects/requests.go
+++ b/openstack/objectstorage/v1/objects/requests.go
@@ -131,6 +131,7 @@
 		r.Body = resp.Body
 	}
 	r.Err = err
+	return
 }
 
 // CreateOptsBuilder allows extensions to add additional parameters to the
@@ -215,6 +216,7 @@
 	if resp != nil {
 		r.Header = resp.Header
 	}
+	return
 }
 
 // CopyOptsBuilder allows extensions to add additional parameters to the
@@ -267,6 +269,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // DeleteOptsBuilder allows extensions to add additional parameters to the
@@ -302,6 +305,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // GetOptsBuilder allows extensions to add additional parameters to the
@@ -341,6 +345,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // UpdateOptsBuilder allows extensions to add additional parameters to the
@@ -395,6 +400,7 @@
 		r.Header = resp.Header
 	}
 	r.Err = err
+	return
 }
 
 // HTTPMethod represents an HTTP method string (e.g. "GET").
