diff --git a/core/includes/form.inc b/core/includes/form.inc
index b9180b2..8aeb470 100644
--- a/core/includes/form.inc
+++ b/core/includes/form.inc
@@ -543,7 +543,7 @@ function form_get_cache($form_build_id, &$form_state) {
         foreach ($form_state['build_info']['files'] as $file) {
           if (is_array($file)) {
             $file += array('type' => 'inc', 'name' => $file['module']);
-            module_load_include($file['type'], $file['module'], $file['name']);
+            module_load_include($file['module'], $file['name'], $file['name']);
           }
           elseif (file_exists($file)) {
             require_once DRUPAL_ROOT . '/' . $file;
@@ -641,7 +641,7 @@ function form_load_include(&$form_state, $type, $module, $name = NULL) {
   }
   if (!isset($form_state['build_info']['files']["$module:$name.$type"])) {
     // Only add successfully included files to the form state.
-    if ($result = module_load_include($type, $module, $name)) {
+    if ($result = module_load_include($module, $type, $name)) {
       $form_state['build_info']['files']["$module:$name.$type"] = array(
         'type' => $type,
         'module' => $module,
diff --git a/core/includes/install.core.inc b/core/includes/install.core.inc
index 6617366..70fa082 100644
--- a/core/includes/install.core.inc
+++ b/core/includes/install.core.inc
@@ -1757,7 +1757,7 @@ function install_import_translations(&$install_state) {
 
     // Set up a batch to import translations for the newly added language.
     _install_prepare_import();
-    module_load_include('fetch.inc', 'locale');
+    module_load_include('locale', 'fetch.inc');
     if ($batch = locale_translation_batch_fetch_build(array(), array($langcode))) {
       return $batch;
     }
@@ -1781,7 +1781,7 @@ function _install_prepare_import() {
       'status' => 1,
     ))
     ->execute();
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'compare.inc');
   locale_translation_check_projects_local(array('drupal'), array($install_state['parameters']['langcode']));
 }
 
@@ -1845,8 +1845,8 @@ function install_configure_form($form, &$form_state, &$install_state) {
  *   The batch definition, if there are language files to import.
  */
 function install_import_translations_remaining(&$install_state) {
-  module_load_include('fetch.inc', 'locale');
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'fetch.inc');
+  module_load_include('locale', 'compare.inc');
 
   // Build a fresh list of installed projects. When more projects than core are
   // installed, their translations will be downloaded (if required) and imported
diff --git a/core/includes/language.inc b/core/includes/language.inc
index 74d5752..9ecd98b 100644
--- a/core/includes/language.inc
+++ b/core/includes/language.inc
@@ -77,7 +77,7 @@
  * @code
  * function mymodule_language_negotiation_info_alter(&$negotiation_info) {
  *   // Replace the core function with our own function.
- *   module_load_include('language', 'inc', 'language.negotiation');
+ *   module_load_include('language', 'negotiation.inc');
  *   $negotiation_info[LANGUAGE_NEGOTIATION_URL]['callbacks']['negotiation'] = 'mymodule_from_url';
  *   $negotiation_info[LANGUAGE_NEGOTIATION_URL]['file'] = drupal_get_path('module', 'mymodule') . '/mymodule.module';
  * }
@@ -85,7 +85,7 @@
  * function mymodule_from_url($languages) {
  *   // Use the core URL language negotiation method to get a valid language
  *   // code.
- *   module_load_include('language', 'inc', 'language.negotiation');
+ *   module_load_include('language', 'negotiation.inc');
  *   $langcode = language_from_url($languages);
  *
  *   // If we are on an administrative path, override with the default language.
diff --git a/core/includes/module.inc b/core/includes/module.inc
index 85c0240..5282d2d 100644
--- a/core/includes/module.inc
+++ b/core/includes/module.inc
@@ -156,7 +156,7 @@ function module_load_install($module) {
   // Make sure the installation API is available
   include_once DRUPAL_ROOT . '/core/includes/install.inc';
 
-  return module_load_include('install', $module);
+  return module_load_include($module, 'install');
 }
 
 /**
@@ -165,9 +165,9 @@ function module_load_install($module) {
  * Examples:
  * @code
  *   // Load node.admin.inc from the node module.
- *   module_load_include('inc', 'node', 'node.admin');
+ *   module_load_include('node', 'admin.inc');
  *   // Load content_types.inc from the node module.
- *   module_load_include('inc', 'node', 'content_types');
+ *   module_load_include('node', 'inc', 'content_types');
  * @endcode
  *
  * Do not use this function to load an install file, use module_load_install()
@@ -175,10 +175,10 @@ function module_load_install($module) {
  * Drupal to be fully bootstrapped, use require_once DRUPAL_ROOT . '/path/file'
  * instead.
  *
- * @param $type
- *   The include file's type (file extension).
  * @param $module
  *   The module to which the include file belongs.
+ * @param $type
+ *   The include file's type (file extension).
  * @param $name
  *   (optional) The base file name (without the $type extension). If omitted,
  *   $module is used; i.e., resulting in "$module.$type" by default.
@@ -191,7 +191,7 @@ function module_load_install($module) {
  *   functionality entirely into the module_handler while keeping the ability to
  *   load the files of disabled modules.
  */
-function module_load_include($type, $module, $name = NULL) {
+function module_load_include($module, $type, $name = NULL) {
   if (!isset($name)) {
     $name = $module;
   }
diff --git a/core/lib/Drupal/Core/Updater/Module.php b/core/lib/Drupal/Core/Updater/Module.php
index acc3028..8250f47 100644
--- a/core/lib/Drupal/Core/Updater/Module.php
+++ b/core/lib/Drupal/Core/Updater/Module.php
@@ -79,7 +79,7 @@ public function getSchemaUpdates() {
     if (!self::canUpdate($this->name)) {
       return array();
     }
-    module_load_include('install', $this->name);
+    module_load_include($this->name, 'install');
 
     if (!$updates = drupal_get_schema_versions($this->name)) {
       return array();
diff --git a/core/modules/forum/forum.admin.inc b/core/modules/forum/forum.admin.inc
index 001dd97..226c019 100644
--- a/core/modules/forum/forum.admin.inc
+++ b/core/modules/forum/forum.admin.inc
@@ -230,7 +230,7 @@ function forum_forum_delete($form, &$form_state) {
  * @ingroup forms
  */
 function forum_overview($form, &$form_state) {
-  module_load_include('inc', 'taxonomy', 'taxonomy.admin');
+  module_load_include('taxonomy', 'admin.inc');
   $config = config('forum.settings');
 
   $vid = $config->get('vocabulary');
diff --git a/core/modules/image/image.module b/core/modules/image/image.module
index f95c633..8f49998 100644
--- a/core/modules/image/image.module
+++ b/core/modules/image/image.module
@@ -665,7 +665,7 @@ function image_style_create_derivative($style, $source, $destination) {
  *   pixels.
  */
 function image_style_transform_dimensions($style_name, array &$dimensions) {
-  module_load_include('inc', 'image', 'image.effects');
+  module_load_include('image', 'effects.inc');
   $style = entity_load('image_style', $style_name);
 
   if (!empty($style->effects)) {
@@ -953,7 +953,7 @@ function image_effect_delete($style, $effect) {
  *   TRUE on success. FALSE if unable to perform the image effect on the image.
  */
 function image_effect_apply($image, $effect) {
-  module_load_include('inc', 'image', 'image.effects');
+  module_load_include('image', 'effects.inc');
   $function = $effect['effect callback'];
   return $function($image, $effect['data']);
 }
diff --git a/core/modules/image/lib/Drupal/image/Tests/ImageEffectsTest.php b/core/modules/image/lib/Drupal/image/Tests/ImageEffectsTest.php
index 7f24796..4d08157 100644
--- a/core/modules/image/lib/Drupal/image/Tests/ImageEffectsTest.php
+++ b/core/modules/image/lib/Drupal/image/Tests/ImageEffectsTest.php
@@ -33,7 +33,7 @@ public static function getInfo() {
   function setUp() {
     parent::setUp();
 
-    module_load_include('inc', 'image', 'image.effects');
+    module_load_include('image', 'effects.inc');
   }
 
   /**
diff --git a/core/modules/locale/lib/Drupal/locale/Tests/LocaleUpdateTest.php b/core/modules/locale/lib/Drupal/locale/Tests/LocaleUpdateTest.php
index e5dccbd..baf0545 100644
--- a/core/modules/locale/lib/Drupal/locale/Tests/LocaleUpdateTest.php
+++ b/core/modules/locale/lib/Drupal/locale/Tests/LocaleUpdateTest.php
@@ -59,8 +59,8 @@ public static function getInfo() {
 
   function setUp() {
     parent::setUp();
-    module_load_include('compare.inc', 'locale');
-    module_load_include('fetch.inc', 'locale');
+    module_load_include('locale', 'compare.inc');
+    module_load_include('locale', 'fetch.inc');
     $admin_user = $this->drupalCreateUser(array('administer modules', 'administer site configuration', 'administer languages', 'access administration pages', 'translate interface'));
     $this->drupalLogin($admin_user);
     // We use German as test language. This language must match the translation
@@ -309,7 +309,7 @@ function assertTranslation($source, $translation, $langcode, $message = '') {
    * Checks if a list of translatable projects gets build.
    */
   function testUpdateProjects() {
-    module_load_include('compare.inc', 'locale');
+    module_load_include('locale', 'compare.inc');
 
     // Make the test modules look like a normal custom module. i.e. make the
     // modules not hidden. locale_test_system_info_alter() modifies the project
@@ -328,7 +328,7 @@ function testUpdateProjects() {
    * Check if a list of translatable projects can include hidden projects.
    */
   function testUpdateProjectsHidden() {
-    module_load_include('compare.inc', 'locale');
+    module_load_include('locale', 'compare.inc');
     $config = config('locale.settings');
 
     // Make the test modules look like a normal custom module.
diff --git a/core/modules/locale/locale.batch.inc b/core/modules/locale/locale.batch.inc
index 39bc966..5add477 100644
--- a/core/modules/locale/locale.batch.inc
+++ b/core/modules/locale/locale.batch.inc
@@ -310,7 +310,7 @@ function locale_translation_batch_fetch_import($project, $langcode, $options, &$
         }
 
         $file = $source_result->files[$import_type];
-        module_load_include('bulk.inc', 'locale');
+        module_load_include('locale', 'bulk.inc');
         $options += array(
           'message' => $t('Importing translation for %project.', array('%project' => $source->project)),
         );
@@ -427,7 +427,7 @@ function locale_translation_batch_fetch_update_status(&$context) {
  *   Batch results.
  */
 function locale_translation_batch_fetch_finished($success, $results) {
-  module_load_include('bulk.inc', 'locale');
+  module_load_include('locale', 'bulk.inc');
   return locale_translate_batch_finished($success, $results);
 }
 
diff --git a/core/modules/locale/locale.bulk.inc b/core/modules/locale/locale.bulk.inc
index 5173132..9d55fc4 100644
--- a/core/modules/locale/locale.bulk.inc
+++ b/core/modules/locale/locale.bulk.inc
@@ -337,7 +337,7 @@ function locale_translate_batch_import_files($options, $force = FALSE) {
  *   An array of interface translation files keyed by their URI.
  */
 function locale_translate_get_interface_translation_files($projects = array(), $langcodes = array()) {
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'compare.inc');
   $files = array();
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
diff --git a/core/modules/locale/locale.compare.inc b/core/modules/locale/locale.compare.inc
index 9eba52e..fe335ba 100644
--- a/core/modules/locale/locale.compare.inc
+++ b/core/modules/locale/locale.compare.inc
@@ -138,7 +138,7 @@ function locale_translation_project_list() {
 
   $projects = &drupal_static(__FUNCTION__, array());
   if (empty($projects)) {
-    module_load_include('compare.inc', 'update');
+    module_load_include('update', 'compare.inc');
     $config = config('locale.settings');
     $projects = array();
 
diff --git a/core/modules/locale/locale.fetch.inc b/core/modules/locale/locale.fetch.inc
index d509b69..37bb7a2 100644
--- a/core/modules/locale/locale.fetch.inc
+++ b/core/modules/locale/locale.fetch.inc
@@ -27,7 +27,7 @@
  *   Batch definition array.
  */
 function locale_translation_batch_update_build($projects = array(), $langcodes = array(), $options = array()) {
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'compare.inc');
   $t = get_t();
   $projects = $projects ? $projects : array_keys(locale_translation_get_projects());
   $langcodes = $langcodes ? $langcodes : array_keys(locale_translatable_language_list());
diff --git a/core/modules/locale/locale.module b/core/modules/locale/locale.module
index c2da3b5..ad6548f 100644
--- a/core/modules/locale/locale.module
+++ b/core/modules/locale/locale.module
@@ -316,7 +316,7 @@ function locale_language_delete($language) {
   locale_storage()->deleteTranslations(array('language' => $language->langcode));
 
   // Remove interface translation files.
-  module_load_include('inc', 'locale', 'locale.bulk');
+  module_load_include('locale', 'bulk.inc');
   locale_translate_delete_translation_files(array(), array($language->langcode));
 
   // Remove translated configuration objects.
@@ -526,14 +526,14 @@ function locale_system_update(array $components) {
   // because it would break out of the installer flow. We have
   // built-in support for translation imports in the installer.
   if (!drupal_installation_attempted() && locale_translatable_language_list()) {
-    module_load_include('compare.inc', 'locale');
+    module_load_include('locale', 'compare.inc');
 
     // Update the list of translatable projects and start the import batch.
     // Only when new projects are added the update batch will be triggered. Not
     // each enabled module will introduce a new project. E.g. sub modules.
     $projects = array_keys(locale_translation_build_projects());
     if ($list = array_intersect($list, $projects)) {
-      module_load_include('fetch.inc', 'locale');
+      module_load_include('locale', 'fetch.inc');
       // Get translation status of the projects, download and update translations.
       $options = _locale_translation_default_update_options();
       $batch = locale_translation_batch_update_build($list, array(), $options);
@@ -561,7 +561,7 @@ function locale_system_remove($components) {
   $components += array('module' => array(), 'theme' => array());
   $list = array_merge($components['module'], $components['theme']);
   if ($language_list = locale_translatable_language_list()) {
-    module_load_include('compare.inc', 'locale');
+    module_load_include('locale', 'compare.inc');
     Drupal::moduleHandler()->loadInclude('locale', 'bulk.inc');
     // Delete configuration translations.
     \Drupal\locale\Locale::config()->deleteComponentTranslations($components, array_keys($language_list));
@@ -787,7 +787,7 @@ function locale_form_language_admin_add_form_alter_submit($form, $form_state) {
   }
 
   // Download and import translations for the newly added language.
-  module_load_include('fetch.inc', 'locale');
+  module_load_include('locale', 'fetch.inc');
   $options = _locale_translation_default_update_options();
   $batch = locale_translation_batch_update_build(array(), array($langcode), $options);
   batch_set($batch);
diff --git a/core/modules/locale/locale.pages.inc b/core/modules/locale/locale.pages.inc
index a109f5f..4dfe467 100644
--- a/core/modules/locale/locale.pages.inc
+++ b/core/modules/locale/locale.pages.inc
@@ -467,7 +467,7 @@ function locale_translate_edit_form_submit($form, &$form_state) {
  * @see locale_menu()
  */
 function locale_translation_manual_status() {
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'compare.inc');
 
   // Check translation status of all translatable project in all languages.
   // First we clear the cached list of projects. Although not strictly
@@ -489,8 +489,8 @@ function locale_translation_manual_status() {
  * @see locale_menu()
  */
 function locale_translation_status_form($form, &$form_state) {
-  module_load_include('translation.inc', 'locale');
-  module_load_include('compare.inc', 'locale');
+  module_load_include('locale', 'translation.inc');
+  module_load_include('locale', 'compare.inc');
   $updates = $options = array();
   $languages_update = $languages_not_found = array();
 
@@ -610,7 +610,7 @@ function locale_translation_status_form_validate($form, &$form_state) {
  * Form submission handler for locale_translation_status_form().
  */
 function locale_translation_status_form_submit($form, &$form_state) {
-  module_load_include('fetch.inc', 'locale');
+  module_load_include('locale', 'fetch.inc');
   $langcodes = array_filter($form_state['values']['langcodes']);
 
   // Set the translation import options. This determines if existing
diff --git a/core/modules/locale/locale.translation.inc b/core/modules/locale/locale.translation.inc
index 7edf847..e13bfeb 100644
--- a/core/modules/locale/locale.translation.inc
+++ b/core/modules/locale/locale.translation.inc
@@ -59,7 +59,7 @@ function locale_translation_get_projects($project_names = array()) {
     // http://drupal.org/node/1777106 is a follow-up issue to make the check for
     // possible out-of-date project information more robust.
     if ($result->rowCount() == 0 && module_exists('update')) {
-      module_load_include('compare.inc', 'locale');
+      module_load_include('locale', 'compare.inc');
       // At least the core project should be in the database, so we build the
       // data if none are found.
       locale_translation_build_projects();
diff --git a/core/modules/node/lib/Drupal/node/NodeFormController.php b/core/modules/node/lib/Drupal/node/NodeFormController.php
index 63b4189..a9148ba 100644
--- a/core/modules/node/lib/Drupal/node/NodeFormController.php
+++ b/core/modules/node/lib/Drupal/node/NodeFormController.php
@@ -388,7 +388,7 @@ public function submit(array $form, array &$form_state) {
   public function preview(array $form, array &$form_state) {
     // @todo Remove this: we should not have explicit includes in autoloaded
     //   classes.
-    module_load_include('inc', 'node', 'node.pages');
+    module_load_include('node', 'pages.inc');
     drupal_set_title(t('Preview'), PASS_THROUGH);
     $form_state['node_preview'] = node_preview($this->getEntity($form_state));
     $form_state['rebuild'] = TRUE;
diff --git a/core/modules/node/node.module b/core/modules/node/node.module
index 8f9f17f..52a75ca 100644
--- a/core/modules/node/node.module
+++ b/core/modules/node/node.module
@@ -1459,7 +1459,7 @@ function node_user_cancel($edit, $account, $method) {
   switch ($method) {
     case 'user_cancel_block_unpublish':
       // Unpublish nodes (current revisions).
-      module_load_include('inc', 'node', 'node.admin');
+      module_load_include('node', 'admin.inc');
       $nodes = db_select('node', 'n')
         ->fields('n', array('nid'))
         ->condition('uid', $account->uid)
@@ -1470,7 +1470,7 @@ function node_user_cancel($edit, $account, $method) {
 
     case 'user_cancel_reassign':
       // Anonymize nodes (current revisions).
-      module_load_include('inc', 'node', 'node.admin');
+      module_load_include('node', 'admin.inc');
       $nodes = db_select('node', 'n')
         ->fields('n', array('nid'))
         ->condition('uid', $account->uid)
diff --git a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDFunctionalTest.php b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDFunctionalTest.php
index 0479793..99218e3 100644
--- a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDFunctionalTest.php
+++ b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDFunctionalTest.php
@@ -354,7 +354,7 @@ function addRedirectedIdentity($identity, $version = 2, $local_id = 'http://exam
    * Tests that openid.signed is verified.
    */
   function testSignatureValidation() {
-    module_load_include('inc', 'openid');
+    module_load_include('openid', 'inc');
     // Use a User-supplied Identity that is the URL of an XRDS document.
     $identity = url('openid-test/yadis/xrds', array('absolute' => TRUE));
 
diff --git a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDTest.php b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDTest.php
index 3c2e614..a1da089 100644
--- a/core/modules/openid/lib/Drupal/openid/Tests/OpenIDTest.php
+++ b/core/modules/openid/lib/Drupal/openid/Tests/OpenIDTest.php
@@ -32,7 +32,7 @@ public static function getInfo() {
 
   function setUp() {
     parent::setUp();
-    module_load_include('inc', 'openid');
+    module_load_include('openid', 'inc');
   }
 
   /**
diff --git a/core/modules/openid/openid.module b/core/modules/openid/openid.module
index 0f2e04f..f88c404 100644
--- a/core/modules/openid/openid.module
+++ b/core/modules/openid/openid.module
@@ -239,7 +239,7 @@ function openid_login_form_submit($form, &$form_state) {
  */
 function openid_form_user_register_form_alter(&$form, &$form_state) {
   if (isset($_SESSION['openid']['response'])) {
-    module_load_include('inc', 'openid');
+    module_load_include('openid', 'inc');
 
     $response = $_SESSION['openid']['response'];
 
@@ -360,7 +360,7 @@ function openid_form_user_register_form_alter(&$form, &$form_state) {
  * @param $return_to The endpoint to return to from the OpenID Provider
  */
 function openid_begin($claimed_id, $return_to = '', $form_values = array()) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   $service = NULL;
   $claimed_id = openid_normalize($claimed_id);
@@ -427,7 +427,7 @@ function openid_begin($claimed_id, $return_to = '', $form_values = array()) {
  *   $response['status'] set to one of 'success', 'failed' or 'cancel'.
  */
 function openid_complete($response = array()) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   if (count($response) == 0) {
     $response = _openid_response();
@@ -512,7 +512,7 @@ function openid_complete($response = array()) {
  *   found, FALSE is returned.
  */
 function openid_discovery($claimed_id) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   $methods = module_invoke_all('openid_discovery_method_info');
   drupal_alter('openid_discovery_method_info', $methods);
@@ -680,7 +680,7 @@ function openid_openid_normalization_method_info() {
  * @return $assoc_handle The association handle.
  */
 function openid_association($op_endpoint) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   // Remove Old Associations:
   db_delete('openid_association')
@@ -809,7 +809,7 @@ function openid_authentication($response) {
 }
 
 function openid_association_request($public) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   $request = array(
     'openid.ns' => OPENID_NS_2_0,
@@ -829,7 +829,7 @@ function openid_association_request($public) {
 function openid_authentication_request($claimed_id, $identity, $return_to = '', $assoc_handle = '', $service) {
   global $base_url;
 
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   $request =  array(
     'openid.mode' => 'checkid_setup',
@@ -897,7 +897,7 @@ function openid_authentication_request($claimed_id, $identity, $return_to = '',
  * @see http://openid.net/specs/openid-authentication-2_0.html#rfc.section.11.4
  */
 function openid_verify_assertion($service, $response) {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   // http://openid.net/specs/openid-authentication-2_0.html#rfc.section.11.3
   // Check the Nonce to protect against replay attacks.
diff --git a/core/modules/openid/tests/openid_test.module b/core/modules/openid/tests/openid_test.module
index c442884..99be3e0 100644
--- a/core/modules/openid/tests/openid_test.module
+++ b/core/modules/openid/tests/openid_test.module
@@ -253,7 +253,7 @@ function openid_test_redirected_method($method1, $method2) {
  * the endpoint).
  */
 function _openid_test_endpoint_associate() {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   // Use default parameters for Diffie-Helmann key exchange.
   $mod = OPENID_DH_DEFAULT_MOD;
@@ -301,7 +301,7 @@ function _openid_test_endpoint_associate() {
  * identity.
  */
 function _openid_test_endpoint_authenticate() {
-  module_load_include('inc', 'openid');
+  module_load_include('openid', 'inc');
 
   $expected_identity = state()->get('openid_test.identity');
   if ($expected_identity && $_REQUEST['openid_identity'] != $expected_identity) {
diff --git a/core/modules/system/lib/Drupal/system/Tests/Module/ModuleApiTest.php b/core/modules/system/lib/Drupal/system/Tests/Module/ModuleApiTest.php
index 3de02ce..77d2776 100644
--- a/core/modules/system/lib/Drupal/system/Tests/Module/ModuleApiTest.php
+++ b/core/modules/system/lib/Drupal/system/Tests/Module/ModuleApiTest.php
@@ -111,7 +111,7 @@ function testModuleImplements() {
     // For that activate the module_test which provides the file to load.
     module_enable(array('module_test'));
     $module_handler->loadAll();
-    module_load_include('inc', 'module_test', 'module_test.file');
+    module_load_include('module_test', 'module_test.inc'), 'module_test', 'module_test.file');
     $modules = $module_handler->getImplementations('test_hook');
     $this->assertTrue(in_array('module_test', $modules), 'Hook found.');
   }
diff --git a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/HooksTest.php b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/HooksTest.php
index edddd1a..96a5bfe 100644
--- a/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/HooksTest.php
+++ b/core/modules/taxonomy/lib/Drupal/taxonomy/Tests/HooksTest.php
@@ -68,7 +68,7 @@ function testTaxonomyTermHooks() {
     // View the term and ensure that hook_taxonomy_term_view() and
     // hook_entity_view() are invoked.
     $term = taxonomy_term_load($term->tid);
-    module_load_include('inc', 'taxonomy', 'taxonomy.pages');
+    module_load_include('taxonomy', 'pages.inc');
     $term_build = taxonomy_term_page($term);
     $this->assertFalse(empty($term_build['taxonomy_terms'][$term->tid]['taxonomy_test_term_view_check']), 'hook_taxonomy_term_view() was invoked when viewing the term.');
     $this->assertFalse(empty($term_build['taxonomy_terms'][$term->tid]['taxonomy_test_entity_view_check']), 'hook_entity_view() was invoked when viewing the term.');
diff --git a/core/modules/translation_entity/translation_entity.module b/core/modules/translation_entity/translation_entity.module
index e4dca3e..047b520 100644
--- a/core/modules/translation_entity/translation_entity.module
+++ b/core/modules/translation_entity/translation_entity.module
@@ -840,7 +840,7 @@ function translation_entity_form_field_ui_field_settings_form_alter(array &$form
  */
 function translation_entity_form_field_ui_field_edit_form_alter(array &$form, array &$form_state, $form_id) {
   if ($form['#field']['translatable']) {
-    module_load_include('inc', 'translation_entity', 'translation_entity.admin');
+    module_load_include('translation_entity', 'admin.inc');
     $element = translation_entity_field_sync_widget($form['#field'], $form['#instance']);
     if ($element) {
       $form['instance']['settings']['translation_sync'] = $element;
@@ -980,7 +980,7 @@ function translation_entity_language_configuration_element_submit(array $form, a
  * Implements hook_form_FORM_ID_alter() for language_content_settings_form().
  */
 function translation_entity_form_language_content_settings_form_alter(array &$form, array &$form_state) {
-  module_load_include('inc', 'translation_entity', 'translation_entity.admin');
+  module_load_include('translation_entity', 'admin.inc');
   _translation_entity_form_language_content_settings_form_alter($form, $form_state);
 }
 
@@ -988,7 +988,7 @@ function translation_entity_form_language_content_settings_form_alter(array &$fo
  * Implements hook_preprocess_HOOK() for theme_language_content_settings_table().
  */
 function translation_entity_preprocess_language_content_settings_table(&$variables) {
-  module_load_include('inc', 'translation_entity', 'translation_entity.admin');
+  module_load_include('translation_entity', 'admin.inc');
   _translation_entity_preprocess_language_content_settings_table($variables);
 }
 
diff --git a/core/modules/update/lib/Drupal/update/Tests/UpdateContribTest.php b/core/modules/update/lib/Drupal/update/Tests/UpdateContribTest.php
index 1fdd0b3..739ec1b 100644
--- a/core/modules/update/lib/Drupal/update/Tests/UpdateContribTest.php
+++ b/core/modules/update/lib/Drupal/update/Tests/UpdateContribTest.php
@@ -266,7 +266,7 @@ function testUpdateShowDisabledThemes() {
    * Tests updates with a hidden base theme.
    */
   function testUpdateHiddenBaseTheme() {
-    module_load_include('compare.inc', 'update');
+    module_load_include('update', 'compare.inc');
 
     // Enable the subtheme.
     theme_enable(array('update_test_subtheme'));
diff --git a/core/modules/update/lib/Drupal/update/Tests/UpdateCoreUnitTest.php b/core/modules/update/lib/Drupal/update/Tests/UpdateCoreUnitTest.php
index ac26bd7..d7ee2ff 100644
--- a/core/modules/update/lib/Drupal/update/Tests/UpdateCoreUnitTest.php
+++ b/core/modules/update/lib/Drupal/update/Tests/UpdateCoreUnitTest.php
@@ -31,7 +31,7 @@ public static function getInfo() {
 
   function setUp() {
     parent::setUp();
-    module_load_include('inc', 'update', 'update.fetch');
+    module_load_include('update', 'fetch.inc');
   }
 
   /**
diff --git a/core/modules/update/update.fetch.inc b/core/modules/update/update.fetch.inc
index e7255af..cdff704 100644
--- a/core/modules/update/update.fetch.inc
+++ b/core/modules/update/update.fetch.inc
@@ -201,7 +201,7 @@ function _update_process_fetch_task($project) {
  * Clears out all the available update data and initiates re-fetching.
  */
 function _update_refresh() {
-  module_load_include('inc', 'update', 'update.compare');
+  module_load_include('update', 'compare.inc');
 
   // Since we're fetching new available update data, we want to clear
   // of both the projects we care about, and the current update status of the
diff --git a/core/modules/update/update.install b/core/modules/update/update.install
index 3037c84..149f426 100644
--- a/core/modules/update/update.install
+++ b/core/modules/update/update.install
@@ -29,7 +29,7 @@ function update_requirements($phase) {
   $requirements = array();
   if ($phase == 'runtime') {
     if ($available = update_get_available(FALSE)) {
-      module_load_include('inc', 'update', 'update.compare');
+      module_load_include('update', 'compare.inc');
       $data = update_calculate_project_data($available);
       // First, populate the requirements for core:
       $requirements['update_core'] = _update_requirement_check($data['drupal'], 'core');
diff --git a/core/modules/update/update.manager.inc b/core/modules/update/update.manager.inc
index bc84058..607e01f 100644
--- a/core/modules/update/update.manager.inc
+++ b/core/modules/update/update.manager.inc
@@ -90,7 +90,7 @@ function update_manager_update_form($form, $form_state = array(), $context) {
   // project in the form, regardless of if it's enabled or disabled.
   $form['project_downloads'] = array('#tree' => TRUE);
 
-  module_load_include('inc', 'update', 'update.compare');
+  module_load_include('update', 'compare.inc');
   $project_data = update_calculate_project_data($available);
   foreach ($project_data as $name => $project) {
     // Filter out projects which are up to date already.
@@ -455,7 +455,7 @@ function update_manager_update_ready_form_submit($form, &$form_state) {
     // credentials. Instead, we instantiate a Drupal\Core\FileTransfer\Local and
     // invoke update_authorize_run_update() directly.
     if (fileowner($project_real_location) == fileowner(conf_path())) {
-      module_load_include('inc', 'update', 'update.authorize');
+      module_load_include('update', 'authorize.inc');
       $filetransfer = new Local(DRUPAL_ROOT);
       update_authorize_run_update($filetransfer, $updates);
     }
@@ -728,7 +728,7 @@ function update_manager_install_form_submit($form, &$form_state) {
   // credentials. Instead, we instantiate a Drupal\Core\FileTransfer\Local and
   // invoke update_authorize_run_install() directly.
   if (fileowner($project_real_location) == fileowner(conf_path())) {
-    module_load_include('inc', 'update', 'update.authorize');
+    module_load_include('update', 'authorize.inc');
     $filetransfer = new Local(DRUPAL_ROOT);
     call_user_func_array('update_authorize_run_install', array_merge(array($filetransfer), $arguments));
   }
diff --git a/core/modules/update/update.module b/core/modules/update/update.module
index 7dee311..aa073c0 100644
--- a/core/modules/update/update.module
+++ b/core/modules/update/update.module
@@ -300,7 +300,7 @@ function update_cron() {
   if ((REQUEST_TIME - $last_email_notice) > $interval) {
     // If configured time between notifications elapsed, send email about
     // updates possibly available.
-    module_load_include('inc', 'update', 'update.fetch');
+    module_load_include('update', 'fetch.inc');
     _update_cron_notify();
   }
 
@@ -383,7 +383,7 @@ function _update_no_data() {
  * @see update_get_projects()
  */
 function update_get_available($refresh = FALSE) {
-  module_load_include('inc', 'update', 'update.compare');
+  module_load_include('update', 'compare.inc');
   $needs_refresh = FALSE;
 
   // Grab whatever data we currently have.
@@ -442,7 +442,7 @@ function update_get_available($refresh = FALSE) {
  * @see _update_create_fetch_task()
  */
 function update_create_fetch_task($project) {
-  module_load_include('inc', 'update', 'update.fetch');
+  module_load_include('update', 'fetch.inc');
   return _update_create_fetch_task($project);
 }
 
@@ -452,7 +452,7 @@ function update_create_fetch_task($project) {
  * @see _update_refresh()
  */
 function update_refresh() {
-  module_load_include('inc', 'update', 'update.fetch');
+  module_load_include('update', 'fetch.inc');
   return _update_refresh();
 }
 
@@ -462,7 +462,7 @@ function update_refresh() {
  * @see _update_fetch_data()
  */
 function update_fetch_data() {
-  module_load_include('inc', 'update', 'update.fetch');
+  module_load_include('update', 'fetch.inc');
   return _update_fetch_data();
 }
 
diff --git a/core/modules/update/update.report.inc b/core/modules/update/update.report.inc
index 607b523..bfc7c49 100644
--- a/core/modules/update/update.report.inc
+++ b/core/modules/update/update.report.inc
@@ -12,7 +12,7 @@
  */
 function update_status() {
   if ($available = update_get_available(TRUE)) {
-    module_load_include('inc', 'update', 'update.compare');
+    module_load_include('update', 'compare.inc');
     $data = update_calculate_project_data($available);
     return theme('update_report', array('data' => $data));
   }
diff --git a/core/modules/user/user.api.php b/core/modules/user/user.api.php
index 652c5b5..932dac8 100644
--- a/core/modules/user/user.api.php
+++ b/core/modules/user/user.api.php
@@ -118,7 +118,7 @@ function hook_user_cancel($edit, $account, $method) {
   switch ($method) {
     case 'user_cancel_block_unpublish':
       // Unpublish nodes (current revisions).
-      module_load_include('inc', 'node', 'node.admin');
+      module_load_include('node', 'admin.inc');
       $nodes = db_select('node', 'n')
         ->fields('n', array('nid'))
         ->condition('uid', $account->uid)
@@ -129,7 +129,7 @@ function hook_user_cancel($edit, $account, $method) {
 
     case 'user_cancel_reassign':
       // Anonymize nodes (current revisions).
-      module_load_include('inc', 'node', 'node.admin');
+      module_load_include('node', 'admin.inc');
       $nodes = db_select('node', 'n')
         ->fields('n', array('nid'))
         ->condition('uid', $account->uid)
diff --git a/core/modules/user/user.module b/core/modules/user/user.module
index 09e745a..9018d37 100644
--- a/core/modules/user/user.module
+++ b/core/modules/user/user.module
@@ -1064,7 +1064,7 @@ function user_menu_site_status_alter(&$menu_site_status, $path) {
   if ($menu_site_status == MENU_SITE_OFFLINE) {
     // If the site is offline, log out unprivileged users.
     if (user_is_logged_in() && !user_access('access site in maintenance mode')) {
-      module_load_include('pages.inc', 'user', 'user');
+      module_load_include('user', 'pages.inc');
       user_logout();
     }
 
diff --git a/core/modules/views/lib/Drupal/views/Plugin/views/wizard/WizardPluginBase.php b/core/modules/views/lib/Drupal/views/Plugin/views/wizard/WizardPluginBase.php
index 9b88bb8..e71fd8a 100644
--- a/core/modules/views/lib/Drupal/views/Plugin/views/wizard/WizardPluginBase.php
+++ b/core/modules/views/lib/Drupal/views/Plugin/views/wizard/WizardPluginBase.php
@@ -555,7 +555,7 @@ protected function row_style_options() {
    * available).
    */
   protected function build_filters(&$form, &$form_state) {
-    module_load_include('inc', 'views_ui', 'admin');
+    module_load_include('views_ui', 'admin.inc');
 
     $bundles = entity_get_bundles($this->entity_type);
     // If the current base table support bundles and has more than one (like user).
@@ -821,7 +821,7 @@ protected function default_display_filters_user(array $form, array &$form_state)
       // Figure out the table where $bundle_key lives. It may not be the same as
       // the base table for the view; the taxonomy vocabulary machine_name, for
       // example, is stored in taxonomy_vocabulary, not taxonomy_term_data.
-      module_load_include('inc', 'views_ui', 'admin');
+      module_load_include('views_ui', 'admin.inc');
       $fields = views_fetch_fields($this->base_table, 'filter');
       if (isset($fields[$this->base_table . '.' . $bundle_key])) {
         $table = $this->base_table;
diff --git a/core/modules/xmlrpc/xmlrpc.module b/core/modules/xmlrpc/xmlrpc.module
index fe1fcbc..069f011 100644
--- a/core/modules/xmlrpc/xmlrpc.module
+++ b/core/modules/xmlrpc/xmlrpc.module
@@ -63,6 +63,6 @@ function xmlrpc_menu() {
  *     failed. See xmlrpc_error().
  */
 function xmlrpc($url, array $args, array $headers = array()) {
-  module_load_include('inc', 'xmlrpc');
+  module_load_include('xmlrpc', 'inc');
   return _xmlrpc($url, $args, $headers);
 }
diff --git a/core/modules/xmlrpc/xmlrpc.server.inc b/core/modules/xmlrpc/xmlrpc.server.inc
index e1c160b..62a51de 100644
--- a/core/modules/xmlrpc/xmlrpc.server.inc
+++ b/core/modules/xmlrpc/xmlrpc.server.inc
@@ -9,7 +9,7 @@
  * Process an XML-RPC request.
  */
 function xmlrpc_server_page() {
-  module_load_include('inc', 'xmlrpc');
+  module_load_include('xmlrpc', 'inc');
   xmlrpc_server(module_invoke_all('xmlrpc'));
 }
 
diff --git a/core/scripts/generate-d6-content.sh b/core/scripts/generate-d6-content.sh
index fc4c68f..01d8ee7 100644
--- a/core/scripts/generate-d6-content.sh
+++ b/core/scripts/generate-d6-content.sh
@@ -96,7 +96,7 @@
 
 $node_id = 0;
 $revision_id = 0;
-module_load_include('inc', 'node', 'node.pages');
+module_load_include('node', 'pages.inc');
 for ($i = 0; $i < 24; $i++) {
   $uid = intval($i / 8) + 3;
   $user = user_load($uid);
diff --git a/core/scripts/generate-d7-content.sh b/core/scripts/generate-d7-content.sh
index a19d329..8181444 100644
--- a/core/scripts/generate-d7-content.sh
+++ b/core/scripts/generate-d7-content.sh
@@ -158,7 +158,7 @@
 }
 $node_id = 0;
 $revision_id = 0;
-module_load_include('inc', 'node', 'node.pages');
+module_load_include('node', 'pages.inc');
 for ($i = 0; $i < 36; $i++) {
   $uid = intval($i / 8) + 3;
   $user = user_load($uid);
