[Bug debug/78322] Debug info still present for fully optimized away functions

2024-04-15 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78322 --- Comment #5 from David Blaikie --- (In reply to Andrew Pinski from comment #4) > (In reply to David Blaikie from comment #2) > > (In reply to Richard Biener from comment #1) > > > We produce an abstract copy for use by repeated inline copies.

[Bug debug/99178] Emit .debug_names

2024-01-10 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99178 --- Comment #6 from David Blaikie --- (In reply to Tom Tromey from comment #5) > (In reply to David Blaikie from comment #4) > > I don't remember filing this bug. At the time maybe I thought it > would be worthwhile to have "end to end"

[Bug debug/99178] Emit .debug_names

2024-01-09 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=99178 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c++/109114] New: lambdas should be non-pod for ABI

2023-03-13 Thread dblaikie at gmail dot com via Gcc-bugs
++ Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- See original bug filed against clang: https://github.com/llvm/llvm-project/issues/59078 itanium-cxx-abi bug: https://github.com/itanium-cxx-abi/cxx-abi/issues/156 (inverted, so

[Bug c++/107741] Missed member variable name in mangling of externally visible lambdas used in inline initialization of static members

2023-03-06 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107741 --- Comment #2 from David Blaikie --- Ping on this? Would love it if someone could check my work/confirm my diagnosis, even if it's not a priority to fix the bug immediately.

[Bug debug/49130] discrepancies between DW_AT_name and demangler

2023-01-12 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49130 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug debug/49312] Make DW_AT_name contain only simple name, no template-id

2023-01-12 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49312 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c++/107741] Missed member variable name in mangling of externally visible lambdas used in inline initialization of static members

2022-11-17 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=107741 --- Comment #1 from David Blaikie --- Oh, some context - discovered while investigating a related clang bug: https://github.com/llvm/llvm-project/issues/58819 - so don't check clang for an example of what's right here, it has different bugs,

[Bug c++/107741] New: Missed member variable name in mangling of externally visible lambdas used in inline initialization of static members

2022-11-17 Thread dblaikie at gmail dot com via Gcc-bugs
Version: 13.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- https://godbolt.org/z/7514cTh5o ``` struct A { static

[Bug c/89549] [10/11/12/13 Regression] -Wmisleading-indentation is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers

2022-10-10 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89549 --- Comment #26 from David Blaikie --- FWIW I'm not sure it's a pragma I'd want, but it might be sufficient (put the pragma at the start of very long/autogenerated files) - I'd have thought what some folks (myself/LLVM included, I think) is a

[Bug debug/60833] Inheritance via typedef skips the typedef

2022-10-04 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60833 --- Comment #3 from David Blaikie --- FWIW, bug on the GDB side seems to have been fixed ( https://sourceware.org/bugzilla/show_bug.cgi?id=16841 ) - might be nice to fix the GCC side too. (though, admittedly, I don't know that this extra debug

[Bug c/89549] [10/11/12/13 Regression] -Wmisleading-indentation is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers

2022-09-08 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=89549 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c++/87729] Please include -Woverloaded-virtual in -Wall

2022-06-24 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=87729 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug libstdc++/101227] Clang++ fails to instantiate std::optional if nested type has a non-static data member initializer

2021-06-27 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=101227 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c/82134] warn_unused_result triggers on empty structs even when they are used

2021-05-15 Thread dblaikie at gmail dot com via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82134 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c++/92413] [temp.explicit] Explicit template instantiations should not define member functions that are not defined at the point of instantiation

2020-02-04 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92413 --- Comment #3 from David Blaikie --- Ah, miswrote the example, here: template struct C {void foo();}; template struct C; template void C::foo() { static_assert(sizeof(T) == 1); } Here's a godbolt comparing Clang trunk and GCC trunk:

[Bug c++/92413] [temp.explicit] Explicit template instantiations should not define member functions that are not defined at the point of instantiation

2019-11-07 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=92413 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com --- Comment

[Bug c++/48665] type of const member function

2018-06-20 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48665 --- Comment #18 from David Blaikie --- Thanks - looks like this got hashed out on the C++ reflector in favor of this being invalid. The Clang bug has been re-opened to work on the fix there. Thanks! Sorry for the noise.

[Bug c++/48665] type of const member function

2018-06-19 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=48665 David Blaikie changed: What|Removed |Added CC||dblaikie at gmail dot com

[Bug c++/82724] Larger than needed DWARF type declarations for explicitly instantiated class templates

2017-10-25 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82724 --- Comment #6 from David Blaikie --- (In reply to Paul Robinson from comment #5) > (In reply to David Blaikie from comment #4) > > What I'm saying is consumers already have to parse it to match up the same > > type name between compilers. > >

[Bug c++/82724] Larger than needed DWARF type declarations for explicitly instantiated class templates

2017-10-25 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82724 --- Comment #4 from David Blaikie --- > Making consumers parse names on the off chance they contain semantically > significant information seems like a bit much, though. Especially if they > contain information in a ridiculous variety of

[Bug c++/82724] Larger than needed DWARF type declarations for explicitly instantiated class templates

2017-10-25 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=82724 --- Comment #2 from David Blaikie --- Thanks for chiming in, Paul - figured it was an interesting case I ran into that came up against/near some of the stuff we'd touched on recently (for a hot second I thought maybe Clang's omission of the

[Bug c++/82724] New: Larger than needed DWARF type declarations for explicitly instantiated class templates

2017-10-25 Thread dblaikie at gmail dot com
Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- When the vtable/key function debug info optimization kicks in, a declaration (rather than a definition) of a type

