[all-commits] [llvm/llvm-project] 4dceb2: [flang] Don't create bogus tokens from token pasti...

Peter Klausler via All-commits all-commits at lists.llvm.org
Mon Jul 14 11:12:05 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 4dceb25dd1b96c93a7bd302c5d81bb1aacf75f4d
      https://github.com/llvm/llvm-project/commit/4dceb25dd1b96c93a7bd302c5d81bb1aacf75f4d
  Author: Peter Klausler <pklausler at nvidia.com>
  Date:   2025-07-14 (Mon, 14 Jul 2025)

  Changed paths:
    M flang/include/flang/Parser/char-block.h
    M flang/lib/Parser/preprocessor.cpp
    M flang/lib/Parser/unparse.cpp
    M flang/lib/Semantics/expression.cpp
    M flang/lib/Semantics/resolve-names.cpp
    M flang/lib/Semantics/tools.cpp
    A flang/test/Preprocessing/bug1126.F90

  Log Message:
  -----------
  [flang] Don't create bogus tokens from token pasting (##) (#147596)

When blank tokens arise from macro replacement in token sequences with
token pasting (##), the preprocessor is producing some bogus tokens
(e.g., "name(") that can lead to subtle bugs later when macro names are
not recognized as such.

The fix is to not paste tokens together when the result would not be a
valid Fortran or C token in the preprocessing context.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list