Skip to content

Subtype check for some complex, nested recursive types takes excessive time and stack space #1076

@heshanpadmasiri

Description

@heshanpadmasiri

Running the program in extra/regex with the following arguments

  • BDGB(gSUNd(Pp(xMsTI(TcnBE)*ke)*)*S)*v
  • BDGB(gSUNd(Pp(xMsTI((CvGb)*TcnBE)*ke)*)*S)*v

(which tests whether the first regex is a subtype of the second) uses a lot of time and stack space.

It caused the memo table to grow to 243 (checked after this line) and provisional empty count to change between 21 and 22 (checked after this line)

Could be the same cause as #1074 but didn't caused at stack overflow in about 10-20 minutes (#1074 will cause it within few minutes)

Metadata

Metadata

Labels

Type/BugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions