Skip to content
  • Tankut Baris Aktemur's avatar
    gdb/completer: improve tab completion to consider the '-force-condition' flag · 1f58f6c2
    Tankut Baris Aktemur authored
    The commit
    
      commit 733d554a
      Author: Tankut Baris Aktemur <tankut.baris.aktemur@intel.com>
      Date:   Tue Oct 27 10:56:03 2020 +0100
    
      gdb/breakpoint: add flags to 'condition' and 'break' commands to force condition
    
    introduced the '-force-condition' flag to the 'break' command.  This
    flag was defined as a keyword like 'thread', 'task', and 'if'.
    However, it starts with '-'.  This difference caused an uncovered case
    when tab-completing a seemingly complete linespec.
    
    Below, we see "-force-condition" in the completion list, where both
    the options and the keywords are listed:
    
      (gdb) break -function main <TAB>
      -force-condition  -function  -label  -line  -qualified
      -source           if         task    thread
    
    But tab-completing '-' lists only options:
    
      (gdb) break -function main -<TAB>
      -function   -label      -line       -qualified  -source
    
    This patch fixes the problem by adding keywords to the completion
    list, so that we see:
    
      (gdb) break -function main -<TAB>
      -force-condition  -function  -label  -line  -qualified  -source
    
    gdb/ChangeLog:
    2020-12-07  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
    
    	* completer.c (complete_explicit_location): Also add keywords
    	that start with '-' to the completion list.
    
    gdb/testsuite/ChangeLog:
    2020-12-07  Tankut Baris Aktemur  <tankut.baris.aktemur@intel.com>
    
    	* gdb.linespec/explicit.exp: Extend with a test to check completing
    	'-' after seemingly complete options.
    1f58f6c2
To find the state of this project's repository at the time of any of these versions, check out the tags.