Environment
- OS and Version: Arch Linux x86_64 Linux 6.9.6-zen1-1-zen
- VS Code Version: 1.83.0
- C/C++ Extension Version: v1.20.5
Bug Summary and Steps to Reproduce
Bug Summary:
After upgrading to gcc 14, clang-diagnostic-error reports an "Error while processing" at the beginning of every C++ file. More specifically, it's invalid suffix 'bf16' on floating constant on c++config.h, a gcc head file. The concerning code looks like this:
#if defined __cplusplus && defined __BFLT16_DIG__
namespace __gnu_cxx
{
typedef __decltype(0.0bf16) __bfloat16_t; // error here
}
#endif
but my program can compile and run. I think this is a problem of C/C++ Extension
Steps to reproduce:
- Upgrade GCC to the latest version
- Open VS Code and create a C++ file
- See error
Expected behavior:
No such error.
Configuration and Logs
c_cpp_properties.json
{
"configurations": [
{
"name": "Linux",
"includePath": [
"${workspaceFolder}/**"
],
"defines": []
}
],
"version": 4
}
C/C++: Log Diagnostics:
-------- Diagnostics - 2024/7/2 09:12:47
Version: 1.20.5
Current Configuration:
{
"name": "Linux",
"includePath": [
"/home/micraow/cpplearn/**"
],
"defines": [],
"compilerPathIsExplicit": true,
"cStandardIsExplicit": true,
"cppStandardIsExplicit": true,
"intelliSenseModeIsExplicit": true,
"cStandard": "c11",
"cppStandard": "c++11",
"intelliSenseMode": "linux-gcc-x64",
"mergeConfigurations": false,
"compilerPath": "/usr/bin/g++",
"browse": {
"path": [
"/home/micraow/cpplearn/**",
"${workspaceFolder}"
],
"limitSymbolsToIncludedHeaders": true
}
}
cpptools version (native): 1.20.5.0
Translation Unit Mappings:
[ /home/micraow/cpplearn/Vec.cpp - source TU]:
/usr/include/c++/14.1.1/x86_64-pc-linux-gnu/bits/c++config.h
Translation Unit Configurations:
[ /home/micraow/cpplearn/Vec.cpp ]:
Process ID: 54494
Memory Usage: 30 MB
Compiler Path: /usr/bin/g++
Includes:
/usr/include/c++/14.1.1
/usr/include/c++/14.1.1/x86_64-pc-linux-gnu
/usr/include/c++/14.1.1/backward
/usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include
/usr/local/include
/usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include-fixed
/usr/include
Standard Version: c++11
IntelliSense Mode: linux-gcc-x64
Other Flags:
--g++
--gnu_version=140101
Total Memory Usage: 30 MB
------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 47085
LSP log:
loggingLevel: Debug
loggingLevel 已更改为: Debug
LSP: (invoked) cpptools/didChangeCppProperties (id: 670)
LSP: Sending response (id: 670)
LSP: (received) cpptools/didChangeVisibleTextEditors
LSP: (invoked) cpptools/didChangeVisibleTextEditors
Intellisense update pending for: file:///home/micraow/cpplearn/Vec.cpp
LSP: (received) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (invoked) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 671)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 671)
LSP: (received) cpptools/didChangeTextEditorSelection
LSP: Sending response (id: 671)
LSP: (invoked) cpptools/didChangeTextEditorSelection
IntelliSense update scheduled and TU acquisition started for: file:///home/micraow/cpplearn/Vec.cpp
更新 IntelliSense 时间(秒): 0.008
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 672)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 672)
LSP: Sending response (id: 672)
LSP: (received) cpptools/getFoldingRanges: file:///home/micraow/cpplearn/Vec.cpp (id: 673)
LSP: (invoked) cpptools/getFoldingRanges: file:///home/micraow/cpplearn/Vec.cpp (id: 673)
LSP: Sending response (id: 673)
LSP: (received) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 674)
LSP: (invoked) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 674)
LSP: Sending response (id: 674)
LSP: (received) cpptools/didChangeVisibleTextEditors
LSP: (invoked) cpptools/didChangeVisibleTextEditors
LSP: (received) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (invoked) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (received) cpptools/didChangeVisibleTextEditors
LSP: (invoked) cpptools/didChangeVisibleTextEditors
LSP: (received) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 675)
LSP: (invoked) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 675)
LSP: Sending response (id: 675)
LSP: (received) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 676)
LSP: (invoked) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 676)
LSP: Sending response (id: 676)
LSP: (received) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 677)
LSP: (invoked) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 677)
LSP: Sending response (id: 677)
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 678)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 678)
LSP: Sending response (id: 678)
LSP: (received) cpptools/didChangeTextEditorSelection
LSP: (invoked) cpptools/didChangeTextEditorSelection
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 679)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 679)
LSP: Sending response (id: 679)
LSP: (received) cpptools/didChangeTextEditorSelection
LSP: (invoked) cpptools/didChangeTextEditorSelection
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 680)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 680)
LSP: Sending response (id: 680)
LSP: (received) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 681)
LSP: (invoked) textDocument/hover: file:///home/micraow/cpplearn/Vec.cpp (id: 681)
LSP: Sending response (id: 681)
LSP: (received) cpptools/didChangeVisibleTextEditors
LSP: (invoked) cpptools/didChangeVisibleTextEditors
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 682)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 682)
LSP: Sending response (id: 682)
LSP: (received) cpptools/didChangeTextEditorSelection
LSP: (invoked) cpptools/didChangeTextEditorSelection
LSP: (received) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 683)
LSP: (invoked) cpptools/getCodeActions: file:///home/micraow/cpplearn/Vec.cpp (id: 683)
LSP: Sending response (id: 683)
LSP: (received) cpptools/didChangeVisibleTextEditors
LSP: (invoked) cpptools/didChangeVisibleTextEditors
LSP: (received) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (invoked) cpptools/didChangeActiveEditor: file:///home/micraow/cpplearn/Vec.cpp
LSP: (received) cpptools/rescanFolder
LSP: (invoked) cpptools/rescanFolder
Intellisense update pending for: file:///home/micraow/cpplearn/Vec.cpp
正在发现文件...
正在关闭 IntelliSense 服务器: /home/micraow/cpplearn/Vec.cpp
正在处理文件夹(递归): /usr/include/
IntelliSense update scheduled and TU acquisition started for: file:///home/micraow/cpplearn/Vec.cpp
Resolving recursive includes...
正在处理文件夹(递归): /usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include/
正在处理文件夹(递归): /usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include-fixed/
正在处理文件夹(递归): /usr/local/include/
正在处理文件夹(递归): /home/micraow/cpplearn/
正在发现文件: 已处理 47085 个文件
已从数据库中删除 0 个文件
“发现文件”操作已完成。
正在分析打开的文件...
正在填充包含完成缓存。
正在分析剩余的文件...
正在分析: 已处理 0 个文件
“分析剩余文件”操作已完成。
“分析打开的文件”操作已完成。
Done resolving recursive includes.
正在为 /home/micraow/cpplearn/Vec.cpp 发送编译参数
包括: /usr/include/c++/14.1.1
包括: /usr/include/c++/14.1.1/x86_64-pc-linux-gnu
包括: /usr/include/c++/14.1.1/backward
包括: /usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include
包括: /usr/local/include
包括: /usr/lib/gcc/x86_64-pc-linux-gnu/14.1.1/include-fixed
包括: /usr/include
定义: __DBL_MIN_EXP__=(-1021)
定义: __UINT_LEAST16_MAX__=0xffff
定义: __FLT16_HAS_QUIET_NAN__=1
定义: __ATOMIC_ACQUIRE=2
定义: __FLT128_MAX_10_EXP__=4932
定义: __FLT_MIN__=1.17549435082228750796873653722224568e-38F
定义: __GCC_IEC_559_COMPLEX=2
定义: __UINT_LEAST8_TYPE__=unsigned char
定义: __SIZEOF_FLOAT80__=16
定义: __BFLT16_DENORM_MIN__=9.18354961579912115600575419704879436e-41BF16
定义: __INTMAX_C(c)=c ## L
定义: __CHAR_BIT__=8
定义: __UINT8_MAX__=0xff
定义: __SCHAR_WIDTH__=8
定义: __WINT_MAX__=0xffffffffU
定义: __FLT32_MIN_EXP__=(-125)
定义: __BFLT16_MIN_10_EXP__=(-37)
定义: __ORDER_LITTLE_ENDIAN__=1234
定义: __WCHAR_MAX__=0x7fffffff
定义: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_2=1
定义: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_4=1
定义: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_8=1
定义: __GCC_ATOMIC_CHAR_LOCK_FREE=2
定义: __GCC_IEC_559=2
定义: __FLT32X_DECIMAL_DIG__=17
定义: __FLT_EVAL_METHOD__=0
定义: __FLT64_DECIMAL_DIG__=17
定义: __GCC_ATOMIC_CHAR32_T_LOCK_FREE=2
定义: __UINT_FAST64_MAX__=0xffffffffffffffffUL
定义: __SIG_ATOMIC_TYPE__=int
定义: __DBL_MIN_10_EXP__=(-307)
定义: __FINITE_MATH_ONLY__=0
定义: __FLT32X_MAX_EXP__=1024
定义: __GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1
定义: __FLT32_HAS_DENORM__=1
定义: __UINT_FAST8_MAX__=0xff
定义: __FLT32_MAX_10_EXP__=38
定义: __DEC64_MAX_EXP__=385
定义: __INT8_C(c)=c
定义: __LDBL_HAS_INFINITY__=1
定义: __INT_LEAST8_WIDTH__=8
定义: __UINT_LEAST64_MAX__=0xffffffffffffffffUL
定义: __INT_LEAST8_MAX__=0x7f
定义: __SHRT_MAX__=0x7fff
定义: __LDBL_MAX__=1.18973149535723176502126385303097021e+4932L
定义: __FLT64X_MAX_10_EXP__=4932
定义: __BFLT16_MAX_10_EXP__=38
定义: __BFLT16_MAX_EXP__=128
定义: __LDBL_IS_IEC_60559__=1
定义: __FLT64X_HAS_QUIET_NAN__=1
定义: __UINT_LEAST8_MAX__=0xff
定义: __GCC_ATOMIC_BOOL_LOCK_FREE=2
定义: __FLT128_DENORM_MIN__=6.47517511943802511092443895822764655e-4966F128
定义: __UINTMAX_TYPE__=long unsigned int
定义: __BFLT16_DECIMAL_DIG__=4
定义: __linux=1
定义: __DEC32_EPSILON__=1E-6DF
定义: __FLT_EVAL_METHOD_TS_18661_3__=0
定义: __UINT32_MAX__=0xffffffffU
定义: __GXX_EXPERIMENTAL_CXX0X__=1
定义: __DBL_DENORM_MIN__=double(4.94065645841246544176568792868221372e-324L)
定义: __FLT128_MIN_EXP__=(-16381)
定义: __WINT_MIN__=0U
定义: __FLT128_MIN_10_EXP__=(-4931)
定义: __FLT32X_IS_IEC_60559__=1
定义: __INT_LEAST16_WIDTH__=16
定义: __SCHAR_MAX__=0x7f
定义: __FLT128_MANT_DIG__=113
定义: __WCHAR_MIN__=(-__WCHAR_MAX__ - 1)
定义: __INT64_C(c)=c ## L
定义: __SSP_STRONG__=3
定义: __GCC_ATOMIC_POINTER_LOCK_FREE=2
定义: __ATOMIC_SEQ_CST=5
定义: __unix=1
定义: __INT_LEAST64_MAX__=0x7fffffffffffffffL
定义: __FLT32X_MANT_DIG__=53
定义: __GCC_ATOMIC_CHAR16_T_LOCK_FREE=2
定义: __FLT64X_EPSILON__=1.08420217248550443400745280086994171e-19F64x
定义: __STDC_HOSTED__=1
定义: __DEC64_MIN_EXP__=(-382)
定义: __DBL_DIG__=15
定义: __FLT_EPSILON__=1.19209289550781250000000000000000000e-7F
定义: __GXX_WEAK__=1
定义: __SHRT_WIDTH__=16
定义: __FLT32_IS_IEC_60559__=1
定义: __LDBL_MIN__=3.36210314311209350626267781732175260e-4932L
定义: __DBL_IS_IEC_60559__=1
定义: __DEC32_MAX__=9.999999E96DF
定义: __FLT64X_DENORM_MIN__=3.64519953188247460252840593361941982e-4951F64x
定义: __FLT32X_HAS_INFINITY__=1
定义: __unix__=1
定义: __INT_WIDTH__=32
定义: __STDC_IEC_559__=1
定义: __STDC_ISO_10646__=201706L
定义: __DECIMAL_DIG__=21
定义: __STDC_IEC_559_COMPLEX__=1
定义: __FLT64_EPSILON__=2.22044604925031308084726333618164062e-16F64
定义: __gnu_linux__=1
定义: __INT16_MAX__=0x7fff
定义: __FLT64_MIN_EXP__=(-1021)
定义: __FLT64X_MIN_10_EXP__=(-4931)
定义: __LDBL_HAS_QUIET_NAN__=1
定义: __FLT16_MIN_EXP__=(-13)
定义: __FLT64_MANT_DIG__=53
定义: __FLT64X_MANT_DIG__=64
定义: __BFLT16_DIG__=2
定义: __GNUC__=14
定义: __GXX_RTTI=1
定义: __pie__=2
定义: __MMX__=1
定义: __FLT_HAS_DENORM__=1
定义: __SIZEOF_LONG_DOUBLE__=16
定义: __BIGGEST_ALIGNMENT__=16
定义: __STDC_UTF_16__=1
定义: __FLT64_MAX_10_EXP__=308
定义: __BFLT16_IS_IEC_60559__=0
定义: __FLT16_MAX_10_EXP__=4
定义: __DBL_MAX__=double(1.79769313486231570814527423731704357e+308L)
定义: __INT_FAST32_MAX__=0x7fffffffffffffffL
定义: __DBL_HAS_INFINITY__=1
定义: __INT64_MAX__=0x7fffffffffffffffL
定义: __SIZEOF_FLOAT__=4
定义: __HAVE_SPECULATION_SAFE_VALUE=1
定义: __DEC32_MIN_EXP__=(-94)
定义: __INTPTR_WIDTH__=64
定义: __UINT_LEAST32_MAX__=0xffffffffU
定义: __FLT32X_HAS_DENORM__=1
定义: __INT_FAST16_TYPE__=long int
定义: __STRICT_ANSI__=1
定义: __MMX_WITH_SSE__=1
定义: __LDBL_HAS_DENORM__=1
定义: __SEG_GS=1
定义: __BFLT16_EPSILON__=7.81250000000000000000000000000000000e-3BF16
定义: __cplusplus=201103L
定义: __DEC32_MIN__=1E-95DF
定义: __DEPRECATED=1
定义: __DBL_MAX_EXP__=1024
定义: __WCHAR_WIDTH__=32
定义: __FLT32_MAX__=3.40282346638528859811704183484516925e+38F32
定义: __DEC128_EPSILON__=1E-33DL
定义: __FLT16_DECIMAL_DIG__=5
定义: __SSE2_MATH__=1
定义: __ATOMIC_HLE_RELEASE=131072
定义: __PTRDIFF_MAX__=0x7fffffffffffffffL
定义: __amd64=1
定义: __ATOMIC_HLE_ACQUIRE=65536
定义: __GNUG__=14
定义: __LONG_LONG_MAX__=0x7fffffffffffffffLL
定义: __SIZEOF_SIZE_T__=8
定义: __BFLT16_HAS_INFINITY__=1
定义: __FLT64X_MIN_EXP__=(-16381)
定义: __SIZEOF_WINT_T__=4
定义: __FLT32X_DIG__=15
定义: __LONG_LONG_WIDTH__=64
定义: __FLT32_MAX_EXP__=128
定义: __GXX_ABI_VERSION=1019
定义: __FLT_MIN_EXP__=(-125)
定义: __GCC_HAVE_DWARF2_CFI_ASM=1
定义: __x86_64=1
定义: __INT_FAST64_TYPE__=long int
定义: __BFLT16_MAX__=3.38953138925153547590470800371487867e+38BF16
定义: __FLT64_DENORM_MIN__=4.94065645841246544176568792868221372e-324F64
定义: __FLT16_DENORM_MIN__=5.96046447753906250000000000000000000e-8F16
定义: __FLT128_EPSILON__=1.92592994438723585305597794258492732e-34F128
定义: __FLT64X_NORM_MAX__=1.18973149535723176502126385303097021e+4932F64x
定义: __SIZEOF_POINTER__=8
定义: __SIZE_TYPE__=long unsigned int
定义: __LP64__=1
定义: __DBL_HAS_QUIET_NAN__=1
定义: __FLT32X_EPSILON__=2.22044604925031308084726333618164062e-16F32x
定义: __LDBL_MAX_EXP__=16384
定义: __DECIMAL_BID_FORMAT__=1
定义: __FLT64_MIN_10_EXP__=(-307)
定义: __FLT16_MIN_10_EXP__=(-4)
定义: __FLT64X_DECIMAL_DIG__=21
定义: __DEC128_MIN__=1E-6143DL
定义: __REGISTER_PREFIX__=
定义: __UINT16_MAX__=0xffff
定义: __FLT128_HAS_INFINITY__=1
定义: __FLT32_MIN__=1.17549435082228750796873653722224568e-38F32
定义: __UINT8_TYPE__=unsigned char
定义: __FLT_DIG__=6
定义: __NO_INLINE__=1
定义: __DEC_EVAL_METHOD__=2
定义: __FLT_MANT_DIG__=24
定义: __LDBL_DECIMAL_DIG__=21
定义: __VERSION__="14.1.1 20240522"
定义: __UINT64_C(c)=c ## UL
定义: _STDC_PREDEF_H=1
定义: __INT_LEAST32_MAX__=0x7fffffff
定义: __GCC_ATOMIC_INT_LOCK_FREE=2
定义: __FLT128_MAX_EXP__=16384
定义: __FLT32_MANT_DIG__=24
定义: __FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__
定义: __FLT32X_MIN_EXP__=(-1021)
定义: __STDC_IEC_60559_COMPLEX__=201404L
定义: __BFLT16_MIN__=1.17549435082228750796873653722224568e-38BF16
定义: __FLT128_HAS_DENORM__=1
定义: __FLT32_DECIMAL_DIG__=9
定义: __FLT128_DIG__=33
定义: __INT32_C(c)=c
定义: __DEC64_EPSILON__=1E-15DD
定义: __ORDER_PDP_ENDIAN__=3412
定义: __DEC128_MIN_EXP__=(-6142)
定义: __DEC128_MAX__=9.999999999999999999999999999999999E6144DL
定义: __INT_FAST32_TYPE__=long int
定义: __UINT_LEAST16_TYPE__=short unsigned int
定义: __DEC128_MAX_EXP__=6145
定义: __DBL_HAS_DENORM__=1
定义: __UINT64_MAX__=0xffffffffffffffffUL
定义: __FLT_IS_IEC_60559__=1
定义: __GNUC_WIDE_EXECUTION_CHARSET_NAME="UTF-32LE"
定义: __FLT64X_DIG__=18
定义: __INT8_TYPE__=signed char
定义: __ELF__=1
定义: __GCC_ASM_FLAG_OUTPUTS__=1
定义: __UINT32_TYPE__=unsigned int
定义: __BFLT16_HAS_QUIET_NAN__=1
定义: __FLT_RADIX__=2
定义: __INT_LEAST16_TYPE__=short int
定义: __LDBL_EPSILON__=1.08420217248550443400745280086994171e-19L
定义: __UINTMAX_C(c)=c ## UL
定义: __FLT16_DIG__=3
定义: __k8=1
定义: __FLT32X_MIN__=2.22507385850720138309023271733240406e-308F32x
定义: __SIG_ATOMIC_MAX__=0x7fffffff
定义: __GCC_ATOMIC_WCHAR_T_LOCK_FREE=2
定义: __USER_LABEL_PREFIX__=
定义: __STDC_IEC_60559_BFP__=201404L
定义: __SIZEOF_PTRDIFF_T__=8
定义: __FLT64X_HAS_INFINITY__=1
定义: __SIZEOF_LONG__=8
定义: __LDBL_DIG__=18
定义: __FLT64_IS_IEC_60559__=1
定义: __x86_64__=1
定义: __FLT16_IS_IEC_60559__=1
定义: __FLT16_MAX_EXP__=16
定义: __DEC32_SUBNORMAL_MIN__=0.000001E-95DF
定义: __INT_FAST16_MAX__=0x7fffffffffffffffL
定义: __GCC_CONSTRUCTIVE_SIZE=64
定义: __FLT64_DIG__=15
定义: __UINT_FAST32_MAX__=0xffffffffffffffffUL
定义: __UINT_LEAST64_TYPE__=long unsigned int
定义: __FLT16_EPSILON__=9.76562500000000000000000000000000000e-4F16
定义: __FLT_HAS_QUIET_NAN__=1
定义: __FLT_MAX_10_EXP__=38
定义: __FLT64X_HAS_DENORM__=1
定义: __DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL
定义: __FLT_HAS_INFINITY__=1
定义: __GNUC_EXECUTION_CHARSET_NAME="UTF-8"
定义: __UINT_FAST16_TYPE__=long unsigned int
定义: __DEC64_MAX__=9.999999999999999E384DD
定义: __INT_FAST32_WIDTH__=64
定义: __CHAR16_TYPE__=short unsigned int
定义: __PRAGMA_REDEFINE_EXTNAME=1
定义: __SIZE_WIDTH__=64
定义: __SEG_FS=1
定义: __INT_LEAST16_MAX__=0x7fff
定义: __FLT16_NORM_MAX__=6.55040000000000000000000000000000000e+4F16
定义: __DEC64_MANT_DIG__=16
定义: __FLT32_DENORM_MIN__=1.40129846432481707092372958328991613e-45F32
定义: __SIG_ATOMIC_WIDTH__=32
定义: __INT_LEAST64_TYPE__=long int
定义: __INT16_TYPE__=short int
定义: __INT_LEAST8_TYPE__=signed char
定义: __FLT16_MAX__=6.55040000000000000000000000000000000e+4F16
定义: __FLT128_MIN__=3.36210314311209350626267781732175260e-4932F128
定义: __SIZEOF_INT__=4
定义: __DEC32_MAX_EXP__=97
定义: __INT_FAST8_MAX__=0x7f
定义: __FLT128_MAX__=1.18973149535723176508575932662800702e+4932F128
定义: __INTPTR_MAX__=0x7fffffffffffffffL
定义: __FLT64_HAS_QUIET_NAN__=1
定义: __FLT32_MIN_10_EXP__=(-37)
定义: __EXCEPTIONS=1
定义: __UINT16_C(c)=c
定义: __PTRDIFF_WIDTH__=64
定义: __LDBL_MANT_DIG__=64
定义: __INT_FAST16_WIDTH__=64
定义: __FLT64_HAS_INFINITY__=1
定义: __FLT64X_MAX__=1.18973149535723176502126385303097021e+4932F64x
定义: __FLT16_HAS_INFINITY__=1
定义: __SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)
定义: __code_model_small__=1
定义: __GCC_ATOMIC_LONG_LOCK_FREE=2
定义: __DEC32_MANT_DIG__=7
定义: __k8__=1
定义: __INTPTR_TYPE__=long int
定义: __UINT16_TYPE__=short unsigned int
定义: __WCHAR_TYPE__=int
定义: __pic__=2
定义: __UINTPTR_MAX__=0xffffffffffffffffUL
定义: __INT_FAST64_WIDTH__=64
定义: __INT_FAST64_MAX__=0x7fffffffffffffffL
定义: __GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1
定义: __FLT_NORM_MAX__=3.40282346638528859811704183484516925e+38F
定义: __FLT32_HAS_INFINITY__=1
定义: __FLT64X_MAX_EXP__=16384
定义: __UINT_FAST64_TYPE__=long unsigned int
定义: __BFLT16_MIN_EXP__=(-125)
定义: __INT_MAX__=0x7fffffff
定义: __linux__=1
定义: __INT64_TYPE__=long int
定义: __FLT_MAX_EXP__=128
定义: __ORDER_BIG_ENDIAN__=4321
定义: __DBL_MANT_DIG__=53
定义: __SIZEOF_FLOAT128__=16
定义: __BFLT16_MANT_DIG__=8
定义: __DEC64_MIN__=1E-383DD
定义: __WINT_TYPE__=unsigned int
定义: __UINT_LEAST32_TYPE__=unsigned int
定义: __SIZEOF_SHORT__=2
定义: __FLT32_NORM_MAX__=3.40282346638528859811704183484516925e+38F32
定义: __SSE__=1
定义: __LDBL_MIN_EXP__=(-16381)
定义: __FLT64_MAX__=1.79769313486231570814527423731704357e+308F64
定义: __amd64__=1
定义: __WINT_WIDTH__=32
定义: __INT_LEAST64_WIDTH__=64
定义: __FLT32X_MAX_10_EXP__=308
定义: __SIZEOF_INT128__=16
定义: __FLT16_MIN__=6.10351562500000000000000000000000000e-5F16
定义: __FLT64X_IS_IEC_60559__=1
定义: __LDBL_MAX_10_EXP__=4932
定义: __ATOMIC_RELAXED=0
定义: __DBL_EPSILON__=double(2.22044604925031308084726333618164062e-16L)
定义: __INT_LEAST32_TYPE__=int
定义: _LP64=1
定义: __UINT8_C(c)=c
定义: __FLT64_MAX_EXP__=1024
定义: __SIZEOF_WCHAR_T__=4
定义: __GNUC_PATCHLEVEL__=1
定义: __FLT128_NORM_MAX__=1.18973149535723176508575932662800702e+4932F128
定义: __FLT64_NORM_MAX__=1.79769313486231570814527423731704357e+308F64
定义: __FLT128_HAS_QUIET_NAN__=1
定义: __INTMAX_MAX__=0x7fffffffffffffffL
定义: __INT_FAST8_TYPE__=signed char
定义: __FLT64X_MIN__=3.36210314311209350626267781732175260e-4932F64x
定义: __STDCPP_THREADS__=1
定义: __BFLT16_HAS_DENORM__=1
定义: __GNUC_STDC_INLINE__=1
定义: __FLT64_HAS_DENORM__=1
定义: __FLT32_EPSILON__=1.19209289550781250000000000000000000e-7F32
定义: __FLT16_HAS_DENORM__=1
定义: __DBL_DECIMAL_DIG__=17
定义: __STDC_UTF_32__=1
定义: __INT_FAST8_WIDTH__=8
定义: __FXSR__=1
定义: __FLT32X_MAX__=1.79769313486231570814527423731704357e+308F32x
定义: __DBL_NORM_MAX__=double(1.79769313486231570814527423731704357e+308L)
定义: __BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__
定义: __GCC_DESTRUCTIVE_SIZE=64
定义: __INTMAX_WIDTH__=64
定义: __FLT32_DIG__=6
定义: __UINT64_TYPE__=long unsigned int
定义: __UINT32_C(c)=c ## U
定义: __FLT_DENORM_MIN__=1.40129846432481707092372958328991613e-45F
定义: __FLT128_IS_IEC_60559__=1
定义: __INT8_MAX__=0x7f
定义: __LONG_WIDTH__=64
定义: __DBL_MIN__=double(2.22507385850720138309023271733240406e-308L)
定义: __PIC__=2
定义: __INT32_MAX__=0x7fffffff
定义: __UINT_FAST32_TYPE__=long unsigned int
定义: __FLT16_MANT_DIG__=11
定义: __FLT32X_NORM_MAX__=1.79769313486231570814527423731704357e+308F32x
定义: __CHAR32_TYPE__=unsigned int
定义: __FLT_MAX__=3.40282346638528859811704183484516925e+38F
定义: __SSE2__=1
定义: __BFLT16_NORM_MAX__=3.38953138925153547590470800371487867e+38BF16
定义: __INT32_TYPE__=int
定义: __SIZEOF_DOUBLE__=8
定义: __FLT_MIN_10_EXP__=(-37)
定义: __FLT64_MIN__=2.22507385850720138309023271733240406e-308F64
定义: __INT_LEAST32_WIDTH__=32
定义: __INTMAX_TYPE__=long int
定义: __FLT32X_HAS_QUIET_NAN__=1
定义: __ATOMIC_CONSUME=1
定义: __GNUC_MINOR__=1
定义: __UINTMAX_MAX__=0xffffffffffffffffUL
定义: __PIE__=2
定义: __FLT32X_DENORM_MIN__=4.94065645841246544176568792868221372e-324F32x
定义: __DBL_MAX_10_EXP__=308
定义: __LDBL_DENORM_MIN__=3.64519953188247460252840593361941982e-4951L
定义: __INT16_C(c)=c
定义: __STDC__=1
定义: __PTRDIFF_TYPE__=long int
定义: __LONG_MAX__=0x7fffffffffffffffL
定义: __FLT32X_MIN_10_EXP__=(-307)
定义: __UINTPTR_TYPE__=long unsigned int
定义: __DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD
定义: __DEC128_MANT_DIG__=34
定义: __LDBL_MIN_10_EXP__=(-4931)
定义: __SSE_MATH__=1
定义: __SIZEOF_LONG_LONG__=8
定义: __FLT128_DECIMAL_DIG__=36
定义: __GCC_ATOMIC_LLONG_LOCK_FREE=2
定义: __FLT32_HAS_QUIET_NAN__=1
定义: __FLT_DECIMAL_DIG__=9
定义: __UINT_FAST16_MAX__=0xffffffffffffffffUL
定义: __LDBL_NORM_MAX__=1.18973149535723176502126385303097021e+4932L
定义: __GCC_ATOMIC_SHORT_LOCK_FREE=2
定义: __SIZE_MAX__=0xffffffffffffffffUL
定义: __UINT_FAST8_TYPE__=unsigned char
定义: _GNU_SOURCE=1
定义: __ATOMIC_ACQ_REL=4
定义: __ATOMIC_RELEASE=3
其他: --g++
其他: --gnu_version=140101
stdver: c++11
intelliSenseMode: linux-gcc-x64
更新 IntelliSense 时间(秒): 2.142
LSP: (received) cpptools/getFoldingRanges: file:///home/micraow/cpplearn/Vec.cpp (id: 684)
LSP: (invoked) cpptools/getFoldingRanges: file:///home/micraow/cpplearn/Vec.cpp (id: 684)
LSP: Sending response (id: 684)
Other Extensions
ms-vscode.cpptools-themes
Additional context

Environment
Bug Summary and Steps to Reproduce
Bug Summary:
After upgrading to gcc 14, clang-diagnostic-error reports an "Error while processing" at the beginning of every C++ file. More specifically, it's
invalid suffix 'bf16' on floating constantonc++config.h, a gcc head file. The concerning code looks like this:but my program can compile and run. I think this is a problem of C/C++ Extension
Steps to reproduce:
Expected behavior:
No such error.
Configuration and Logs
c_cpp_properties.json { "configurations": [ { "name": "Linux", "includePath": [ "${workspaceFolder}/**" ], "defines": [] } ], "version": 4 } C/C++: Log Diagnostics:-------- Diagnostics - 2024/7/2 09:12:47
------- Workspace parsing diagnostics -------
Number of files discovered (not excluded): 47085
LSP log:
Other Extensions
ms-vscode.cpptools-themes
Additional context