fdf07f3 Change enable_thread_stack_temporaries to an RAII class

Authored and Committed by Tom Tromey 6 years ago
    Change enable_thread_stack_temporaries to an RAII class
    
    This started as a patch to change enable_thread_stack_temporaries to
    be an RAII class, but then I noticed that this code used a VEC, so I
    went ahead and did a bit more C++-ification, changing
    stack_temporaries_enabled to a bool and changing stack_temporaries to
    a std::vector.
    
    Regression tested by the buildbot.
    
    gdb/ChangeLog
    2018-03-08  Tom Tromey  <tom@tromey.com>
    
    	* infcall.c (struct call_return_meta_info)
    	<stack_temporaries_enabled>: Remove.
    	(get_call_return_value, call_function_by_hand_dummy): Update.
    	* thread.c (disable_thread_stack_temporaries): Remove.
    	(enable_thread_stack_temporaries): Remove.
    	(thread_stack_temporaries_enabled_p): Return bool.
    	(push_thread_stack_temporary, value_in_thread_stack_temporaries)
    	(get_last_thread_stack_temporary): Update.
    	* eval.c (evaluate_subexp): Update.
    	* gdbthread.h (class enable_thread_stack_temporaries): Now a
    	class, not a function.
    	(value_ptr, value_vec): Remove typedefs.
    	(class thread_info) <stack_temporaries_enabled>: Now bool.
    	<stack_temporaries>: Now a std::vector.
    	(thread_stack_temporaries_enabled_p)
    	(value_in_thread_stack_temporaries): Return bool.
    
        
file modified
+19 -0
file modified
+5 -12
file modified
+38 -9
file modified
+2 -5
file modified
+13 -58