From: Hao Wu Date: Mon, 10 Oct 2016 12:53:22 +0000 (+0800) Subject: BaseTools/VfrCompile/Pccts: Make assignment operator not returning void X-Git-Tag: edk2-stable201903~5299 X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=commitdiff_plain;h=fef15ecd20dd8db5bf0c33b00908fc59491dba8a BaseTools/VfrCompile/Pccts: Make assignment operator not returning void The assignment operators for class ANTLRTokenPtr return void in current code. This commit makes them return the reference to the object just like primitive types do. Cc: Liming Gao Cc: Yonghong Zhu Cc: Eric Dong Cc: Dandan Bi Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Hao Wu Reviewed-by: Liming Gao --- diff --git a/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtr.h b/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtr.h index 75b4c86cbf..df89d8ff6d 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtr.h +++ b/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtr.h @@ -58,8 +58,8 @@ public: // 7-Apr-97 133MR1 // Fix suggested by Andreas Magnusson // (Andreas.Magnusson@mailbox.swipnet.se) - void operator = (const ANTLRTokenPtr & lhs); // MR1 - void operator = (ANTLRAbstractToken *addr); + ANTLRTokenPtr& operator = (const ANTLRTokenPtr & lhs); // MR1 + ANTLRTokenPtr& operator = (ANTLRAbstractToken *addr); int operator != (const ANTLRTokenPtr &q) const // MR1 // MR11 unsigned -> int { return this->ptr_ != q.ptr_; } int operator == (const ANTLRTokenPtr &q) const // MR1 // MR11 unsigned -> int diff --git a/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtrImpl.h b/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtrImpl.h index 9c07cf52a9..a1efc3b3b9 100644 --- a/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtrImpl.h +++ b/BaseTools/Source/C/VfrCompile/Pccts/h/ATokPtrImpl.h @@ -71,18 +71,20 @@ ANTLRTokenPtr::~ANTLRTokenPtr() // 8-Apr-97 MR1 Make operator -> a const member function // as weall as some other member functions // -void ANTLRTokenPtr::operator = (const ANTLRTokenPtr & lhs) // MR1 +ANTLRTokenPtr& ANTLRTokenPtr::operator = (const ANTLRTokenPtr & lhs) // MR1 { lhs.ref(); // protect against "xp = xp"; ie same underlying object deref(); ptr_ = lhs.ptr_; + return *this; } -void ANTLRTokenPtr::operator = (ANTLRAbstractToken *addr) +ANTLRTokenPtr& ANTLRTokenPtr::operator = (ANTLRAbstractToken *addr) { if (addr != NULL) { addr->ref(); } deref(); ptr_ = addr; + return *this; }