diff --git a/config.xsd b/config.xsd
index 8f58e287e97..2211a48e638 100644
--- a/config.xsd
+++ b/config.xsd
@@ -54,18 +54,6 @@
-
-
-
- Setting `totallyTyped` to `"true"` is equivalent to setting `errorLevel` to `"1"`. Setting `totallyTyped` to `"false"` is equivalent to setting `errorLevel` to `"2"` and `reportMixedIssues` to `"false"`
-
-
-
-
- Deprecated. Replaced by `errorLevel` and `reportMixedIssues`.
-
-
-
diff --git a/docs/annotating_code/type_syntax/atomic_types.md b/docs/annotating_code/type_syntax/atomic_types.md
index 9d267e3149a..692f7548398 100644
--- a/docs/annotating_code/type_syntax/atomic_types.md
+++ b/docs/annotating_code/type_syntax/atomic_types.md
@@ -57,7 +57,7 @@ Atomic types are the basic building block of all type information used in Psalm.
### `mixed`
-This is the _top type_ in PHP's type system, and represents a lack of type information. Psalm warns about `mixed` types when the `totallyTyped` flag is turned on, or when you're on level 1.
+This is the _top type_ in PHP's type system, and represents a lack of type information. Psalm warns about `mixed` types when the `reportMixedIssues` flag is turned on, or when you're on level 1.
### `never`
It can be aliased to `no-return` or `never-return` in docblocks. Note: it replaced the old `empty` type that used to exist in Psalm
diff --git a/docs/running_psalm/configuration.md b/docs/running_psalm/configuration.md
index 843d34d06c4..6999dd1126c 100644
--- a/docs/running_psalm/configuration.md
+++ b/docs/running_psalm/configuration.md
@@ -58,15 +58,7 @@ Setting this to `"false"` hides all issues with `Mixed` types in Psalm’s outpu
#### totallyTyped
-```xml
-
-```
-
-\(Deprecated\) Setting `totallyTyped` to `"true"` is equivalent to setting `errorLevel` to `"1"`. Setting `totallyTyped` to `"false"` is equivalent to setting `errorLevel` to `"2"` and `reportMixedIssues` to `"false"`
-
-
+\(Deprecated\) This setting has been replaced by `reportMixedIssues` which is automatically enabled when `errorLevel` is 1.
#### resolveFromConfigFile
diff --git a/docs/running_psalm/error_levels.md b/docs/running_psalm/error_levels.md
index a131a41f079..1460c9f85cf 100644
--- a/docs/running_psalm/error_levels.md
+++ b/docs/running_psalm/error_levels.md
@@ -5,7 +5,6 @@ You can run Psalm in at different levels of strictness from 1 to 8.
Level 1 is the most strict, level 8 is the most lenient.
When no level is explicitly defined, psalm defaults to level 2.
-In case `totallyTyped` is enabled, psalm defaults to level 1.
Some issues are [always treated as errors](#always-treated-as-errors). These are issues with a very low probability of false-positives.
diff --git a/src/Psalm/Config.php b/src/Psalm/Config.php
index 6776db6b530..0d8807f7718 100644
--- a/src/Psalm/Config.php
+++ b/src/Psalm/Config.php
@@ -1112,18 +1112,6 @@ private static function fromXmlAndPaths(
}
$config->level = $attribute_text;
- } elseif (isset($config_xml['totallyTyped'])) {
- $totally_typed = (string) $config_xml['totallyTyped'];
-
- if ($totally_typed === 'true' || $totally_typed === '1') {
- $config->level = 1;
- } else {
- $config->level = 2;
-
- if ($config->show_mixed_issues === null) {
- $config->show_mixed_issues = false;
- }
- }
} else {
$config->level = 2;
}
diff --git a/src/Psalm/Internal/Analyzer/Statements/Expression/Call/Method/MethodCallReturnTypeFetcher.php b/src/Psalm/Internal/Analyzer/Statements/Expression/Call/Method/MethodCallReturnTypeFetcher.php
index 2da1db04209..d0be7c16d60 100644
--- a/src/Psalm/Internal/Analyzer/Statements/Expression/Call/Method/MethodCallReturnTypeFetcher.php
+++ b/src/Psalm/Internal/Analyzer/Statements/Expression/Call/Method/MethodCallReturnTypeFetcher.php
@@ -108,7 +108,7 @@ public static function fetch(
if ($premixin_method_id->fq_class_name === PDOException::class) {
return Type::getString();
} else {
- return Type::getInt(true); // TODO: Remove the flag in Psalm 5
+ return Type::getInt();
}
}