**TypeScript Version:** 3.9.x and 4.0.0 <!-- Search terms you tried before logging this (so others can find this issue more easily) --> **Search Terms:** maximum call stack, recursive type **Code** - source code here: https://github.com/lifaon74/observables - yarn install, yarn run build_all On one of my big projet, migrating from typescript 3.8.3 to 3.9.3 broke many things: - "circular constraint" errors appeared. I need some kind of circular reference to check if a Generic type matches a specific pattern - "maximum call stack" error when building the project (simply running tsc) **Expected behavior:** should transpile **Related Issues:** https://github.com/microsoft/TypeScript/issues/37475 https://github.com/microsoft/TypeScript/issues/38198