# Copyright 2005 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  

#
# test running programs
#

load_lib mi-support.exp
set MIFLAGS "-i=mi1"

gdb_exit
if [mi_gdb_start] {
    continue
}

set testfile "nested-inlines"
set srcfile ${testfile}.c
set binfile ${objdir}/${subdir}/${testfile}

if ![istarget "i\[3-6\]86-apple-darwin*"] {
    verbose "Skipping x86 inlining tests."
    return
}

if [target_info exists darwin64] {
   verbose "i386 inlining tests not designed for x86-64, skipping." 
   return 
}

set additional_flags "additional_flags=-O3"
if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug $additional_flags]] != "" } {
     gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
}

if {$debug_default_format_is_dwarf == 0 } then {
        return;
}

mi_delete_breakpoints
mi_gdb_reinitialize_dir $srcdir/$subdir
mi_gdb_load ${binfile}
mi_run_to_main

mi_gdb_test "801-break-insert -l -1 nested-inlines.c:72" "801\\^done,bkpt=\{number=\"2\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"baz\",file=\".*nested-inlines.c\",line=\"72\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"3\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\"72\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"4\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"baz\",file=\".*nested-inlines.c\",line=\"72\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"5\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\"72\",shlib=\"$binfile\",times=\"0\"\}" "Set break at end of baz"

mi_gdb_test "802-break-insert -l -1 nested-inlines.c:50" "802\\^done,bkpt=\{number=\"6\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\"50\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"7\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"foo\",file=\".*nested-inlines.c\",line=\"50\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"8\",type=\"breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\"50\",shlib=\"$binfile\",times=\"0\"\}" "Set break at end of bar"


mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

# PLAN A

