)]}'
{
  "commit": "034c427030a93a2432c34cb0804d07947de64de7",
  "tree": "b87d0e34008541e4b478c53ac488566a56b6900c",
  "parents": [
    "dae2db38ebaa76ed359bb39cc40c9b5e0b072e12"
  ],
  "author": {
    "name": "Andrew Burgess",
    "email": "andrew.burgess@embecosm.com",
    "time": "Tue Sep 03 22:39:00 2019 +0100"
  },
  "committer": {
    "name": "Simon Marchi",
    "email": "simon.marchi@polymtl.ca",
    "time": "Tue Sep 24 20:23:50 2019 -0400"
  },
  "message": "gdb/fortran: Allow for matching symbols with missing scope\n\nThis commit allows symbol matching within Fortran code without having\nto specify all of the symbol\u0027s scope.  For example, given this Fortran\ncode:\n\n    module aaa\n    contains\n      subroutine foo\n        print *, \"hello.\"\n      end subroutine foo\n    end module aaa\n\n    subroutine foo\n      print *, \"hello.\"\n    end subroutine foo\n\n    program test\n      call foo\n    contains\n      subroutine foo\n        print *, \"hello.\"\n      end subroutine foo\n\n      subroutine bar\n        use aaa\n        call foo\n      end subroutine bar\n    end program test\n\nThe user can now do this:\n\n    (gdb) b foo\n    Breakpoint 1 at 0x4006c2: foo. (3 locations)\n    (gdb) info breakpoints\n    Num     Type           Disp Enb Address            What\n    1       breakpoint     keep y   \u003cMULTIPLE\u003e\n    1.1                         y   0x00000000004006c2 in aaa::foo at nest.f90:4\n    1.2                         y   0x0000000000400730 in foo at nest.f90:9\n    1.3                         y   0x00000000004007c3 in test::foo at nest.f90:16\n\nThe user asks for a breakpoint on \u0027foo\u0027 and is given a breakpoint on\nall three possible \u0027foo\u0027 locations.  The user is, of course, still\nable to specify the scope in order to place a single breakpoint on\njust one of the foo functions (or use \u0027break -qualified foo\u0027 to break\non just the global foo).\n\ngdb/ChangeLog:\n\n\t* f-lang.c (f_language_defn): Use cp_get_symbol_name_matcher and\n\tcp_search_name_hash.\n\ngdb/testsuite/ChangeLog:\n\n\t* gdb.fortran/nested-funcs-2.exp: Run tests with and without the\n\tnested function prefix.\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "ce7f1471c52d9c6f3338946841d7f4a7e3931d4a",
      "old_mode": 33188,
      "old_path": "gdb/f-lang.c",
      "new_id": "5681379b3b3c0872e071b857300adbdf1c89d070",
      "new_mode": 33188,
      "new_path": "gdb/f-lang.c"
    },
    {
      "type": "modify",
      "old_id": "e23d8bad4b2bbfe4fcfa1f8b3596e87bc13b0722",
      "old_mode": 33188,
      "old_path": "gdb/testsuite/gdb.fortran/nested-funcs-2.exp",
      "new_id": "9fa04ae9af30bc0de827c74dc09b18a4bdcfc55c",
      "new_mode": 33188,
      "new_path": "gdb/testsuite/gdb.fortran/nested-funcs-2.exp"
    }
  ]
}
