f945ded Make ada_decode not use a static buffer

Authored and Committed by Christian Biesinger 4 years ago
    Make ada_decode not use a static buffer
    
    This makes it safer to use in general, and also allows using it on a
    background thread in the future.
    
    Inspired by tromey's patch at:
    https://github.com/tromey/gdb/commit/1226cbdfa436297a5dec054d94592c45891afa93
    (however, implemented in a different way)
    
    gdb/ChangeLog:
    
    2019-09-23  Christian Biesinger  <cbiesinger@google.com>
    
    	* ada-exp.y (write_object_remaining): Update.
    	* ada-lang.c (ada_decode): Return a std::string instead of a char*
    	and eliminate the static buffer.
    	(ada_decode_symbol): Update.
    	(ada_la_decode): Update.
    	(ada_sniff_from_mangled_name): Update.
    	(is_valid_name_for_wild_match): Update.
    	(ada_lookup_name_info::matches): Update and simplify.
    	(name_matches_regex): Update.
    	(ada_add_global_exceptions): Update.
    	* ada-lang.h (ada_decode): Update signature.
    	* ada-varobj.c (ada_varobj_describe_simple_array_child): Update.
    	* dwarf-index-write.c (debug_names::insert): Update.
    
        
file modified
+16 -0
file modified
+1 -1
file modified
+24 -39
file modified
+1 -1
file modified
+5 -1
file modified
+5 -4