mi_gdb_test "302-exec-step" "302\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "303-exec-step" "303\\\*stopped,frame=\{func=\"bar \\\[inlined\\\].*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_gdb_test "304-exec-step" "304\\\*stopped,frame=\{func=\"baz \\\[inlined\\\].*line=\"62\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into third inlined function (baz)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" "63"   "stepping through baz (1)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (2)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (3)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (4)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (5)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (6)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (7)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" ".*"   "stepping through baz (8)"

mi_continue_to ".*" "baz \\\[inlined\\\]" "" "nested-inlines.c" "72" "Continue to end of baz"

# mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" "72"   "stepping through baz (9)"

mi_step_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" "stepping out of (inlined) baz back to bar"

mi_gdb_test "324-stack-list-frames 0 0" "324\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"bar \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"44\",dir=\".*\"\}\\\]" "Verifying location in bar"

mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" ".*" "stepping through bar (1)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (2)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (3)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (4)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (5)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (6)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (7)"

mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (8)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (9)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (10)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (11)"

mi_continue_to ".*" "bar \\\[inlined\\\]" "" "nested-inlines.c" "50" "Continue to end of bar"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (12)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (13)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (14)"

# mi_next_to ".*" "" "nested-inlines.c" ".*" "stepping through bar (15)"

# mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "50" "stepping through bar (16)"

# mi_continue_to "6" "bar \\\[inlined\\\]" "" "nested-inlines.c" "50" "Continue to end of bar"

mi_step_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" "stepping out of (inlined) bar back to foo"

mi_gdb_test "345-stack-list-frames 0 0" "345\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_next_to "main" "" "nested-inlines.c" "16" "stepping out of (inlined) foo back to main"

mi_gdb_test "347-stack-list-frames 0 0" "347\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_delete_breakpoints

# TEST B


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

# mi_gdb_test "401-exec-next" ".*401\\^running.*401\\\*stopped,reason=\"end-stepping-range\",thread-id=\"1\"" "Step to first inlined call site"

mi_next_to "main" "" "nested-inlines.c" "16"  "Next over inlined subroutine (foo)."

mi_gdb_test "303-stack-list-frames 0 0" "303\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19"  "Next in main"


# TEST C


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "302-exec-step" "302\\\*stopped,frame=\{func=\"foo \\\[inlined\\\].*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "303-stack-list-frames 0 0" "303\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_next_to "main" "" "nested-inlines.c" "19"  "Next in main"


# TEST D


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "402-exec-step" "402\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_next_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29"  "Next over inlined subroutine (bar)."

mi_gdb_test "404-stack-list-frames 0 0" "404\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "406-stack-list-frames 0 0" "406\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"


# TEST E


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "502-exec-step" "502\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "503-exec-step" "503\\\*stopped,frame=\{func=\"bar \\\[inlined\\\]\".*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "505-stack-list-frames 0 0" "505\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "507-stack-list-frames 0 0" "507\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"


# TEST F


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "602-exec-step" "602\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "603-exec-step" "603\\\*stopped,frame=\{func=\"bar \\\[inlined\\\]\".*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" "Next over inlined function (baz)"

mi_gdb_test "605-stack-list-frames 0 0" "605\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"bar \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"44\",dir=\".*\"\}\\\]" "Verifying location in bar"

mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" ".*" "Next in bar"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "608-stack-list-frames 0 0" "608\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "610-stack-list-frames 0 0" "610\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"


# TEST G


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "502-exec-step" "502\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "503-exec-step" "503\\\*stopped,frame=\{func=\"bar \\\[inlined\\\]\".*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_gdb_test "504-exec-step" "504\\\*stopped,frame=\{func=\"baz \\\[inlined\\\]\".*line=\"62\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into third inlined function (baz)"

mi_finish_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" ".*" "12345" "Finish out of inlined function (baz)"

mi_gdb_test "506-stack-list-frames 0 0" "506\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"bar \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"44\",dir=\".*\"\}\\\]" "Verifying location in bar"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "508-stack-list-frames 0 0" "508\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "510-stack-list-frames 0 0" "510\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"


# TEST H


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "602-exec-step" "602\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "603-exec-step" "603\\\*stopped,frame=\{func=\"bar \\\[inlined\\\]\".*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_gdb_test "604-exec-step" "604\\\*stopped,frame=\{func=\"baz \\\[inlined\\\]\".*line=\"62\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into third inlined function (baz)"

mi_next_to "baz \\\[inlined\\\]" "" "nested-inlines.c" "63" "Next in baz"

mi_finish_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" ".*" "12345" "Finish out of inlined function (baz)"

mi_gdb_test "607-stack-list-frames 0 0" "607\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"bar \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"44\",dir=\".*\"\}\\\]" "Verifying location in bar"

mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" ".*" "Next in bar"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "610-stack-list-frames 0 0" "610\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "612-stack-list-frames 0 0" "612\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"


# TEST I


mi_run_to_main

mi_next_to "main" "" "nested-inlines.c" "14"  "Step to first inlined call site"

mi_gdb_test "502-exec-step" "502\\\*stopped,frame=\{func=\"foo \\\[inlined\\\]\".*line=\"27\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into first inlined function (foo)"

mi_gdb_test "503-exec-step" "503\\\*stopped,frame=\{func=\"bar \\\[inlined\\\]\".*line=\"43\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into second inlined function (bar)"

mi_gdb_test "504-exec-step" "504\\\*stopped,frame=\{func=\"baz \\\[inlined\\\]\".*line=\"62\",file=\".*nested-inlines.c\",reason=\"end-stepping-range\".*" "Step into third inlined function (baz)"

# gdb_test "up" ".*bar.*inlined.*" "up (to  bar)"
# gdb_test "up" ".*foo.*inlined.*" "up (to foo)"
# gdb_test "up" ".*main.*" "up (to main)"
# gdb_test "down" ".*foo.*inlined.*" "down (to foo)"
# gdb_test "down" ".*bar.*inlined.*" "down (to bar)"
# gdb_test "up" ".*foo.*inlined.*" "up (to foo)"
# gdb_test "down" ".*bar.*inlined.*" "down (to bar)"
# gdb_test "down" ".*baz.*inlined.*" "down (to baz)"
# gdb_test "up" ".*bar.*inlined.*" "up (to bar)"
# gdb_test "down" ".*baz.*inlined.*" "down (to baz)"

mi_finish_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" ".*" "12345" "Finish out of inlined function (baz)"

mi_gdb_test "506-stack-list-frames 0 0" "506\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"bar \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"44\",dir=\".*\"\}\\\]" "Verifying location in bar"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "508-stack-list-frames 0 0" "508\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "510-stack-list-frames 0 0" "510\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"

# TEST J

mi_run_to_main

mi_gdb_test "301-break-insert bar" "301\\^done,bkpt=\{number=\"18\",type=\"inlined subroutine breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\"baz\",file=\".*nested-inlines.c\",line=\"38\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"19\",type=\"inlined subroutine breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\".*\",shlib=\"$binfile\",times=\"0\"\},bkpt=\{number=\"20\",type=\"inlined subroutine breakpoint\",disp=\"keep\",enabled=\"y\",addr=\"$hex\",func=\".*\",file=\".*nested-inlines.c\",line=\".*\",shlib=\"$binfile\",times=\"0\"\}" "Set breakpoint on inlined function (bar)"

mi_continue_to ".*" ".*" "" "nested-inlines.c" "43" "Hit breakpoint on bar"
# mi_gdb_test "302-exec-continue" ".*302\\^running.*302\\\*stopped,reason=\"breakpoint-hit\".*" "Hit breakpoint on bar"

mi_next_to "bar \\\[inlined\\\]" "" "nested-inlines.c" "44" "Step over inlined function (baz)"

mi_finish_to "foo \\\[inlined\\\]" "" "nested-inlines.c" "29" ".*" "49" "Finish out of inlined function (bar)"

mi_gdb_test "305-stack-list-frames 0 0" "305\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"foo \\\[inlined\\\]\",file=\".*nested-inlines.c\",.*line=\"29\",dir=\".*\"\}\\\]" "Verifying location in foo"

mi_finish_to "main" "" "nested-inlines.c" "16" ".*" "39" "Finish out of inlined function (foo)"

mi_gdb_test "307-stack-list-frames 0 0" "307\\^done,stack=\\\[frame=\{level=\"0\",addr=\"$hex\",fp=\"$hex\",func=\"main\",file=\".*nested-inlines.c\",.*line=\"16\",dir=\".*\"\}\\\]" "Verifying location in main"

mi_next_to "main" "" "nested-inlines.c" "19" "Next in main"

mi_gdb_exit
return 0


