Mercurial > vim
changeset 32248:8e2ecfebd136 v9.0.1455
patch 9.0.1455: C++ 20 modules are not recognized
Commit: https://github.com/vim/vim/commit/732d69e1918b28ad0fe16eb9bc5a776c7958122b
Author: Ben Jackson <puremourning@gmail.com>
Date: Sat Apr 15 18:17:17 2023 +0100
patch 9.0.1455: C++ 20 modules are not recognized
Problem: C++ 20 modules are not recognized.
Solution: Add patterns to recognize C++ 20 modules as "cpp". (Ben Jackson,
closes #12261)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 15 Apr 2023 19:30:03 +0200 |
parents | 59be36288b65 |
children | 54a392f6a806 |
files | runtime/filetype.vim src/testdir/test_filetype.vim src/version.c |
diffstat | 3 files changed, 7 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/filetype.vim +++ b/runtime/filetype.vim @@ -338,6 +338,10 @@ if has("fname_case") au BufNewFile,BufRead *.C,*.H setf cpp endif +" C++ 20 modules (clang) +" https://clang.llvm.org/docs/StandardCPlusPlusModules.html#file-name-requirement +au BufNewFile,BufRead *.cppm,*.ccm,*.cxxm,*.c++m setf cpp + " .h files can be C, Ch C++, ObjC or ObjC++. " Set c_syntax_for_h if you want C, ch_syntax_for_h if you want Ch. ObjC is " detected automatically.
--- a/src/testdir/test_filetype.vim +++ b/src/testdir/test_filetype.vim @@ -127,7 +127,7 @@ let s:filename_checks = { \ 'context': ['tex/context/any/file.tex', 'file.mkii', 'file.mkiv', 'file.mkvi', 'file.mkxl', 'file.mklx'], \ 'cook': ['file.cook'], \ 'cpon': ['file.cpon'], - \ 'cpp': ['file.cxx', 'file.c++', 'file.hh', 'file.hxx', 'file.hpp', 'file.ipp', 'file.moc', 'file.tcc', 'file.inl', 'file.tlh'], + \ 'cpp': ['file.cxx', 'file.c++', 'file.hh', 'file.hxx', 'file.hpp', 'file.ipp', 'file.moc', 'file.tcc', 'file.inl', 'file.tlh', 'file.cppm', 'file.ccm', 'file.cxxm', 'file.c++m'], \ 'cqlang': ['file.cql'], \ 'crm': ['file.crm'], \ 'crontab': ['crontab', 'crontab.file', '/etc/cron.d/file', 'any/etc/cron.d/file'],