Index: src/wp-includes/default-filters.php
===================================================================
--- src/wp-includes/default-filters.php	(revision 40977)
+++ src/wp-includes/default-filters.php	(working copy)
@@ -421,6 +421,9 @@
 add_action( 'wp_trash_post',      '_reset_front_page_settings_for_post' );
 add_action( 'change_locale', 'create_initial_post_types' );
 
+add_filter( 'post_type_supports', 'post_type_supports_core' );
+add_filter( 'post_type_supports', 'post_type_supports_unknown_registered', 12 );
+
 // Post Formats
 add_filter( 'request', '_post_format_request' );
 add_filter( 'term_link', '_post_format_link', 10, 3 );
Index: src/wp-includes/post.php
===================================================================
--- src/wp-includes/post.php	(revision 40977)
+++ src/wp-includes/post.php	(working copy)
@@ -1586,6 +1586,58 @@
 }
 
 /**
+ * Lists all the currently registered post type supports options
+ *
+ * @return array all the supports options that could possibly be chosen 
+ */
+function get_all_post_type_supports_features() {
+	$supports_options = array();
+	$supports_options = apply_filters( "post_type_supports", $supports_options );
+	return $supports_options;
+}
+
+/**
+ * Returns the 'core' options used in add_post_type_supports()
+ *
+ * The full set may include features that are only available for certain post types
+ * 
+ * @param array $supports_options
+ * @return array The core set
+ */
+function post_type_supports_core( $supports_options ) {
+	$supports_options['author'] = __( "Author" );
+	$supports_options['comments'] = __( "Comments" );
+	$supports_options['custom-fields'] = __( "Custom fields" );
+	$supports_options['editor'] = __( "Content editor" );
+	$supports_options['excerpt'] = __( "Excerpt" );
+	$supports_options['page-attributes'] = __( "Page attributes" );
+	$supports_options['post-formats'] = __( "Post formats" );
+	$supports_options['revisions'] = __( "Revisions" );
+	$supports_options['thumbnail'] = __( "Thumbnail - featured image" );
+	$supports_options['trackbacks'] = __( "Trackbacks" );
+  $supports_options['title'] = __( "Title" );
+	return( $supports_options );
+}
+
+/**
+ * Implements "post_type_supports" to add any remaining registered ones
+ *
+ * @param array $supports_options
+ * @return array Updated with the 'unknown' values
+ */
+function post_type_supports_unknown_registered( $supports_options ) {
+	global $_wp_post_type_features;
+	foreach ( $_wp_post_type_features as $post_type => $features ) {
+		foreach ( $features as $key => $value ) {
+			if ( !isset( $supports_options[ $key ] ) ) {
+				$supports_options[ $key ] = $key;
+			}
+		}
+	}
+	return( $supports_options );
+}
+
+/**
  * Update the post type for the post ID.
  *
  * The page or post cache will be cleaned for the post ID.
