`clang-format --version`이 1을 반환하는 이유는 무엇입니까?

`clang-format --version`이 1을 반환하는 이유는 무엇입니까?

저는 RHEL7을 사용하고 있으며 방금 설치 했습니다 clang.sudo yum install clang

그런 다음 명령을 실행하면 clang-format --version출력은 다음과 같습니다.

me@localhost:~$ clang-format --version
LLVM (http://llvm.org/):
  LLVM version 3.4.2
  Optimized build.
  Built May 10 2018 (10:48:27).
  Default target: x86_64-redhat-linux-gnu
  Host CPU: x86-64

me@localhost:~$ echo $?
1

보시다시피 오류 clang-format --version없이 작동하는 것처럼 보이지만 .echo $?1

이 명령에 문제가 있나요?

방금 Ubuntu 시스템에서 동일한 작업을 수행했는데 그러한 오류가 발생하지 않았습니다.

출력 type -a clang-format:

clang-format is /usr/bin/clang-format
clang-format is /bin/clang-format

출력 file "$(command -v clang-format)":

/usr/bin/clang-format: ELF 64-bit LSB executable, x86-64, version 1 (GNU/Linux), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=899595580dbae12ee1ae6eb9feb8a19aa6d51f49, stripped

답변1

예를 들어, yumdocker 이미지에 설치할 수 있는 이전 버전의 clang-format을 사용하여 이 문제를 재현할 수 있습니다. sglim2/centos7clang-format --version이 문제를 재현하려면 이전 버전의 clang-format을 설치하십시오. 0을 반환하도록 수정되었습니다. 이번에 제출하세요:

명령줄: -version 및 -help가 성공적으로 종료되었습니다.

현재 CommandLine 라이브러리를 사용하는 도구는 -version 또는 -help를 사용하여 호출하면 오류와 함께 종료됩니다. 이는 특이하고 비표준적인 현상이므로 성공적인 종료를 위해 이를 수정하겠습니다.

나는 누구도 현재의 행동에 의존하는 것을 원하지 않으므로 이는 상당히 안전한 변화일 것입니다.

llvm-svn:202530

관련 정보