Rob wrote:
If you go to the Html_tag_close_title stack frame, what do you get for p *html ?
(gdb) frame 10#10 0x0000000000422274 in Html_tag_close_title (html=0x7e9600, TagIdx=<value optimized out>) at html.cc:16501650 ? ? ? ? ?a_UIcmd_set_page_title(html->bw, html->Stash->str);(gdb) p *html$1 = {linkReceiver = {<dw::core::Layout::LinkReceiver> = {<lout::signal::Receiver> = {<lout::object::Object> = {_vptr.Object = 0x4b3830}, emitters = 0x7d1510}, <No data fields>},?? ? html = 0x7e9600}, bw = 0x76b0b0, page_url = 0x7eb430, base_url = 0x7d1f80, dw = 0x7e98b0,?? Start_Buf = 0x7c57d0 "<!DOCTYPE HTML>\n<html>\n<head>\n<title>GDB Tutorial | How To Debug With The GNU GDB Debugger</title>\n<meta name=\"description\" content=\"A comprehensive gdb tutorial with examples and exercises\"/>\n<meta "..., Start_Ofs = 0, content_type = 0x7eb250 "text/html", charset = 0x0, stop_parser = false, CurrTagOfs = 90, OldTagOfs = 0, OldTagLine = 1,?? DocType = DT_HTML, DocTypeVersion = 5, cssUrls = 0x7ea780, stack = 0x7d6300, styleEngine = 0x7ea5a0, InFlags = 3, Stash = 0x7d6320, StashSpace = false, pre_column = 0,?? PreFirstChar = false, PrevWasCR = false, PrevWasOpenTag = false, InVisitedLink = false, ReqTagClose = false, TagSoup = true, loadCssFromStash = false, Num_HTML = 1 '\001',?? Num_HEAD = 1 '\001', Num_BODY = 0 '\000', Num_TITLE = 1 '\001', attr_data = 0x7eb020, non_css_link_color = -1, non_css_visited_color = -1, visited_color = -1, forms = 0x7eb040,?? inputs_outside_form = 0x7d96e0, links = 0x7d9700, images = 0x7d1e70, maps = {imageMaps = 0x7d1530, currentMap = 0x0}}(gdb)?
Hmm, I was hoping it would look strange inside because the arguments for a_UIcmd_set_page_title(html->bw, html->Stash->str) looked crazy, but it seems that was indeed an effect of the optimization. In a situation like this with optimization on, I would start sticking MSG()s into a_UIcmd_set_page_title() to see the values of variables at different points.