summaryrefslogtreecommitdiffstats
path: root/clang/test/AST/ast-dump-record-definition-data-json.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [Concepts] Placeholder constraints and abbreviated templatesSaar Raz2020-01-241-15/+42
| | | | | | | | | | | | | | | | | | | | | | | This patch implements P1141R2 "Yet another approach for constrained declarations". General strategy for this patch was: - Expand AutoType to include optional type-constraint, reflecting the wording and easing the integration of constraints. - Replace autos in parameter type specifiers with invented parameters in GetTypeSpecTypeForDeclarator, using the same logic previously used for generic lambdas, now unified with abbreviated templates, by: - Tracking the template parameter lists in the Declarator object - Tracking the template parameter depth before parsing function declarators (at which point we can match template parameters against scope specifiers to know if we have an explicit template parameter list to append invented parameters to or not). - When encountering an AutoType in a parameter context we check a stack of InventedTemplateParameterInfo structures that contain the info required to create and accumulate invented template parameters (fields that were already present in LambdaScopeInfo, which now inherits from this class and is looked up when an auto is encountered in a lambda context). Resubmit after fixing MSAN failures caused by incomplete initialization of AutoTypeLocs in TypeSpecLocFiller. Differential Revision: https://reviews.llvm.org/D65042 (cherry picked from commit b481f028144ca91c15d1db3649ce14f174259e7e)
* Include the mangled name in -ast-dump=jsonAlex Richardson2019-11-151-0/+35
| | | | | | | | | | | | | | | | | | | | I am planning to use this feature to make update_cc_test_checks.py less fragile by obtaining the mangled names directly from -ast-dump=json. Currently, it uses c-index-test which ignores the -triple=, etc. arguments that are in the RUN: line and therefore does not generate checks for some targets. The AST dump tests were updated using the following command: `python $LLVM_BINDIR/gen_ast_dump_json_test.py --update --source $LLVM_SRC/clang/test/AST/*-json.*` Reviewers: aaron.ballman Reviewed By: aaron.ballman Subscribers: rsmith, MaskRay, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D69564
* Add more information to JSON AST dumping of source locations.Aaron Ballman2019-10-151-0/+414
| | | | | | This adds information about the offset within the source file to the given source location as well as information about the include file a location is from. These pieces of information allow for more efficient post-processing of JSON AST dumps. llvm-svn: 374921
* [clang] Make handling of unnamed template params similar to function paramsKadir Cetinkaya2019-10-011-24/+6
| | | | | | | | | | | | | | | | | | | | | Summary: Clang uses the location identifier should be inserted for declarator decls when a decl is unnamed. But for type template and template template paramaters it uses the location of "typename/class" keyword, which makes it hard for tooling to insert/change parameter names. This change tries to unify these two cases by making template parameter parsing and sourcerange operations similar to function params/declarator decls. Reviewers: ilya-biryukov Subscribers: arphaman, cfe-commits Tags: #clang Differential Revision: https://reviews.llvm.org/D68143 llvm-svn: 373340
* [clang][test][NFC] Explicitly specify clang ABI in AST Dumper testJan Korous2019-06-281-1/+1
| | | | | | Clang <= 4 used the pre-C++11 rule about which structures can be passed in registers. llvm-svn: 364690
* Augment location information when dumping the AST to JSON.Aaron Ballman2019-06-241-840/+546
| | | | | | Rather than create JSON objects for source locations and ranges, we instead stream them out directly. This allows us to elide duplicate information (without JSON field reordering causing an issue) like file names and line numbers, similar to the text dump. This also adds token length information when dumping the source location. llvm-svn: 364226
* Add an automated note to files produced by gen_ast_dump_json_test.py.Aaron Ballman2019-06-211-0/+3
| | | | | | This also details what filters, if any, were used to generate the test output. Updates all the current JSON testing files to include the automated note. llvm-svn: 364055
* Print information about various type nodes when dumping the AST to JSON.Aaron Ballman2019-06-211-1/+10
| | | | llvm-svn: 364043
* Add test cases for dumping record definition data to JSON; NFC.Aaron Ballman2019-06-191-0/+5196
llvm-svn: 363849
OpenPOWER on IntegriCloud