Branch: refs/heads/main
Revision: b1c52e1
Author: arezaii
Link: Add stringify template to query framework by arezaii · Pull Request #18783 · chapel-lang/chapel · GitHub
Log Message:
Merge pull request #18783 from arezaii/next-tracing
Add stringify template to query framework
This PR adds the groundwork for each type to define a stringify
template
to define how it should be represented in string form. This work carries on
from the initial spike at cray/chapel-private/issues/2742.
Adds a nullptr
check to QualifiedType.toString()
Moves definition of gdbShouldBreakHere()
from misc.h
to break.h
TESTING:
- [x]
make test-libchplcomp
passes all tests - [x] a breakpoint set on a query's hash can be identified between runs
- [x] not implemented message prints for types without specialization
- [x] can break on an ID using
--gdb
and--break-on-id
- [x] can break query hash using
--gdb
and--compiler-library-parser
Reviewed by @aconsroe-hpe, @mppf, @dlongnecke-cray, and @lydia-duncan.
Thank you very much for the feedback
Signed-off-by: Ahmad Rezaii ahmad.rezaii@hpe.com
Modified Files:
A compiler/next/include/chpl/queries/stringify-functions.h
A compiler/next/include/chpl/util/break.h
A compiler/next/lib/util/break.cpp
M compiler/include/misc.h
M compiler/next/include/chpl/parsing/FileContents.h
M compiler/next/include/chpl/queries/Context-detail.h
M compiler/next/include/chpl/queries/Context.h
M compiler/next/include/chpl/queries/ID.h
M compiler/next/include/chpl/queries/Location.h
M compiler/next/include/chpl/queries/UniqueString.h
M compiler/next/include/chpl/queries/query-impl.h
M compiler/next/include/chpl/resolution/resolution-types.h
M compiler/next/include/chpl/resolution/scope-types.h
M compiler/next/include/chpl/types/BasicClassType.h
M compiler/next/include/chpl/types/ClassTypeDecorator.h
M compiler/next/include/chpl/types/CompositeType.h
M compiler/next/include/chpl/types/Param.h
M compiler/next/include/chpl/types/QualifiedType.h
M compiler/next/include/chpl/types/Type.h
M compiler/next/include/chpl/uast/ASTNode.h
M compiler/next/include/chpl/uast/ASTTag.h
M compiler/next/include/chpl/uast/BuilderResult.h
M compiler/next/include/chpl/uast/Expression.h
M compiler/next/include/chpl/uast/Function.h
M compiler/next/lib/queries/Context.cpp
M compiler/next/lib/types/QualifiedType.cpp
M compiler/next/lib/util/CMakeLists.txt
M compiler/next/lib/util/Makefile.include
M compiler/next/test/resolution/testPoi.cpp
M compiler/util/misc.cpp
Compare: https://github.com/chapel-lang/chapel/compare/7554fdd86a12...b1c52e158ea3