https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78329
Bug ID: 78329 Summary: incorrect debug info for return type deduction C++14 Product: gcc Version: 6.1.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: chihin.ko at oracle dot com Target Milestone: --- cat t.cc class AA { public: auto func(int arg) { int i = 0; for (; i < arg; i++); return i; } } a; auto func1(int arg) { int i = 0; for (; i < arg; i++); return i; } int main() { auto res = a.func(5); res = func1(5); return 0; } The return type of function "func" should resolved to type "int": < 2><0x00000034> DW_TAG_subprogram DW_AT_external yes(1) DW_AT_name "func" DW_AT_decl_file 0x00000001 /workspace/chko/ws/dinstall/dbx_test/bugid/2484659 6/g61/t.cc DW_AT_decl_line 0x00000003 DW_AT_linkage_name "_ZN2AA4funcEi" DW_AT_type <0x00000054> DW_AT_accessibility DW_ACCESS_public DW_AT_declaration yes(1) DW_AT_object_pointer <0x00000048> < 3><0x00000048> DW_TAG_formal_parameter DW_AT_type <0x00000059> DW_AT_artificial yes(1) < 3><0x0000004d> DW_TAG_formal_parameter DW_AT_type <0x00000064> < 1><0x00000054> DW_TAG_unspecified_type DW_AT_name "auto" <== should resolve to type "int"