https://github.com/ZijunZhaoCCK updated https://github.com/llvm/llvm-project/pull/75373
>From 74f256d8a77ee2ba8e0d5bbb6519aa2729cf94d5 Mon Sep 17 00:00:00 2001 From: zijunzhao <zijunz...@google.com> Date: Wed, 13 Dec 2023 20:07:45 +0000 Subject: [PATCH 1/2] Make clang report garbage target versions. Clang always silently ignores garbage target versions and this makes debug harder. So clang will report when target versions are invalid. --- llvm/lib/TargetParser/Triple.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/llvm/lib/TargetParser/Triple.cpp b/llvm/lib/TargetParser/Triple.cpp index c5e9ad43d22588..335253194d1cf8 100644 --- a/llvm/lib/TargetParser/Triple.cpp +++ b/llvm/lib/TargetParser/Triple.cpp @@ -11,6 +11,7 @@ #include "llvm/ADT/StringExtras.h" #include "llvm/ADT/StringSwitch.h" #include "llvm/Support/ErrorHandling.h" +#include "llvm/Support/raw_ostream.h" #include "llvm/Support/SwapByteOrder.h" #include "llvm/Support/VersionTuple.h" #include "llvm/TargetParser/ARMTargetParser.h" @@ -1199,7 +1200,11 @@ StringRef Triple::getOSAndEnvironmentName() const { static VersionTuple parseVersionFromName(StringRef Name) { VersionTuple Version; - Version.tryParse(Name); + if (Version.tryParse(Name)) { + errs() << "The input is "<< Name << " and it is invalid. Should pass an "<< + "integer or integer combination! e.g. 2, 9.5 or 3.4.5\n"; + exit(1); + } return Version.withoutBuild(); } >From 0d159b2a9b76e233e020ac0aef15b49b03f4d86c Mon Sep 17 00:00:00 2001 From: zijunzhao <zijunz...@google.com> Date: Wed, 13 Dec 2023 20:23:54 +0000 Subject: [PATCH 2/2] rephrase --- llvm/lib/TargetParser/Triple.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/llvm/lib/TargetParser/Triple.cpp b/llvm/lib/TargetParser/Triple.cpp index 335253194d1cf8..713ca447403d50 100644 --- a/llvm/lib/TargetParser/Triple.cpp +++ b/llvm/lib/TargetParser/Triple.cpp @@ -1201,8 +1201,7 @@ StringRef Triple::getOSAndEnvironmentName() const { static VersionTuple parseVersionFromName(StringRef Name) { VersionTuple Version; if (Version.tryParse(Name)) { - errs() << "The input is "<< Name << " and it is invalid. Should pass an "<< - "integer or integer combination! e.g. 2, 9.5 or 3.4.5\n"; + errs() << "version "<< Name << " is invalid\n"; exit(1); } return Version.withoutBuild(); _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits