diff --git a/wp-includes/meta.php b/wp-includes/meta.php
index ff32086..bfbc61b 100644
--- a/wp-includes/meta.php
+++ b/wp-includes/meta.php
@@ -1005,7 +1005,7 @@ function sanitize_meta( $meta_key, $meta_value, $object_type, $object_subtype =
  * }
  * @param string|array $deprecated Deprecated. Use `$args` instead.
  *
- * @return bool|WP_error True if the meta key was successfully registered in the global array, WP_Error if not.
+ * @return bool|_doing_it_wrong True if the meta key was successfully registered in the global array, _doing_it_wrong() if not.
  *                       Registering a meta key with distinct sanitize and auth callbacks will fire those
  *                       callbacks, but will not add to the global registry as it requires a subtype.
  */
@@ -1017,7 +1017,8 @@ function register_meta( $object_type, $meta_key, $args, $deprecated = null ) {
 	}
 
 	if ( ! wp_object_type_exists( $object_type ) ) {
-		return new WP_Error( 'register_meta_failed', __( 'Meta can only be registered against a core object type.' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Meta can only be registered against a core object type.' ), '4.6.0' );
+		return false;
 	}
 
 	$defaults = array(
@@ -1065,7 +1066,8 @@ function register_meta( $object_type, $meta_key, $args, $deprecated = null ) {
 
 	// Object subtype is required if using the args style of registration
 	if ( ! $has_old_sanitize_cb && ! $has_old_auth_cb && empty( $args['object_subtype'] ) ) {
-		return new WP_Error( 'register_meta_failed', __( 'Meta must be registered against an object subtype.' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Meta must be registered against an object subtype.' ), '4.6.0' );
+		return false;
 	}
 
 	// If `auth_callback` is not provided, fall back to `is_protected_meta()`.
@@ -1109,7 +1111,8 @@ function register_meta( $object_type, $meta_key, $args, $deprecated = null ) {
 		return true;
 	}
 
-	return new WP_Error( 'register_meta_failed', __( 'Sanitize and auth callbacks registered; meta key not registered.' ) );
+	_doing_it_wrong( __FUNCTION__, __( 'Sanitize and auth callbacks are already registered, but meta key not yet registered.' ), '4.6.0' );
+	return false;
 }
 
 /**
@@ -1121,8 +1124,8 @@ function register_meta( $object_type, $meta_key, $args, $deprecated = null ) {
  * @param string $object_subtype The subtype of the object type.
  * @param string $meta_key       The meta key.
  *
- * @return bool|WP_error True if the meta key is registered to the object type and subtype. False if not.
- *                       WP_Error if an invalid object type is passed.
+ * @return bool|_doing_it_wrong True if the meta key is registered to the object type and subtype. False if not.
+ *                       _doing_it_wrong() if an invalid object type is passed.
  */
 function registered_meta_key_exists( $object_type, $object_subtype, $meta_key ) {
 	global $wp_meta_keys;
@@ -1133,7 +1136,8 @@ function registered_meta_key_exists( $object_type, $object_subtype, $meta_key )
 
 	// Only specific core object types are supported.
 	if ( ! wp_object_type_exists( $object_type ) ) {
-		return new WP_Error( 'invalid_meta_key', __( 'Invalid meta key. Not a core object type.' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Object type is invalid, it must be a core object type.' ), '4.6.0' );
+		return false;
 	}
 
 	if ( ! isset( $wp_meta_keys[ $object_type ] ) ) {
@@ -1160,13 +1164,14 @@ function registered_meta_key_exists( $object_type, $object_subtype, $meta_key )
  * @param string $object_subtype The subtype of the object type.
  * @param string $meta_key       The meta key.
  *
- * @return bool|WP_Error True if successful. WP_Error if the meta key is invalid.
+ * @return bool|_doing_it_wrong True if successful. _doing_it_wrong() if the meta key is invalid.
  */
 function unregister_meta_key( $object_type, $object_subtype, $meta_key ) {
 	global $wp_meta_keys;
 
 	if ( ! registered_meta_key_exists( $object_type, $object_subtype, $meta_key ) ) {
-		return new WP_Error( 'invalid_meta_key', __( 'Invalid meta key' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Invalid meta key' ), '4.6.0' );
+		return false;
 	}
 
 	$args = $wp_meta_keys[ $object_type ][ $object_subtype ][ $meta_key ];
@@ -1232,22 +1237,25 @@ function get_registered_meta_keys( $object_type, $object_subtype = '' ) {
  * @param string $meta_key       Optional. Registered metadata key. If not specified, retrieve all registered
  *                               metadata for the specified object.
  *
- * @return mixed|WP_Error
+ * @return mixed|_doing_it_wrong
  */
 function get_registered_metadata( $object_type, $object_subtype, $object_id, $meta_key = '' ) {
 	global $wp_meta_keys;
 
 	if ( ! is_array( $wp_meta_keys ) ) {
-		return new WP_Error( 'invalid_meta_key', __( 'Invalid meta key. Not registered.' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Invalid meta key, it is not registered yet.' ), '4.6.0' );
+		return false;
 	}
 
 	if ( ! wp_object_type_exists( $object_type ) ) {
-		return new WP_Error( 'invalid_meta_key', __( 'Invalid meta key. Not a core object type.' ) );
+		_doing_it_wrong( __FUNCTION__, __( 'Object type is invalid, it must be a core object type.' ), '4.6.0' );
+		return false;
 	}
 
 	if ( ! empty( $meta_key ) ) {
 		if ( ! registered_meta_key_exists( $object_type, $object_subtype, $meta_key ) ) {
-			return new WP_Error( 'invalid_meta_key', __( 'Invalid meta key. Not registered.' ) );
+			_doing_it_wrong( __FUNCTION__, __( 'Invalid meta key, it is not registered yet.' ), '4.6.0' );
+			return false;
 		}
 		$meta_keys = get_registered_meta_keys( $object_type, $object_subtype );
 		$meta_key_data = $meta_keys[ $meta_key ];
