aboutsummaryrefslogtreecommitdiff
path: root/gcc/genmddeps.c
diff options
context:
space:
mode:
authorNathan Sidwell <nathan@acm.org>2020-12-08 05:03:43 -0800
committerNathan Sidwell <nathan@acm.org>2020-12-08 05:07:30 -0800
commit76a1719f0ff8e802cd3124ec102da174e5c67f15 (patch)
treea7a2eca344276782c976eb09fd650032baeb117b /gcc/genmddeps.c
parent0f2da02b2373078e96bb44fe83f5b7fd303414a6 (diff)
downloadgcc-76a1719f0ff8e802cd3124ec102da174e5c67f15.zip
gcc-76a1719f0ff8e802cd3124ec102da174e5c67f15.tar.gz
gcc-76a1719f0ff8e802cd3124ec102da174e5c67f15.tar.bz2
c++: module directive FSM
As mentioned in the preprocessor patches, there's a new kind of preprocessor directive for modules, and it interacts with the compiler-proper, as that has to stream in header-unit macro information (when the directive is an import that names a header-unit). This is that machinery. It's an FSM that inspects the token stream and does the minimal parsing to detect such imports. This ends up being called from the C++ parser's tokenizer and from the -E tokenizer (via a lang hook). The actual module streaming is a stub here. gcc/cp/ * cp-tree.h (module_token_pre, module_token_cdtor) (module_token_lang): Declare. * lex.c: Include langhooks. (struct module_token_filter): New. * cp-tree.h (module_token_pre, module_token_cdtor) (module_token_lang): Define. * module.cc (get_module, preprocess_module, preprocessed_module): Nop stubs.
Diffstat (limited to 'gcc/genmddeps.c')
0 files changed, 0 insertions, 0 deletions