https://gcc.gnu.org/bugzilla/show_bug.cgi?id=90279
Jaydeep Chauhan <jaydeepchauhan1494 at gmail dot com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |jaydeepchauhan1494 at gmail dot co | |m --- Comment #1 from Jaydeep Chauhan <jaydeepchauhan1494 at gmail dot com> --- In clang also DW_AT_location attribute is created. test.cpp: ------ struct StrongType { explicit StrongType(int val) : m_value(val) { } int m_value; }; StrongType Square(StrongType val) { return StrongType{val.m_value * val.m_value}; } int EvalDwarfStrong(int var) { StrongType strongArg{var}; StrongType strongRes = Square(strongArg); return strongRes.m_value; } clang test.cpp -g -S -std=c++11 -Og: ---------------------------------- ... ... .Linfo_string14: .asciz "strongArg" # string offset=202 ... ... .byte 14 # Abbrev [14] 0xeb:0xf DW_TAG_variable .long .Ldebug_loc2 # DW_AT_location .long .Linfo_string14 # DW_AT_name .byte 1 # DW_AT_decl_file .byte 11 # DW_AT_decl_line .long 87 # DW_AT_type ... ...