-
Notifications
You must be signed in to change notification settings - Fork 3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
split isame() into tsame() + fsame()
Summary: Let's take a divide & conquer approach to fixing dynamic case collisions by separating function and type name collisions. Unfortunately, throughout HHVM we have hardcoded how names of each kind should be compared by explicitly calling isame(), istrcmp(), etc. A better design would have been to wrap names in zero-overhead newtype structs so their operations could be implemented in one place, and C++ type safety could help us properly juggle multiple name types. Anyway, this takes a first step; I cloned isame() and istrcmp() into t/fsame() and t/fstrcmp(), then propagated the split through the codebase. This gives me a way to segregate logs while also improving type safety in the HHVM code. Reviewed By: aorenste Differential Revision: D52598964 fbshipit-source-id: 81600b87c41adba3d07262b570016ab5710d50e1
- Loading branch information
1 parent
bcea048
commit 351126a
Showing
70 changed files
with
713 additions
and
538 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.