[libcxx-commits] [libcxxabi] [llvm] [ItaniumDemangle] Remove Named flag from OperatorInfo::Member entries (PR #136862)

Michael Buch via libcxx-commits libcxx-commits at lists.llvm.org
Wed Apr 23 09:02:33 PDT 2025


Michael137 wrote:

> On vacation. But iirc this logic predates my rewrite. Ill try and remember to look more later

Thanks!

Seems to have been introduced by:
```
commit 7f89fa32e8e9251b0b780009c340bc0d8f4d2e88                                            
Author: Nathan Sidwell <nathan at acm.org>                                                    
Date:   Thu Jan 27 13:23:16 2022 -0800                                                     
                                                                                           
    [demangler][NFC] Tabularize operator name parsing                                      
                                                                                           
    We need to parse operator names in 3 places -- expressions, names &                    
    fold expressions.  Currently we have 3 separate pieces to do this, and a FIXME.        
                                                                                           
    The operator name and expression parsing are implemented as                            
    handwritten two-character nested switches, the fold expression is a                    
    sequence of string comparisons.                                                        
                                                                                           
    This adds a new OperatorInfo class to encode the operator info                         
    (encoding, kind, name), and has a table that it can binary search.                     
    From that each of the above 3 uses are altered to use the new scheme.                  
                                                                                           
    Existing tests cover parsing operator encodings.                                       
                                                                                           
    Reviewed By: ChuanqiXu                                                                 
                                                                                           
    Differential Revision: https://reviews.llvm.org/D119467                                
```
But couldn't quite tell from the diff why this condition was necessary.

https://github.com/llvm/llvm-project/pull/136862


More information about the libcxx-commits mailing list