Files
clang-p2996/llvm/test/tools/UpdateTestChecks/update_test_checks/basic.test
Nikita Popov fb309041f0 [UTC] Enable --function-signature by default
This patch enables --function-signature by default under --version 2
and makes --version 2 the default. This means that all newly created
tests will check the function signature, while leaving old tests alone.

There's two motivations for this change:

* Without --function-signature, the generated check lines may fail
  in a very hard to understand way if the test both includes a
  function definition and a call to that function. (Though we could
  address this by making the CHECK-LABEL stricter, without checking
  the full signature.)
* This actually checks that uses of the arguments in the function
  body use the correct argument, instead of matching against any
  variable.

This is a replacement for D139006 and D140212 based on the
--version mechanism.

I did not include an opt-out flag --no-function-signature because
I'm not sure we need it. Would be happy to include it though,
if desired.

Differential Revision: https://reviews.llvm.org/D145149
2023-03-07 10:27:52 +01:00

22 lines
1.1 KiB
Plaintext

# REQUIRES: x86-registered-target
## Basic test checking that update_test_checks.py works correctly
# RUN: cp -f %S/Inputs/basic.ll %t.ll && %update_test_checks %t.ll
# RUN: diff -u %t.ll %S/Inputs/basic.ll.expected
## Check that running the script again does not change the result:
# RUN: %update_test_checks %t.ll
# RUN: diff -u %t.ll %S/Inputs/basic.ll.expected
## Also try the --function-signature flag
# RUN: %update_test_checks %t.ll --function-signature
# RUN: diff -u %t.ll %S/Inputs/basic.ll.funcsig.expected
## Verify that running without the --function-signature flag does not removes
## the -SAME: lines since the generated file will have --function-signature in
## an UTC_ARGS: comment in the first line (from the invocation above) which is
## added to the update invocation below.
# RUN: %update_test_checks %t.ll
# RUN: diff -u %t.ll %S/Inputs/basic.ll.funcsig.expected
## Restore the original file without --function-signature and check that
## --version 2 will implicitly enable it and also check the return type.
# RUN: cp -f %S/Inputs/basic.ll %t.ll
# RUN: %update_test_checks %t.ll --version 2
# RUN: diff -u %t.ll %S/Inputs/basic.ll.v2.expected