[llvm] [llvm-objcopy] Add llvm-objcopy option --set-visibility-sym (PR #80872)

James Henderson via llvm-commits llvm-commits at lists.llvm.org
Wed Feb 14 01:15:32 PST 2024


================
@@ -0,0 +1,43 @@
+
+# RUN: yaml2obj %s -o %t.o
+# RUN: echo 'foo' > %t.symbols
+
+# Check if passing an invalid visibility type generates an error message
+# RUN: not llvm-objcopy %t.o --set-symbols-visibility=%t.symbols=invalid-type --regex 2>&1 | FileCheck %s --check-prefix=TYPE
+# RUN: not llvm-objcopy %t.o --set-symbol-visibility=foo=invalid-type --regex 2>&1 | FileCheck %s --check-prefix=TYPE
+# TYPE: error: 'invalid-type' is not a valid symbol visibility
+
+# Check if using the option multiple times generates an error message
+# RUN: not llvm-objcopy %t.o --set-symbols-visibility=%t.symbols=hidden \
+# RUN:                       --set-symbols-visibility=%t.symbols=default \
+# RUN:                       --regex 2>&1 | FileCheck %s --check-prefix=MULTIPLE
+# RUN: not llvm-objcopy %t.o --set-symbol-visibility=foo=hidden \
+# RUN:                       --set-symbol-visibility=bar=default \
+# RUN:                       --regex 2>&1 | FileCheck %s --check-prefix=MULTIPLE
+# RUN: not llvm-objcopy %t.o --set-symbols-visibility=%t.symbols=hidden \
+# RUN:                       --set-symbol-visibility=bar=default \
+# RUN:                       --regex 2>&1 | FileCheck %s --check-prefix=MULTIPLE
+# MULTIPLE: error: multiple specifications of visibility type
+
+# Check if not using the proper format with character '=' generates an error
----------------
jh7370 wrote:

```suggestion
# Check that omitting the '=' character generates an error
```
This reads better to me.

https://github.com/llvm/llvm-project/pull/80872


More information about the llvm-commits mailing list