Skip to content

Commit 8068d68

Browse files
Merge pull request #1139 from mini-1235/patch-3
Fix -Wfree-nonheap-object and -Wunused-result
2 parents e6754ee + 309fb03 commit 8068d68

4 files changed

Lines changed: 32 additions & 32 deletions

File tree

include/behaviortree_cpp/utils/safe_any.hpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -560,7 +560,7 @@ inline nonstd::expected<T, std::string> Any::tryCast() const
560560

561561
if(auto res = convert<T>())
562562
{
563-
return res.value();
563+
return std::move(res.value());
564564
}
565565
else
566566
{

tests/gtest_factory.cpp

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -112,7 +112,7 @@ const char* xml_text_subtree_part2 = R"(
112112
TEST(BehaviorTreeFactory, NotRegisteredNode)
113113
{
114114
BehaviorTreeFactory factory;
115-
ASSERT_ANY_THROW(factory.createTreeFromText(xml_text));
115+
ASSERT_ANY_THROW((void)factory.createTreeFromText(xml_text));
116116
ASSERT_ANY_THROW(std::make_shared<BT::Tree>(factory.createTreeFromText(xml_text)));
117117
}
118118

@@ -623,7 +623,7 @@ TEST(BehaviorTreeFactory, MalformedXML_InvalidRoot)
623623
{
624624
// XML that is not valid XML at all
625625
BehaviorTreeFactory factory;
626-
EXPECT_ANY_THROW(factory.createTreeFromText("<not valid xml!!!"));
626+
EXPECT_ANY_THROW((void)factory.createTreeFromText("<not valid xml!!!"));
627627
}
628628

629629
TEST(BehaviorTreeFactory, MalformedXML_MissingRootElement)
@@ -637,7 +637,7 @@ TEST(BehaviorTreeFactory, MalformedXML_MissingRootElement)
637637
</something>)";
638638

639639
BehaviorTreeFactory factory;
640-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
640+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
641641
}
642642

643643
TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTree)
@@ -650,7 +650,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTree)
650650
</root>)";
651651

652652
BehaviorTreeFactory factory;
653-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
653+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
654654
}
655655

656656
TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTreeID)
@@ -667,7 +667,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyBehaviorTreeID)
667667
</root>)";
668668

669669
BehaviorTreeFactory factory;
670-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
670+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
671671
}
672672

673673
TEST(BehaviorTreeFactory, MalformedXML_MissingBehaviorTreeID)
@@ -684,7 +684,7 @@ TEST(BehaviorTreeFactory, MalformedXML_MissingBehaviorTreeID)
684684
</root>)";
685685

686686
BehaviorTreeFactory factory;
687-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
687+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
688688
}
689689

690690
TEST(BehaviorTreeFactory, MalformedXML_DeeplyNestedElements)
@@ -706,7 +706,7 @@ TEST(BehaviorTreeFactory, MalformedXML_DeeplyNestedElements)
706706
xml += "</BehaviorTree></root>";
707707

708708
BehaviorTreeFactory factory;
709-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
709+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
710710
}
711711

712712
TEST(BehaviorTreeFactory, MalformedXML_ModerateNestingIsOK)
@@ -727,7 +727,7 @@ TEST(BehaviorTreeFactory, MalformedXML_ModerateNestingIsOK)
727727

728728
BehaviorTreeFactory factory;
729729
// Should not throw
730-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
730+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
731731
}
732732

733733
TEST(BehaviorTreeFactory, MalformedXML_MultipleBTChildElements)
@@ -742,14 +742,14 @@ TEST(BehaviorTreeFactory, MalformedXML_MultipleBTChildElements)
742742
</root>)";
743743

744744
BehaviorTreeFactory factory;
745-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
745+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
746746
}
747747

748748
TEST(BehaviorTreeFactory, MalformedXML_CompletelyEmpty)
749749
{
750750
// Completely empty string
751751
BehaviorTreeFactory factory;
752-
EXPECT_ANY_THROW(factory.createTreeFromText(""));
752+
EXPECT_ANY_THROW((void)factory.createTreeFromText(""));
753753
}
754754

755755
TEST(BehaviorTreeFactory, MalformedXML_EmptyRoot)
@@ -761,7 +761,7 @@ TEST(BehaviorTreeFactory, MalformedXML_EmptyRoot)
761761
// No BehaviorTree elements: registering succeeds but creating
762762
// a tree should fail because there is nothing to instantiate.
763763
factory.registerBehaviorTreeFromText(xml);
764-
EXPECT_ANY_THROW(factory.createTree("MainTree"));
764+
EXPECT_ANY_THROW((void)factory.createTree("MainTree"));
765765
}
766766

767767
TEST(BehaviorTreeFactory, MalformedXML_UnknownNodeType)
@@ -775,5 +775,5 @@ TEST(BehaviorTreeFactory, MalformedXML_UnknownNodeType)
775775
</root>)";
776776

777777
BehaviorTreeFactory factory;
778-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
778+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
779779
}

tests/gtest_name_validation.cpp

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -136,7 +136,7 @@ TEST_F(NameValidationXMLTest, ValidBehaviorTreeID)
136136
<AlwaysSuccess/>
137137
</BehaviorTree>
138138
</root>)";
139-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
139+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
140140
}
141141

142142
TEST_F(NameValidationXMLTest, ValidBehaviorTreeID_WithUnderscore)
@@ -147,7 +147,7 @@ TEST_F(NameValidationXMLTest, ValidBehaviorTreeID_WithUnderscore)
147147
<AlwaysSuccess/>
148148
</BehaviorTree>
149149
</root>)";
150-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
150+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
151151
}
152152

