binutils-gdb/gdb/mi
Simon Marchi 33b2fac610 Simplify ui-out level code
Now that we use a vector to store the levels, we don't have to keep a
separate level field in ui_out to keep track of the current level.  We
can efficiently derive it from the vector size.  That causes a little
change in the meaning of the level, as in they are now 1-based instead
of 0-based (the initial level has the "id" 1 now), but it shouldn't
change anything in the behavior.

Additionally, push_level and pop_level don't really need to return the
new level, making them return void simplifies the code a bit.

Finally, the ui_out_begin/ui_out_end callbacks in the ui_out_impl
interface don't need to be passed the level, it's never actually used.

New in v2:

 - Remove or update stale comments.

gdb/ChangeLog:

	* ui-out.h (ui_out_begin_ftype): Remove level parameter.
	(ui_out_end_ftype): Likewise.
	* ui-out.c (struct ui_out) <level>: Replace field with a method
	that dynamically computes the result.
	(current_level): Get vector's back item instead of using
	uiout->level.
	(push_level): Make return type void.
	(pop_level): Make return type void and update access to
	ui_out::level.
	(uo_begin): Remove level parameter.
	(uo_end): Likewise.
	(ui_out_table_begin): Update access to uiout::level.
	(ui_out_begin): Don't read return value from push_level, call
	uiout->level() instead, update call to uo_begin.
	(ui_out_end): Don't read return value from pop_level, update
	call to uo_end.
	(verify_field): Update access to uiout->level.
	(ui_out_new): Don't initialize ui_out::level, call push_level
	to push the initial level instead of doing it by hand.
	* cli-out.c (cli_begin): Remove level parameter.
	(cli_end): Likewise.
	* mi/mi-out.c (mi_begin): Likewise.
	(mi_end): Likewise.
2016-12-01 16:05:17 -05:00
..
ChangeLog-1999-2003
mi-cmd-break.c
mi-cmd-break.h
mi-cmd-catch.c
mi-cmd-disas.c
mi-cmd-env.c
mi-cmd-file.c
mi-cmd-info.c
mi-cmd-stack.c
mi-cmd-target.c
mi-cmd-var.c
mi-cmds.c
mi-cmds.h
mi-common.c
mi-common.h
mi-console.c
mi-console.h
mi-getopt.c
mi-getopt.h
mi-interp.c
mi-main.c
mi-main.h
mi-out.c Simplify ui-out level code 2016-12-01 16:05:17 -05:00
mi-out.h Remove unused functions and declarations 2016-11-26 22:03:18 -05:00
mi-parse.c
mi-parse.h
mi-symbol-cmds.c