Skip to content

Commit 45067f8

Browse files
committed
[test] Don't leak DerivedArgList in test
1 parent 7ca3e23 commit 45067f8

File tree

1 file changed

+10
-6
lines changed

1 file changed

+10
-6
lines changed

clang/unittests/Driver/ToolChainTest.cpp

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -486,8 +486,8 @@ TEST(DxcModeTest, ValidatorVersionValidation) {
486486
for (auto *A : Args)
487487
DAL->append(A);
488488

489-
auto *TranslatedArgs =
490-
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None);
489+
std::unique_ptr<llvm::opt::DerivedArgList> TranslatedArgs{
490+
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None)};
491491
EXPECT_NE(TranslatedArgs, nullptr);
492492
if (TranslatedArgs) {
493493
auto *A = TranslatedArgs->getLastArg(
@@ -506,7 +506,8 @@ TEST(DxcModeTest, ValidatorVersionValidation) {
506506
for (auto *A : Args)
507507
DAL->append(A);
508508

509-
TranslatedArgs = TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None);
509+
TranslatedArgs.reset(
510+
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None));
510511
EXPECT_EQ(Diags.getNumErrors(), 1u);
511512
EXPECT_STREQ(DiagConsumer->Errors.back().c_str(),
512513
"invalid validator version : 0.1\nIf validator major version is "
@@ -521,7 +522,8 @@ TEST(DxcModeTest, ValidatorVersionValidation) {
521522
for (auto *A : Args)
522523
DAL->append(A);
523524

524-
TranslatedArgs = TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None);
525+
TranslatedArgs.reset(
526+
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None));
525527
EXPECT_EQ(Diags.getNumErrors(), 2u);
526528
EXPECT_STREQ(DiagConsumer->Errors.back().c_str(),
527529
"invalid validator version : 1\nFormat of validator version is "
@@ -536,7 +538,8 @@ TEST(DxcModeTest, ValidatorVersionValidation) {
536538
for (auto *A : Args)
537539
DAL->append(A);
538540

539-
TranslatedArgs = TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None);
541+
TranslatedArgs.reset(
542+
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None));
540543
EXPECT_EQ(Diags.getNumErrors(), 3u);
541544
EXPECT_STREQ(
542545
DiagConsumer->Errors.back().c_str(),
@@ -552,7 +555,8 @@ TEST(DxcModeTest, ValidatorVersionValidation) {
552555
for (auto *A : Args)
553556
DAL->append(A);
554557

555-
TranslatedArgs = TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None);
558+
TranslatedArgs.reset(
559+
TC.TranslateArgs(*DAL, "0", Action::OffloadKind::OFK_None));
556560
EXPECT_EQ(Diags.getNumErrors(), 4u);
557561
EXPECT_STREQ(
558562
DiagConsumer->Errors.back().c_str(),

0 commit comments

Comments
 (0)