[all-commits] [llvm/llvm-project] 2893d5: [Serialization] Don't warn when a deserialized cat...

Volodymyr Sapsai via All-commits all-commits at lists.llvm.org
Wed Feb 22 11:07:17 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 2893d55f8f61edb2c253b960cab1107ea6c163c2
      https://github.com/llvm/llvm-project/commit/2893d55f8f61edb2c253b960cab1107ea6c163c2
  Author: Volodymyr Sapsai <vsapsai at apple.com>
  Date:   2023-02-22 (Wed, 22 Feb 2023)

  Changed paths:
    M clang/lib/Serialization/ASTReaderDecl.cpp
    M clang/test/Modules/compare-objc-interface.m
    M clang/test/Modules/hidden-duplicates.m
    M clang/test/Modules/objc-categories.m

  Log Message:
  -----------
  [Serialization] Don't warn when a deserialized category is equivalent to an existing one.

A single class allows multiple categories to be defined for it. But if
two of such categories have the same name, we emit a warning. It's not a
hard error but a good indication of a potential mistake.

With modules, we can end up with the same category in different modules.
Diagnosing such a situation has little value as the categories in
different modules are equivalent and don't reflect the usage of the same
name for different purposes. When we deserialize a duplicate category,
compare it to an existing one and warn only when the new one is
different.

rdar://104582081

Differential Revision: https://reviews.llvm.org/D144149




More information about the All-commits mailing list