[all-commits] [llvm/llvm-project] 130c13: [clang] Fix crash with multiple non-parenthsized `...

Vlad Serebrennikov via All-commits all-commits at lists.llvm.org
Thu Aug 1 06:56:36 PDT 2024


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 130c135689ec12ab78c53645808524a8d28f7cae
      https://github.com/llvm/llvm-project/commit/130c135689ec12ab78c53645808524a8d28f7cae
  Author: Vlad Serebrennikov <serebrennikov.vladislav at gmail.com>
  Date:   2024-08-01 (Thu, 01 Aug 2024)

  Changed paths:
    M clang/docs/ReleaseNotes.rst
    M clang/lib/Parse/ParseExpr.cpp

  Log Message:
  -----------
  [clang] Fix crash with multiple non-parenthsized `sizeof` (#101297)

There are 5 unary operators that can be followed by a non-parenthesized
expression: `sizeof`, `__datasizeof`, `__alignof`, `alignof`,
`_Alignof`. When we nest them too deep, `BalancedDelimiterTracker` does
not help, because there are no parentheses, and we crash. Instead, this
patch recognize chains of those operators, and parse them with
sufficient stack space.

Fixes #45061



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