153153
TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_Root)
@@ -158,7 +158,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_Root)
158158
<AlwaysSuccess/>
159159
</BehaviorTree>
160160
</root>)";
161-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
161+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
162162
}
163163

164164
TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_root_lowercase)
@@ -169,7 +169,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_root_lowercase)
169169
<AlwaysSuccess/>
170170
</BehaviorTree>
171171
</root>)";
172-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
172+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
173173
}
174174

175175
TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithSpace)
@@ -180,7 +180,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithSpace)
180180
<AlwaysSuccess/>
181181
</BehaviorTree>
182182
</root>)";
183-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
183+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
184184
}
185185

186186
TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithPeriod)
@@ -191,7 +191,7 @@ TEST_F(NameValidationXMLTest, InvalidBehaviorTreeID_WithPeriod)
191191
<AlwaysSuccess/>
192192
</BehaviorTree>
193193
</root>)";
194-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
194+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
195195
}
196196

197197
TEST_F(NameValidationXMLTest, ValidInstanceName)
@@ -202,7 +202,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName)
202202
<AlwaysSuccess name="my_success_node"/>
203203
</BehaviorTree>
204204
</root>)";
205-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
205+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
206206
}
207207

208208
TEST_F(NameValidationXMLTest, ValidInstanceName_WithSpace)
@@ -214,7 +214,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName_WithSpace)
214214
<AlwaysSuccess name="my success node"/>
215215
</BehaviorTree>
216216
</root>)";
217-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
217+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
218218
}
219219

220220
TEST_F(NameValidationXMLTest, ValidInstanceName_WithPeriod)
@@ -226,7 +226,7 @@ TEST_F(NameValidationXMLTest, ValidInstanceName_WithPeriod)
226226
<AlwaysSuccess name="node.name"/>
227227
</BehaviorTree>
228228
</root>)";
229-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
229+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
230230
}
231231

232232
TEST_F(NameValidationXMLTest, ValidSubTreeID)
@@ -240,7 +240,7 @@ TEST_F(NameValidationXMLTest, ValidSubTreeID)
240240
<AlwaysSuccess/>
241241
</BehaviorTree>
242242
</root>)";
243-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
243+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
244244
}
245245

246246
TEST_F(NameValidationXMLTest, InvalidSubTreeID_WithSpace)
@@ -254,7 +254,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreeID_WithSpace)
254254
<AlwaysSuccess/>
255255
</BehaviorTree>
256256
</root>)";
257-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
257+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
258258
}
259259

260260
// ============== Tests for Unicode support ==============
@@ -267,7 +267,7 @@ TEST_F(NameValidationXMLTest, UnicodeTreeID_Chinese)
267267
<AlwaysSuccess/>
268268
</BehaviorTree>
269269
</root>)";
270-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
270+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
271271
}
272272

273273
TEST_F(NameValidationXMLTest, UnicodeInstanceName_Japanese)
@@ -278,7 +278,7 @@ TEST_F(NameValidationXMLTest, UnicodeInstanceName_Japanese)
278278
<AlwaysSuccess name="成功ノード"/>
279279
</BehaviorTree>
280280
</root>)";
281-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
281+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
282282
}
283283

284284
TEST_F(NameValidationXMLTest, UnicodeTreeID_German)
@@ -289,7 +289,7 @@ TEST_F(NameValidationXMLTest, UnicodeTreeID_German)
289289
<AlwaysSuccess/>
290290
</BehaviorTree>
291291
</root>)";
292-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
292+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
293293
}
294294

295295
// ============== Tests for SubTree port validation ==============
@@ -310,7 +310,7 @@ TEST_F(NameValidationXMLTest, ValidSubTreePortName)
310310
</SubTree>
311311
</TreeNodesModel>
312312
</root>)";
313-
EXPECT_NO_THROW(factory.createTreeFromText(xml));
313+
EXPECT_NO_THROW((void)factory.createTreeFromText(xml));
314314
}
315315

316316
TEST_F(NameValidationXMLTest, InvalidSubTreePortName_WithSpace)
@@ -326,7 +326,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_WithSpace)
326326
</SubTree>
327327
</TreeNodesModel>
328328
</root>)";
329-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
329+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
330330
}
331331

332332
TEST_F(NameValidationXMLTest, InvalidSubTreePortName_Reserved)
@@ -342,7 +342,7 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_Reserved)
342342
</SubTree>
343343
</TreeNodesModel>
344344
</root>)";
345-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
345+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
346346
}
347347

348348
TEST_F(NameValidationXMLTest, InvalidSubTreePortName_StartsWithDigit)
@@ -358,5 +358,5 @@ TEST_F(NameValidationXMLTest, InvalidSubTreePortName_StartsWithDigit)
358358
</SubTree>
359359
</TreeNodesModel>
360360
</root>)";
361-
EXPECT_THROW(factory.createTreeFromText(xml), RuntimeError);
361+
EXPECT_THROW((void)factory.createTreeFromText(xml), RuntimeError);
362362
}

tests/gtest_try_catch.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -209,7 +209,7 @@ TEST_F(TryCatchTest, MinimumTwoChildren_ParseTimeValidation)
209209
</root>)";
210210

211211
// Error should be caught at parse time, not tick time
212-
ASSERT_THROW(factory.createTreeFromText(xml_text), BT::RuntimeError);
212+
ASSERT_THROW((void)factory.createTreeFromText(xml_text), BT::RuntimeError);
213213
}
214214

215215
TEST_F(TryCatchTest, ReExecuteAfterSuccess)

0 commit comments

Comments
 (0)