michele.scandale added a comment.

I can see failures related to this change in a downstream version of clang 
where the default `ClangABICompat` value is not `Latest` (after the followup 
https://reviews.llvm.org/rGda6187f566b7881cb8350621aea9bd582de569b9).
My understanding is that with `-fclang-abi-compat=14` we should get the 
behavior prior to this change. If my understanding is correct, then I'd think 
that such failure shouldn't occur.

These are the tests that I see failing with new diagnostic messages `class 
template partial specialization is not more specialized than the primary 
template` being raised:

  Clang :: CXX/temp/temp.decls/temp.class.spec/p8-0x.cpp
  Clang :: CXX/temp/temp.decls/temp.variadic/example-bind.cpp
  Clang :: CXX/temp/temp.decls/temp.variadic/example-tuple.cpp
  Clang :: CXX/temp/temp.decls/temp.variadic/injected-class-name.cpp
  Clang :: CXX/temp/temp.decls/temp.variadic/metafunctions.cpp
  Clang :: CXX/temp/temp.fct.spec/temp.arg.explicit/p3-0x.cpp
  Clang :: CXX/temp/temp.fct.spec/temp.arg.explicit/p9-0x.cpp
  Clang :: CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.call/p1-0x.cpp
  Clang :: CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p21.cpp
  Clang :: CXX/temp/temp.fct.spec/temp.deduct/temp.deduct.type/p9-0x.cpp
  Clang :: CXX/temp/temp.param/p11-0x.cpp
  Clang :: SemaCXX/coreturn-exp-namespace.cpp
  Clang :: SemaCXX/coreturn.cpp
  Clang :: SemaCXX/coroutine-unhandled_exception-warning-exp-namespace.cpp
  Clang :: SemaCXX/coroutine-unhandled_exception-warning.cpp
  Clang :: SemaCXX/coroutines-exp-namespace.cpp
  Clang :: SemaCXX/coroutines.cpp
  Clang :: SemaCXX/crash-lambda-12645424.cpp
  Clang :: SemaCXX/discrim-union.cpp
  Clang :: SemaTemplate/attributes.cpp
  Clang :: SemaTemplate/class-template-spec.cpp
  Clang :: SemaTemplate/deduction.cpp
  Clang :: SemaTemplate/pack-deduction.cpp
  Clang :: SemaTemplate/temp_arg_nontype_cxx1z.cpp
  Clang :: SemaTemplate/temp_arg_template_cxx1z.cpp

I've reproduced this locally with the following patch to inject 
`-fclang-abi-compat=14` on the command line executed for those tests:

  diff --git a/clang/test/CXX/temp/lit.local.cfg 
b/clang/test/CXX/temp/lit.local.cfg
  new file mode 100644
  index 000000000000..23d23bb6c46e
  --- /dev/null
  +++ b/clang/test/CXX/temp/lit.local.cfg
  @@ -0,0 +1,3 @@
  +config.substitutions.insert(0,
  +  ('%clang_cc1',
  +   '%clang_cc1 -fclang-abi-compat=14.0'))
  diff --git a/clang/test/SemaCXX/lit.local.cfg 
b/clang/test/SemaCXX/lit.local.cfg
  new file mode 100644
  index 000000000000..23d23bb6c46e
  --- /dev/null
  +++ b/clang/test/SemaCXX/lit.local.cfg
  @@ -0,0 +1,3 @@
  +config.substitutions.insert(0,
  +  ('%clang_cc1',
  +   '%clang_cc1 -fclang-abi-compat=14.0'))
  diff --git a/clang/test/SemaTemplate/lit.local.cfg 
b/clang/test/SemaTemplate/lit.local.cfg
  new file mode 100644
  index 000000000000..23d23bb6c46e
  --- /dev/null
  +++ b/clang/test/SemaTemplate/lit.local.cfg
  @@ -0,0 +1,3 @@
  +config.substitutions.insert(0,
  +  ('%clang_cc1',
  +   '%clang_cc1 -fclang-abi-compat=14.0'))

(Note that by adding the `lit.local.cfg` file abovementioned there will also be 
the failure of `SemaCXX/class-layout.cpp`, but that can be ignored as for some 
command lines the expected behavior is equivalent to pass 
`-fclang-abi-compat=latest`)


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D128745/new/

https://reviews.llvm.org/D128745

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to