@@ -321,6 +321,14 @@ TEST(MangledTest, NameIndexes_FindFunctionSymbols) {
321
321
EXPECT_EQ (0 , Count (" undemangable" , eFunctionNameTypeMethod));
322
322
}
323
323
324
+ static bool NameInfoEquals (const DemangledNameInfo &lhs,
325
+ const DemangledNameInfo &rhs) {
326
+ return std::tie (lhs.BasenameRange , lhs.ArgumentsRange , lhs.ScopeRange ,
327
+ lhs.QualifiersRange ) ==
328
+ std::tie (rhs.BasenameRange , rhs.ArgumentsRange , rhs.ScopeRange ,
329
+ rhs.QualifiersRange );
330
+ }
331
+
324
332
TEST (MangledTest, DemangledNameInfo_SetMangledResets) {
325
333
Mangled mangled;
326
334
EXPECT_EQ (mangled.GetDemangledInfo (), std::nullopt);
@@ -339,7 +347,7 @@ TEST(MangledTest, DemangledNameInfo_SetMangledResets) {
339
347
ASSERT_NE (info2, std::nullopt);
340
348
EXPECT_TRUE (info2->hasBasename ());
341
349
342
- EXPECT_NE ( info1.value (), info2.value ());
350
+ EXPECT_FALSE ( NameInfoEquals ( info1.value (), info2.value () ));
343
351
EXPECT_EQ (mangled.GetDemangledName (), " func()" );
344
352
}
345
353
@@ -375,11 +383,12 @@ TEST(MangledTest, DemangledNameInfo_SetValue) {
375
383
mangled.SetValue (ConstString (" _Z3foov" ));
376
384
auto demangled_foo = mangled.GetDemangledInfo ();
377
385
EXPECT_NE (demangled_foo, std::nullopt);
378
- EXPECT_NE ( demangled_foo, demangled_func);
386
+ EXPECT_FALSE ( NameInfoEquals ( demangled_foo. value () , demangled_func. value ()) );
379
387
380
388
// SetValue(demangled) resets demangled-info
381
389
mangled.SetValue (ConstString (" _Z4funcv" ));
382
- EXPECT_EQ (mangled.GetDemangledInfo (), demangled_func);
390
+ EXPECT_TRUE (NameInfoEquals (mangled.GetDemangledInfo ().value (),
391
+ demangled_func.value ()));
383
392
384
393
// SetValue(empty) resets demangled-info
385
394
mangled.SetValue (ConstString ());
0 commit comments