This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: [PATCH] New C++ abstraction patch


> I think the right thing is to do "^_Z.*[1-9][a-zA-Z_][a-zA-Z0-9_]+D[0-2]Ev$",
> since the class name always comes right before the destructor.

I like the ^Z part.  I thought the [1-9] should be [1-9]+, but then I
realized that the ".*" in front of it takes care of classes that are
longer than 9 characters.

The [a-zA-Z_][a-zA-Z0-9_]+ does not accept 1-character classes.  How about
[a-zA-Z_][a-zA-Z0-9_]*.

GNU C++ has an "-fdollars-in-identifiers" flag, so you have to accept '$'
as an alphabetic character.

  ^_Z.*[1-9][a-zA-Z_$][a-zA-Z0-9_$]*D[0-2]Ev$

> Otherwise, i'll look at cleaning up the ternary search tree stuff for
> demangled names and submitting it.

Watch out -- dependency creep.

If it were me, I would go ahead with the v3 abi stuff and get something
in with an r.e. that works most of the time.  Today's gdb works 0%
of the time in this case.  Then pick up the ternary search trees as a
separate project.  But that's just me.

(I read up on ternary search trees last night.  They look like an awesome
data type to replace the hash tables.)

Michael


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]