Index: wp-admin/includes/post.php
===================================================================
--- wp-admin/includes/post.php	(revision 21097)
+++ wp-admin/includes/post.php	(working copy)
@@ -1114,6 +1114,22 @@
 		}
 	}
 
+	// Permalink conflict error messages.
+	if ( $new_slug && $new_slug != $post_name_abridged ) {
+		echo '<div id="message" class="error"><p>';
+		$conflicting_post = $wpdb->get_row($wpdb->prepare("SELECT * FROM $wpdb->posts WHERE post_name = %s;",$new_slug)); 
+		if ( $conflicting_post->post_status == 'trash' ) {
+			_e('There was a permalink conflict with the post "' . $post->post_title . '" in the trash. <a href="edit.php?post_status=trash&amp;post_type=' . $post->post_type . '">View Trash</a>');
+		} else {
+			$conflicting_post_edit_link_url = get_edit_post_link($conflicting_post->ID);
+			$post_type_obj = get_post_type_object( $post->post_type );
+			$conflicting_post_edit_link_html = '<a class="post-edit-link" href="' . $conflicting_post_edit_link_url . '" title="' . esc_attr( $post_type_obj->labels->edit_item ) . '">' . $conflicting_post->post_title . '</a>';	
+			if ( !empty($conflicting_post) )
+				_e('There was a permalink conflict with the post ' . $conflicting_post_edit_link_html . ', a unique numerical string has been appended to the permalink.'); 
+		}
+		echo '</p></div>';
+	}
+
 	$post_name_html = '<span id="editable-post-name" title="' . $title . '">' . $post_name_abridged . '</span>';
 	$display_link = str_replace(array('%pagename%','%postname%'), $post_name_html, $permalink);
 	$view_link = str_replace(array('%pagename%','%postname%'), $post_name, $permalink);
Index: wp-admin/css/wp-admin.dev.css
===================================================================
--- wp-admin/css/wp-admin.dev.css	(revision 21097)
+++ wp-admin/css/wp-admin.dev.css	(working copy)
@@ -2932,7 +2932,6 @@
 }
 
 #edit-slug-box {
-	height: 1em;
 	margin-top: 8px;
 	padding: 0 10px;
 }
