[Refactoring] checkPurity, checkSafety, and checkNogc
[Refactoring] Add Id::gate for more lightweight string comparison
[Refactoring] Add FuncDeclaration::isPureBypassingInferenceX()
fix Issue 6359 - Pure/@safe-inference should not be affected by __traits(compiles)
fix Issue 4791 - Assigning a static array to itself should be allowed
Merge pull request #3628 from 9rnsr/fix4791

Issue 4791 - Assigning a static array to itself should be allowed
Merge pull request #3625 from 9rnsr/fix6359

Issue 6359 - Pure/@safe-inference should not be affected by __traits(compiles)
Merge pull request #3627 from 9rnsr/fix12860

[REG2.065] Issue 12860 - typeid(_error_) symbols leaked to backend
improve fix of issue 12860 for ddmd