[MetaSchedule] Resolve dependencies between header files #11604
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
After PR11590 TVM stopped compiling with clang-14 and libc++. The problems were caused by incomplete types used in contexts where complete types were required. To resolve this, some code had to be moved into .cc files. Also the
MeasureCandidate
classes needed to be added to their own include files (or otherwise there would be a circular dependency between headers).All headers from the meta_schedule directory were updated to include all their dependencies (forward declarations were left where appropriate).