diff options
Diffstat (limited to 'libcpp/ChangeLog')
-rw-r--r-- | libcpp/ChangeLog | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog index aeb4e14..d60ccbc 100644 --- a/libcpp/ChangeLog +++ b/libcpp/ChangeLog @@ -1,3 +1,76 @@ +2025-09-01 Jakub Jelinek <jakub@redhat.com> + + * macro.cc: Implement C2Y N3457 - The __COUNTER__ predefined macro. + (_cpp_builtin_macro_text): Diagnose if __COUNTER__ reaches + 2147483648 value. + +2025-08-15 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + PR target/121520 + * include/cpplib.h (struct cpp_options): Add + suppress_builtin_macro_warnings member. + (cpp_warn): New inline functions. + * init.cc (cpp_create_reader): Clear suppress_builtin_macro_warnings. + (cpp_init_builtins): Call cpp_warn on __cplusplus, __STDC__, + __STDC_VERSION__, __STDC_MB_MIGHT_NEQ_WC__ and + __STDCPP_STRICT_POINTER_SAFETY__ when appropriate. + * directives.cc (do_undef): Warn on undefining NODE_WARN macros if + not cpp_keyword_p. Don't emit any NODE_WARN related diagnostics + if CPP_OPTION (pfile, suppress_builtin_macro_warnings). + (cpp_define, _cpp_define_builtin, cpp_undef): Temporarily set + CPP_OPTION (pfile, suppress_builtin_macro_warnings) around + run_directive calls. + * macro.cc (_cpp_create_definition): Warn on defining NODE_WARN + macros if they weren't previously defined and not cpp_keyword_p. + Ignore NODE_WARN for diagnostics if + CPP_OPTION (pfile, suppress_builtin_macro_warnings). + +2025-08-10 H.J. Lu <hjl.tools@gmail.com> + + * configure: Regenerated. + +2025-08-07 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * include/cpplib.h (struct cpp_options): Add cpp_warn_keyword_macro. + (enum cpp_warning_reason): Add CPP_W_KEYWORD_MACRO enumerator. + (cpp_keyword_p): New inline function. + * directives.cc (do_undef): Support -Wkeyword-macro diagnostics. + * macro.cc (warn_of_redefinition): Ignore NODE_WARN flag on nodes + registered for -Wkeyword-macro. + (_cpp_create_definition): Support -Wkeyword-macro diagnostics. + Formatting fixes. + +2025-08-05 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * macro.cc (paste_tokens): Use %< and %> instead of \" in + diagnostics around %.*s. + +2025-08-04 Jakub Jelinek <jakub@redhat.com> + + PR preprocessor/120778 + * macro.cc (stringify_arg): For C++26 emit a pedarn instead of warning + for \ at the end of stringification. + +2025-08-03 Jakub Jelinek <jakub@redhat.com> + + PR c++/120845 + * lex.cc (cpp_maybe_module_directive): Move eol variable declaration + to the start of the function, initialize to false and only set it to + peek->type == CPP_PRAGMA_EOL in the not_module case. Formatting fix. + +2025-07-30 Jakub Jelinek <jakub@redhat.com> + + PR c++/120778 + * internal.h (struct lexer_state): Add comma_ok member. + * expr.cc (_cpp_parse_expr): Initialize it to 0, increment on + CPP_OPEN_PAREN and CPP_QUERY, decrement on CPP_CLOSE_PAREN + and CPP_COLON. + (num_binary_op): For C++ pedwarn on comma operator if + pfile->state.comma_ok is 0 instead of !c99 or skip_eval. + 2025-07-25 David Malcolm <dmalcolm@redhat.com> * charset.cc: Update comment for file rename. |