[Bug debug/60833] Inheritance via typedef skips the typedef

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60833 --- Comment #2 from David Blaikie --- ping

[Bug c++/60815] Inconsistent prologue line table location

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60815 --- Comment #3 from David Blaikie --- ping

[Bug debug/60246] Emit debug info for explicit template instantiation definitions

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60246 --- Comment #1 from David Blaikie --- ping

[Bug debug/78265] Excess emission of debug info for ODR used global variables

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78265 --- Comment #3 from David Blaikie --- ping

[Bug debug/78322] Debug info still present for fully optimized away functions

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78322 --- Comment #3 from David Blaikie --- ping

[Bug debug/78321] Fission + type units + compression are suboptimal

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78321 --- Comment #1 from David Blaikie --- ping

[Bug debug/78320] Excess debug info -fdebug-types-section

2017-01-26 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78320 --- Comment #1 from David Blaikie --- ping

[Bug debug/78322] Debug info still present for fully optimized away functions

2016-11-14 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78322 --- Comment #2 from David Blaikie --- (In reply to Richard Biener from comment #1) > We produce an abstract copy for use by repeated inline copies. Yep! Is it still reasonable to consider it a bug (or at least a feature request) that this is

[Bug debug/78322] New: Debug info still present for fully optimized away functions

2016-11-11 Thread dblaikie at gmail dot com
Priority: P3 Component: debug Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- Consider this: inline void __attribute__((always_inline)) f1() { } inline void __attribute__((always_inline)) f2() { } void f

[Bug debug/78321] New: Fission + type units + compression are suboptimal

2016-11-11 Thread dblaikie at gmail dot com
: debug Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- GCC is producing separate (though non-comdat) sections for each type in the .dwo file when using fission+type units. There's no need for these to be in separate sections

[Bug debug/78320] New: Excess debug info -fdebug-types-section

2016-11-11 Thread dblaikie at gmail dot com
Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- Enabling -fdebug-types-section causes nested type declarations and definitions to be emitted by GCC, producing substantially more debug info than without this option. Consider

[Bug debug/78265] Excess emission of debug info for ODR used global variables

2016-11-09 Thread dblaikie at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=78265 --- Comment #2 from David Blaikie --- A side note/commentary: Producing debug info for global variable declarations at all is an interesting choice. If the whole program is built with debug info*, the global variable's definition will have

[Bug debug/78265] New: Excess emission of debug info for ODR used global variables

2016-11-08 Thread dblaikie at gmail dot com
Priority: P3 Component: debug Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com Target Milestone: --- ODR used global (& static class member) variables that are ODR used but never actually referenced by live code still produce debug info

[Bug debug/60833] New: Inheritance via typedef skips the typedef

2014-04-13 Thread dblaikie at gmail dot com
Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com struct base { }; typedef base tbase; struct derived: tbase { } x; GCC doesn't emit the typedef of 'tbase' and instead describes 'derived' as directly deriving from 'base'.

[Bug debug/60815] New: Inconsistent prologue line table location

2014-04-10 Thread dblaikie at gmail dot com
Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com CC: ccoutant at gcc dot gnu.org, echristo at gmail dot com Host: x86_64 Target: x86_64 Given: templatetypename T void func() // prologue { } template void

[Bug debug/60815] Inconsistent prologue line table location

2014-04-10 Thread dblaikie at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60815 --- Comment #1 from David Blaikie dblaikie at gmail dot com --- Oh - and if we can confirm the direction you're going with this (if the decision is that the prologue should start, like Clang, at the opening '{' always, for example) I'll go ahead

[Bug libstdc++/60594] New: std::function of a type with a declared (but not defined) return type fails to compile

2014-03-19 Thread dblaikie at gmail dot com
Severity: normal Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com CC: chandlerc at gmail dot com #include functional #include type_traits struct bar; #if BUG1 struct foo { std

[Bug debug/60246] New: Emit debug info for explicit template instantiation definitions

2014-02-17 Thread dblaikie at gmail dot com
Priority: P3 Component: debug Assignee: unassigned at gcc dot gnu.org Reporter: dblaikie at gmail dot com CC: echristo at gmail dot com A possible size optimization for debug info exists whenever an explicit template instantiation declaration

[Bug debug/49366] pointer-to-member-function not given value in DW_TAG_template_value_param

2013-05-10 Thread dblaikie at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=49366 David Blaikie dblaikie at gmail dot com changed: What|Removed |Added CC||dblaikie

[Bug debug/55641] New: debug info for the type of a reference declared with a typedef has spurious 'const'

2012-12-10 Thread dblaikie at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55641 Bug #: 55641 Summary: debug info for the type of a reference declared with a typedef has spurious 'const' Classification: Unclassified Product: gcc Version: unknown

[Bug debug/55641] debug info for the type of a reference declared with a typedef has spurious 'const'

2012-12-10 Thread dblaikie at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55641 --- Comment #1 from David Blaikie dblaikie at gmail dot com 2012-12-10 16:29:47 UTC --- Oh, and, tellingly, GCC (7.5) emits a DW_TAG_const_type in the DWARF data that Clang does not emit, which seems to be the relevant difference here.

[Bug debug/55641] debug info for the type of a reference declared with a typedef has spurious 'const'

2012-12-10 Thread dblaikie at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=55641 --- Comment #4 from David Blaikie dblaikie at gmail dot com 2012-12-10 18:31:54 UTC --- (In reply to comment #3) confirmed with various versions from 4.1 to 4.7 sorry, yes - I tested this with 4.7. Thanks for verifying the repro.