[Bug tree-optimization/39339] [4.4 Regression] SRA miscompilation of vte
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-03-04 09:03 --- Subject: Bug 39339 Author: rguenth Date: Wed Mar 4 09:02:59 2009 New Revision: 144598 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144598 Log: 2009-03-04 Richard Guenther rguent...@suse.de PR tree-optimization/39339 * tree-sra.c (try_instantiate_multiple_fields): Make it no longer ICE on the above. * gcc.c-torture/execute/pr39339.c: New testcase. Added: trunk/gcc/testsuite/gcc.c-torture/execute/pr39339.c Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-sra.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39339
[Bug tree-optimization/39339] [4.4 Regression] SRA miscompilation of vte
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-03-04 09:03 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39339
[Bug driver/39356] assembler isn't called
--- Comment #2 from r dot emrich at de dot tecosim dot com 2009-03-04 09:07 --- (In reply to comment #1) Huh. It's not even compiling. You're right. OTOH the sequence $ gcc -v -S hello.c $ gcc -v -c hello.s $ gcc -v -o hello hello.o builds correctly. Anyway the driver is broken for x86_64-pc-mingw32. Perhaps somebody can point Kai Tietz to that problem, eventually he has some glue. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39356
[Bug c++/13549] [4.2/4.3/4.4 regression] Problem compiling Boost.Python test
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.2.5 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13549
[Bug tree-optimization/39358] [4.4 regression] Wrong aliasing warning with lists
--- Comment #6 from rguenth at gcc dot gnu dot org 2009-03-04 09:49 --- It's a wrong-code problem. And it's of course again fixed on alias-improvements branch... :/ Mine. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||wrong-code Last reconfirmed|-00-00 00:00:00 |2009-03-04 09:49:18 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39358
[Bug middle-end/37805] [4.3/4.4 Regression] gcc --help=separate
-- jakub at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|jakub at gcc dot gnu dot org|unassigned at gcc dot gnu ||dot org Status|REOPENED|NEW http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37805
[Bug libstdc++/36104] [4.3/4.4 Regression] gnu-versioned-namespace is broken
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Summary|[4.3/4.4 regression] gnu- |[4.3/4.4 Regression] gnu- |versioned-namespace is |versioned-namespace is |broken |broken Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36104
[Bug testsuite/39324] [4.4 Regression] FAIL: gcc.c-torture/execute/nestfunc-3.c execution, -O[1-3] -m64
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39324
[Bug testsuite/39357] [4.4 Regression] gcc.dg/vect/vect-iv-6.c
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Component|middle-end |testsuite Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39357
[Bug target/36415] [4.3 Regression] internal compiler error: in extract_insn, at recog.c:1990
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Summary|[4.3 regression] internal |[4.3 Regression] internal |compiler error: in |compiler error: in |extract_insn, at|extract_insn, at |recog.c:1990|recog.c:1990 Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36415
[Bug target/38553] [4.3 Regression] Segfault in ggc_set_mark with -maltivec
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38553
[Bug debug/38896] [4.3 Regression] building libstdc++ stumbles on invalid bignum, 0x8000000000000000
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38896
[Bug target/39115] [4.3 Regression] Value of variable is not read again
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39115
[Bug c++/29469] [DR 224] [4.2/4.3/4.4 Regression] error: non-template 'pair' used as template
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29469
[Bug c++/29607] [DR 224] [4.2/4.3/4.4 Regression] dependent name with base classes
--- Comment #16 from rguenth at gcc dot gnu dot org 2009-03-04 12:05 --- Testcase from comment #5 in a form that is valid if DR 224 is implemented (and which EDG accepts without warnings and errors): class WvLink { WvLink *data; }; class WvVectorBase { class IterBase { WvLink *cur() const; }; }; templateclass T class WvVector : public WvVectorBase { class Iter : public WvVector::IterBase { T *ptr() const { return static_castT *(cur()-data); } }; }; -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Keywords||rejects-valid Priority|P3 |P2 Last reconfirmed|2009-03-03 21:14:04 |2009-03-04 12:05:56 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29607
[Bug libstdc++/36104] [4.3/4.4 Regression] gnu-versioned-namespace is broken
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Keywords||build Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36104
[Bug middle-end/37805] [4.3/4.4 Regression] gcc --help=separate
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37805
[Bug middle-end/39254] [4.4 Regression] gcc.c-torture/execute/va-arg-trap-1.c ICEs on powerpc-apple-darwin9
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39254
[Bug testsuite/39297] [4.4 Regression] gcc.dg/tree-ssa/loop-31.c
--- Comment #13 from rguenth at gcc dot gnu dot org 2009-03-04 12:10 --- Thus this is a testsuite issue. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Component|middle-end |testsuite Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39297
[Bug testsuite/39324] [4.4 Regression] FAIL: gcc.c-torture/execute/nestfunc-3.c execution, -O[1-3] -m64
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39324
[Bug debug/39355] [4.4 Regression] ICE at dwarf2out.c:10353 in loc_descriptor_from_tree_1
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-03-04 12:13 --- Dave, did this ICE by chance disappear with the fix for PR39345? At least the testcase works for me on i?86-linux now. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Keywords||ice-on-valid-code Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39355
[Bug testsuite/39357] [4.4 Regression] gcc.dg/vect/vect-iv-6.c
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39357
[Bug tree-optimization/39358] [4.4 Regression] Wrong aliasing warning with lists
--- Comment #7 from rguenth at gcc dot gnu dot org 2009-03-04 12:14 --- I have a patch. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Priority|P3 |P2 Summary|[4.4 regression] Wrong |[4.4 Regression] Wrong |aliasing warning with lists |aliasing warning with lists http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39358
[Bug middle-end/37805] [4.3/4.4 Regression] gcc --help=separate
-- rwild at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rwild at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2008-10-14 09:16:37 |2009-03-04 12:23:31 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37805
[Bug tree-optimization/39358] [4.4 Regression] Wrong aliasing warning with lists
--- Comment #8 from rguenth at gcc dot gnu dot org 2009-03-04 12:37 --- Subject: Bug 39358 Author: rguenth Date: Wed Mar 4 12:36:56 2009 New Revision: 144602 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144602 Log: 2009-03-04 Richard Guenther rguent...@suse.de PR tree-optimization/39358 * tree-ssa-structalias.c (do_sd_constraint): Fix check for escaped_id and callused_id. (solve_graph): Likewise. * g++.dg/warn/Wstrict-aliasing-bogus-escape-2.C: New testcase. * g++.dg/warn/Wstrict-aliasing-bogus-escape-3.C: Likewise. Added: trunk/gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-2.C trunk/gcc/testsuite/g++.dg/warn/Wstrict-aliasing-bogus-escape-3.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-structalias.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39358
[Bug tree-optimization/39358] [4.4 Regression] Wrong aliasing warning with lists
--- Comment #9 from rguenth at gcc dot gnu dot org 2009-03-04 12:39 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39358
[Bug libstdc++/36104] [4.3/4.4 Regression] gnu-versioned-namespace is broken
--- Comment #4 from bkoz at gcc dot gnu dot org 2009-03-04 14:03 --- This has been broken since the move to include/tr1_impl. To fix this, I would like to move to using fully-qualified macros for TR1 and std namespaces (ie _GLIBCXX_TR1, _GLIBCXX_STD), and hopefully unifying the active namespace switching mechanisms (_GLIBCXX_BEGIN_NAMESPACE and friends, _GLIBCXX_BEGIN_NAMESPACE_TR1). -- bkoz at gcc dot gnu dot org changed: What|Removed |Added Known to work|4.1.2 |4.1.2 4.2.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36104
[Bug testsuite/39324] [4.4 Regression] FAIL: gcc.c-torture/execute/nestfunc-3.c execution, -O[1-3] -m64
--- Comment #2 from dominiq at lps dot ens dot fr 2009-03-04 14:23 --- I cannot reproduce the problem at revision 144543: closing as invalid. -- dominiq at lps dot ens dot fr changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39324
[Bug middle-end/39360] New: tree-dsa leads to an ICE
[~]gcc -v gcc version 4.4.0 20090304 (experimental) (GCC) [~]gcc -O2 -c patch_realtek.c sound/pci/hda/patch_realtek.c: In function 'patch_alc861vd': sound/pci/hda/patch_realtek.c:14747: internal compiler error: in referenced_var_lookup, at tree-dfa.c:563 Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. -- Summary: tree-dsa leads to an ICE Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: middle-end AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: linuxl4 at sohu dot com GCC build triplet: x86_64-pc-linux-gnu GCC host triplet: x86_64-pc-linux-gnu GCC target triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug middle-end/39360] tree-dsa leads to an ICE
--- Comment #1 from linuxl4 at sohu dot com 2009-03-04 14:36 --- Created an attachment (id=17393) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17393action=view) the preprocessed source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug c++/29607] [DR 224] [4.2/4.3/4.4 Regression] dependent name with base classes
-- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jason at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2009-03-04 12:05:56 |2009-03-04 14:48:18 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29607
[Bug middle-end/39360] tree-dsa leads to an ICE
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-03-04 15:03 --- Reducing. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Summary|tree-dsa leads to an ICE|tree-dsa leads to an ICE http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug middle-end/39360] [4.4 Regression] tree-dsa leads to an ICE
--- Comment #3 from hjl dot tools at gmail dot com 2009-03-04 15:16 --- It is most likely caused by revision 144497: http://gcc.gnu.org/ml/gcc-cvs/2009-02/msg00665.html -- hjl dot tools at gmail dot com changed: What|Removed |Added CC||jh at suse dot cz Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-03-04 15:16:02 date|| Summary|tree-dsa leads to an ICE|[4.4 Regression] tree-dsa ||leads to an ICE Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug middle-end/39360] [4.4 Regression] ICE in referenced_var_lookup, at tree-dfa.c:563
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-03-04 15:21 --- In TODO_recompute_alias after PRE we have something (alc_capture_mixer1, found through DECL_INITIAL of caps) in gimple_addressable_vars that is no longer available. Honza, this is yours again. I guess during inlining we no longer add referenced vars to the inlined-to function if they are addresses of globals referenced through initializers of local statics? static struct snd_kcontrol_new alc_capture_mixer1[]; static void set_capture_mixer(struct alc_spec *spec) { static struct snd_kcontrol_new *caps[3] = { alc_capture_mixer1, alc_capture_mixer2, alc_capture_mixer3, }; if (spec-num_adc_nids 0 spec-num_adc_nids = 3) spec-cap_mixer = caps[spec-num_adc_nids - 1]; } inlined into some other function. Proper testcase still reducing. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||hubicka at gcc dot gnu dot ||org Keywords||ice-on-valid-code Priority|P3 |P1 Last reconfirmed|2009-03-04 15:16:02 |2009-03-04 15:21:37 date|| Summary|[4.4 Regression] tree-dsa |[4.4 Regression] ICE in |leads to an ICE |referenced_var_lookup, at ||tree-dfa.c:563 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug target/39361] New: [4.4 Regression] Many new neon test failures
See http://gcc.gnu.org/ml/gcc-testresults/2009-03/msg00407.html. Executing on host: /home/dave/gnu/gcc/objdir/gcc/xgcc -B/home/dave/gnu/gcc/objdi r/gcc/ -save-temps -O0 -mfpu=neon -mfloat-abi=softfp -c -o vRshrQ_ns16.o /hom e/dave/gnu/gcc/gcc/gcc/testsuite/gcc.target/arm/neon/vRshrQ_ns16.c(timeout = 300) In file included from /home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.target/arm/neon/v RshrQ_ns16.c:9: /home/dave/gnu/gcc/objdir/gcc/include/arm_neon.h: In function 'test_vRshrQ_ns16' : /home/dave/gnu/gcc/objdir/gcc/include/arm_neon.h:3567: error: argument must be a constant compiler exited with status 1 output is: In file included from /home/dave/gnu/gcc/gcc/gcc/testsuite/gcc.target/arm/neon/vRshrQ_ns16.c:9: /home/dave/gnu/gcc/objdir/gcc/include/arm_neon.h: In function 'test_vRshrQ_ns16': /home/dave/gnu/gcc/objdir/gcc/include/arm_neon.h:3567: error: argument must be a constant FAIL: gcc.target/arm/neon/vRshrQ_ns16.c (test for excess errors) vrshrq_n_s16 (int16x8_t __a, const int __b) { return (int16x8_t)__builtin_neon_vshr_nv8hi (__a, __b, 5); } The error is in __builtin_neon_vshr_nv8hi (__a, __b, 5). Similar errors occur at other locations. -- Summary: [4.4 Regression] Many new neon test failures Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: target AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: danglin at gcc dot gnu dot org GCC build triplet: arm-none-linux-gnueabi GCC host triplet: arm-none-linux-gnueabi GCC target triplet: arm-none-linux-gnueabi http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39361
[Bug target/39361] [4.4 Regression] Many new neon test failures
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-03-04 15:39 --- This is likely caused by 2009-02-28 Jan Hubicka j...@suse.cz PR debug/39267 * tree-inline.c (setup_one_parameter): Do not copy propagate arguments when not optimizing. Honza, the easiest would be probably to re-instantiate propagating into always_inline function bodies. Otherwise we may be again limited to not use inline functions for this kind of wrappers because of -O0. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||hubicka at gcc dot gnu dot ||org Keywords||rejects-valid Priority|P3 |P1 Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39361
[Bug middle-end/39360] [4.4 Regression] ICE in referenced_var_lookup, at tree-dfa.c:563
--- Comment #5 from rguenth at gcc dot gnu dot org 2009-03-04 16:40 --- Reduced testcase: typedef unsigned short u16; struct snd_kcontrol_new { }; typedef u16 hda_nid_t; struct alc_spec { struct snd_kcontrol_new *cap_mixer; unsigned int num_adc_nids; }; static struct snd_kcontrol_new alc_capture_mixer1[] = { }; static struct snd_kcontrol_new alc_capture_mixer2[] = { }; static struct snd_kcontrol_new alc_capture_mixer3[] = { }; static void set_capture_mixer(struct alc_spec *spec) { static struct snd_kcontrol_new *caps[3] = { alc_capture_mixer1, alc_capture_mixer2, alc_capture_mixer3 }; if (spec-num_adc_nids 0 spec-num_adc_nids = 3) spec-cap_mixer = caps[spec-num_adc_nids - 1]; } static hda_nid_t alc662_adc_nids[1] = { 0x09, }; int patch_alc662(struct hda_codec *codec) { struct alc_spec *spec; spec-num_adc_nids = (sizeof(alc662_adc_nids) / sizeof((alc662_adc_nids)[0]) + (sizeof(char[1 - 2 * !!(__builtin_types_compatible_p(typeof(alc662_adc_nids), typeof(alc662_adc_nids[0])))]) - 1)); if (!spec-cap_mixer) set_capture_mixer(spec); } -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360
[Bug c++/29469] [DR 224] [4.2/4.3/4.4 Regression] error: non-template 'pair' used as template
-- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jason at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2009-03-03 21:10:30 |2009-03-04 16:54:14 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29469
[Bug c++/9634] [DR224] Injected class name as qualifier should not make the name dependent
-- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|giovannibajo at libero dot |jason at gcc dot gnu dot org |it | Status|NEW |ASSIGNED Last reconfirmed|2009-03-03 21:15:01 |2009-03-04 18:21:59 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9634
[Bug fortran/38979] OpenMP extension: THREADPRIVATE for EQUIVALENCEd symbols
--- Comment #5 from arjen dot verweij at tass-safe dot com 2009-03-04 18:23 --- Do these patches have any chance of making it into an official release? We are using gfortran to compile code that is accepted by a string of compilers, but not this one :) Perhaps it is a good idea to treat this as an error that also provides a workaround; similar to code that uses cray pointers you are required to provide -fcray-pointer to compile it and errors if you don't? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38979
Error compiling 4.3.3 on Solaris
uname -a: SunOS mintslice 5.11 snv_96 i86pc i386 i86xpv $ ./configure --prefix=/home/dr146992/local --with-mpfr=/home/dr146992/local --with-gmp=/home/dr146992/local ... $ gmake ... libtool: compile: /biscuit/mozilla/gcc-4.3.3/host-i386-pc-solaris2.11/gcc/xgcc -shared-libgcc -B/biscuit/mozilla/gcc-4.3.3/host-i386-pc-solaris2.11/gcc -nostdinc++ -L/biscuit/mozilla/gcc-4.3.3/i386-pc-solaris2.11/amd64/libstdc++-v3/src -L/biscuit/mozilla/gcc-4.3.3/i386-pc-solaris2.11/amd64/libstdc++-v3/src/.libs -B/home/dr146992/local/i386-pc-solaris2.11/bin/ -B/home/dr146992/local/i386-pc-solaris2.11/lib/ -isystem /home/dr146992/local/i386-pc-solaris2.11/include -isystem /home/dr146992/local/i386-pc-solaris2.11/sys-include -m64 -I/biscuit/mozilla/gcc-4.3.3/libstdc++-v3/../gcc -I/biscuit/mozilla/gcc-4.3.3/i386-pc-solaris2.11/amd64/libstdc++-v3/include/i386-pc-solaris2.11 -I/biscuit/mozilla/gcc-4.3.3/i386-pc-solaris2.11/amd64/libstdc++-v3/include -I/biscuit/mozilla/gcc-4.3.3/libstdc++-v3/libsupc++ -fno-implicit-templates -Wall -Wextra -Wwrite-strings -Wcast-qual -fdiagnostics-show-location=once -ffunction-sections -fdata-sections -O2 -g -m64 -c ../../../.././libstdc++-v3/libsupc++/array_type_info.cc -fPIC -DPIC -o array_type_info.o Assembler: array_type_info.cc /var/tmp//ccL5ay8j.s, line 190 : Warning: Illegal subtraction - symbols from different sections: .LFB72, .DOT-4 /var/tmp//ccL5ay8j.s, line 199 : Warning: Illegal subtraction - symbols from different sections: .LFB71, .DOT-5 /var/tmp//ccL5ay8j.s, line 208 : Warning: Illegal subtraction - symbols from different sections: .LFB73, .DOT-6 /var/tmp//ccL5ay8j.s, line 177 : Illegal subtraction - symbols from different sections: .LDFCM0, .DOT-3 gmake[8]: *** [array_type_info.lo] Error 1 Looks like it will require gas?
[Bug other/39302] [meta-bug] bugs waiting for Copyright Assignment acknowledgemt for ARC International (UK) Ltd
--- Comment #1 from amylaar at gcc dot gnu dot org 2009-03-04 18:32 --- Confirmation received. I'll have to send out the patches now. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-03-04 18:32:08 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39302
[Bug c++/29469] [DR 224] [4.2/4.3/4.4 Regression] error: non-template 'pair' used as template
--- Comment #12 from jason at gcc dot gnu dot org 2009-03-04 18:42 --- Subject: Bug 29469 Author: jason Date: Wed Mar 4 18:42:17 2009 New Revision: 144618 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144618 Log: PR c++/9634 PR c++/29469 PR c++/29607 * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/class.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29469
[Bug c++/9634] [DR224] Injected class name as qualifier should not make the name dependent
--- Comment #20 from jason at gcc dot gnu dot org 2009-03-04 18:42 --- Subject: Bug 9634 Author: jason Date: Wed Mar 4 18:42:17 2009 New Revision: 144618 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144618 Log: PR c++/9634 PR c++/29469 PR c++/29607 * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/class.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9634
[Bug c++/29607] [DR 224] [4.2/4.3/4.4 Regression] dependent name with base classes
--- Comment #17 from jason at gcc dot gnu dot org 2009-03-04 18:42 --- Subject: Bug 29607 Author: jason Date: Wed Mar 4 18:42:17 2009 New Revision: 144618 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144618 Log: PR c++/9634 PR c++/29469 PR c++/29607 * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/class.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/decl.c trunk/gcc/cp/parser.c trunk/gcc/cp/pt.c trunk/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29607
[Bug tree-optimization/39362] New: [4.4 Regression] ICE failing to coalesce ab SSA names
void *fastMalloc (int n); void fastFree (void *p); template class T struct C { void deref () { delete static_cast T *(this); } }; template typename T struct D { D (T *ptr) : m_ptr (ptr) { } ~D () { if (T * ptr = m_ptr) ptr-deref (); } T *operator- () const; T *m_ptr; typedef T *UnspecifiedBoolType; operator UnspecifiedBoolType () const; }; template typename T struct E { static void destruct (T * begin, T * end) { for (T * cur = begin; cur != end; ++cur) cur-~T (); } }; template typename T class F; template typename T struct G { static void destruct (T * begin, T * end) { E T::destruct (begin, end); } static void uninitializedFill (T * dst, T * dstEnd, const T val) { FT::uninitializedFill (dst, dstEnd, val); } }; template typename T struct H { void allocateBuffer (int newCapacity) { m_buffer = static_cast T *(fastMalloc (newCapacity * sizeof (T))); } void deallocateBuffer (T * bufferToDeallocate) { if (m_buffer == bufferToDeallocate) fastFree (bufferToDeallocate); } T *buffer () { } int capacity () const { } T *m_buffer; }; template typename T, int cap class I; template typename T struct I T, 0 : H T { I (int capacity) { allocateBuffer (capacity); } ~I () { deallocateBuffer (buffer ()); } using H T::allocateBuffer; H T::buffer; }; template typename T, int cap = 0 struct J { typedef T *iterator; ~J () { if (m_size) shrink (0); } J (const J ); int capacity () const { m_buffer.capacity (); } T operator[](int i) { } iterator begin () { } iterator end () { return begin () + m_size; } void shrink (int size); template typename U void append (const U ); int m_size; I T, cap m_buffer; }; template typename T, int cap J T, cap::J (const J other) : m_buffer (other.capacity ()) { } template typename T, int cap void J T, cap::shrink (int size) { G T::destruct (begin () + size, end ()); m_size = size; } struct A : public C A { virtual ~A (); typedef J D A B; virtual A *firstChild () const; virtual A *nextSibling () const; virtual const B children (int length); B m_children; }; const A::B A::children (int length) { for (D A obj = firstChild (); obj; obj = obj-nextSibling ()) { B children = obj-children (2); for (unsigned i = 0; i length; ++i) m_children.append (children[i]); } } ICEs with -O2 -fno-tree-sra on x86_64-linux or i386-linux since r137631 (PRE rewrite). -- Summary: [4.4 Regression] ICE failing to coalesce ab SSA names Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: ice-on-valid-code Severity: normal Priority: P3 Component: tree-optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: jakub at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39362
[Bug tree-optimization/39362] [4.4 Regression] ICE failing to coalesce ab SSA names
-- jakub at gcc dot gnu dot org changed: What|Removed |Added Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39362
[Bug other/39363] New: [meta-bug] pending patches from ARC International (UK) Ltd
-- Summary: [meta-bug] pending patches from ARC International (UK) Ltd Product: gcc Version: 4.4.0 Status: UNCONFIRMED Keywords: meta-bug Severity: normal Priority: P3 Component: other AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org BugsThisDependsOn: 39141,39302 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39363
[Bug tree-optimization/39141] overzealous unrolling (peeling) destroys code locality
--- Comment #1 from amylaar at gcc dot gnu dot org 2009-03-04 19:08 --- patch submitted -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-04 19:08:52 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39141
[Bug debug/39355] [4.4 Regression] ICE at dwarf2out.c:10353 in loc_descriptor_from_tree_1
--- Comment #6 from jakub at gcc dot gnu dot org 2009-03-04 19:13 --- I can't reproduce this with x86_64-linux - hppa-linux cross on the current trunk. Can you reproduce it with the provided preprocessed source? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39355
[Bug c++/39364] New: Arithmetic on bool bit-fields is incorrect
Bug #30274 bool bit-field: wrong increment and decrement is supposedly fixed in 4.2.0 and 4.3.0. http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30274 However, the underlying issue still reproduces in several ways with GCC 4.2.4 and 4.3.2. #include stdio.h struct S { bool f : 7; }; struct S v = { 2 }; struct S w = { true }; int main() { printf(FAIL: %d is not 1\n, (int)v.f); w.f *= 3; printf(FAIL: %d is not 1\n, (int)w.f); return 0; } % g++ test.cc ; ./a.out FAIL: 2 is not 1 FAIL: 3 is not 1 Also fails with gcc -std=c99. -- Summary: Arithmetic on bool bit-fields is incorrect Product: gcc Version: 4.3.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: foo at mailinator dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39364
[Bug c++/39365] New: ++ operator with volatile bool increments
This program: extern C void abort(); typedef volatile bool my_bool; int main() { my_bool b = false; int i; b++; b++; i = b; if (i != 1) abort (); return 0; } calls abort(), because GCC is generating an increment for the '++' operator rather than setting the value to true, and so 'i' becomes 2 not 1. This is an exact duplicate of bug #29295, except that I've added the keyword volatile on line 2, and this program still aborts on 4.2.4 and 4.3.2, even though bug #29295 is supposedly fixed in those versions. -- Summary: ++ operator with volatile bool increments Product: gcc Version: 4.3.2 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: foo at mailinator dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39365
[Bug c++/39364] Arithmetic on bool bit-fields is incorrect
--- Comment #1 from pinskia at gcc dot gnu dot org 2009-03-04 19:36 --- This was fixed in 4.3.3. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Keywords||wrong-code Resolution||FIXED Target Milestone|--- |4.3.3 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39364
[Bug c++/29607] [DR 224] [4.2/4.3/4.4 Regression] dependent name with base classes
--- Comment #18 from jason at gcc dot gnu dot org 2009-03-04 19:38 --- Subject: Bug 29607 Author: jason Date: Wed Mar 4 19:37:43 2009 New Revision: 144621 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144621 Log: PR c++/9634 PR c++/29469 PR c++/29607 Implement DR 224. * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: branches/gcc-4_3-branch/gcc/testsuite/g++.dg/template/dependent-name5.C - copied unchanged from r144618, trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: branches/gcc-4_3-branch/gcc/cp/ChangeLog branches/gcc-4_3-branch/gcc/cp/class.c branches/gcc-4_3-branch/gcc/cp/cp-tree.h branches/gcc-4_3-branch/gcc/cp/decl.c branches/gcc-4_3-branch/gcc/cp/parser.c branches/gcc-4_3-branch/gcc/cp/pt.c branches/gcc-4_3-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29607
[Bug c++/29469] [DR 224] [4.2/4.3/4.4 Regression] error: non-template 'pair' used as template
--- Comment #13 from jason at gcc dot gnu dot org 2009-03-04 19:38 --- Subject: Bug 29469 Author: jason Date: Wed Mar 4 19:37:43 2009 New Revision: 144621 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144621 Log: PR c++/9634 PR c++/29469 PR c++/29607 Implement DR 224. * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: branches/gcc-4_3-branch/gcc/testsuite/g++.dg/template/dependent-name5.C - copied unchanged from r144618, trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: branches/gcc-4_3-branch/gcc/cp/ChangeLog branches/gcc-4_3-branch/gcc/cp/class.c branches/gcc-4_3-branch/gcc/cp/cp-tree.h branches/gcc-4_3-branch/gcc/cp/decl.c branches/gcc-4_3-branch/gcc/cp/parser.c branches/gcc-4_3-branch/gcc/cp/pt.c branches/gcc-4_3-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29469
[Bug c++/9634] [DR224] Injected class name as qualifier should not make the name dependent
--- Comment #21 from jason at gcc dot gnu dot org 2009-03-04 19:38 --- Subject: Bug 9634 Author: jason Date: Wed Mar 4 19:37:43 2009 New Revision: 144621 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144621 Log: PR c++/9634 PR c++/29469 PR c++/29607 Implement DR 224. * decl.c (make_typename_type): Do look inside currently open classes. * parser.c (cp_parser_lookup_name): Likewise. (cp_parser_template_name): Likewise. * pt.c (dependent_scope_p): New function. * cp-tree.h: Declare it. * class.c (currently_open_class): Return fast if T isn't a class. Added: branches/gcc-4_3-branch/gcc/testsuite/g++.dg/template/dependent-name5.C - copied unchanged from r144618, trunk/gcc/testsuite/g++.dg/template/dependent-name5.C Modified: branches/gcc-4_3-branch/gcc/cp/ChangeLog branches/gcc-4_3-branch/gcc/cp/class.c branches/gcc-4_3-branch/gcc/cp/cp-tree.h branches/gcc-4_3-branch/gcc/cp/decl.c branches/gcc-4_3-branch/gcc/cp/parser.c branches/gcc-4_3-branch/gcc/cp/pt.c branches/gcc-4_3-branch/gcc/testsuite/ChangeLog -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9634
[Bug c++/39365] ++ operator with volatile bool increments
--- Comment #1 from pinskia at gcc dot gnu dot org 2009-03-04 19:40 --- Basically if (same_type_p (declared_type, boolean_type_node)) Should be changed into if (same_type_ignoring_top_level_qualifiers_p (declared_type, boolean_type_node)) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39365
[Bug c++/39365] ++ operator with volatile bool increments
--- Comment #2 from pinskia at gcc dot gnu dot org 2009-03-04 19:40 --- Mine since I fixed the other one. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |pinskia at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-03-04 19:40:30 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39365
[Bug c++/29469] [DR 224] [4.2/4.3/4.4 Regression] error: non-template 'pair' used as template
--- Comment #14 from jason at gcc dot gnu dot org 2009-03-04 19:40 --- Fixed for 4.3 and 4.4, not applying to 4.2. -- jason at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|4.2.5 |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29469
[Bug c++/29607] [DR 224] [4.2/4.3/4.4 Regression] dependent name with base classes
--- Comment #19 from jason at gcc dot gnu dot org 2009-03-04 19:41 --- Fixed for 4.3 and 4.4, not applying to 4.2. -- jason at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|4.2.5 |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29607
[Bug c++/9634] [DR224] Injected class name as qualifier should not make the name dependent
--- Comment #22 from jason at gcc dot gnu dot org 2009-03-04 19:41 --- Fixed for 4.3 and 4.4, not applying to 4.2. -- jason at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.3.4 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9634
[Bug libstdc++/39366] New: Memory Leak in Exception Handling
When an exception is thrown for the first time in a given thread, there is a 16 bytes memory leak if the thread is started by a C++ library loaded using dlopen() by a C executable. The key factors to reproduce the leak are: - The executable must be a C program not linked against libstdc++ and not linked against the faulty C++ library; - The C++ library must be loaded using dlopen(); - A leak will occur the first time a thread started by the C++ library throws an exception. The problem was not present in libstdc++ 6.0.3 (distributed with GCC 3.4.6), but is present in libstdc++ 6.0.9 and libstdc++ 6.0.10. Attached is a gzip-compressed tarball containing: - main.c: The source file for the executable; dummy.cpp: The source file for the C++ library; build.sh: The bash shell script used to compile; main.i, main.ii: The preprocessed outputs. Command line to compile: cd /cpp_exception_test; ./build.sh testlib.so Example command line to execute: cd /cpp_exception_test; ./cpp_exception_test /cpp_exception_test 10 Note that Valgrind reports an 8 bytes leak per thread throwing a first exception, but the memory growth seen when running a large number of iterations is 16 bytes. Extract from Valgrind report: - ==16376== 8 bytes in 1 blocks are definitely lost in loss record 1 of 12 ==16376==at 0x402517F: memalign (vg_replace_malloc.c:460) ==16376==by 0x401055F: ___tls_get_addr (in /lib/ld-2.7.so) ==16376==by 0x46528AA: (anonymous namespace)::get_global() (eh_globals.cc:55) ==16376==by 0x4652375: __cxa_allocate_exception (eh_alloc.cc:134) ==16376==by 0x459ED41: ExceptionFunction(int) (in /home/fg/cpp_exception_test/libtest.so) ==16376==by 0x459EDE4: DummyThread(void*) (in /home/fg/cpp_exception_test/libtest.so) ==16376==by 0x402D4FA: start_thread (in /lib/tls/i686/cmov/libpthread-2.7.so) ==16376==by 0x4123E5D: clone (in /lib/tls/i686/cmov/libc-2.7.so) gcc -v output: -- Using built-in specs. Target: i686-pc-linux-gnu Configured with: ./configure --quiet --enable-languages=c,c++ --prefix=/opt/gcc/4.2.4 Thread model: posix gcc version 4.2.4 uname -a output: Linux fred-laptop 2.6.24-19-generic #1 SMP Fri Jul 11 23:41:49 UTC 2008 i686 GNU/Linux Linux distribution: Ubuntu 8.0.4 (Hardy Heron) -- Summary: Memory Leak in Exception Handling Product: gcc Version: 4.3.3 Status: UNCONFIRMED Severity: normal Priority: P3 Component: libstdc++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: fgiasson1 at yahoo dot ca GCC build triplet: i686-pc-linux-gnu GCC host triplet: i686-pc-linux-gnu GCC target triplet: i686-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39366
[Bug libstdc++/39366] Memory Leak in Exception Handling
--- Comment #1 from pinskia at gcc dot gnu dot org 2009-03-04 20:06 --- This sounds like a bug in glibc or valgrind. ==16376== 8 bytes in 1 blocks are definitely lost in loss record 1 of 12 ==16376==at 0x402517F: memalign (vg_replace_malloc.c:460) ==16376==by 0x401055F: ___tls_get_addr (in /lib/ld-2.7.so) This is TLS symbol from a shared library so it calls ___tls_get_addr in ld.so which allocates the space. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39366
[Bug tree-optimization/39362] [4.4 Regression] ICE failing to coalesce ab SSA names
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-03-04 20:08 --- I will have a look. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |rguenth at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-03-04 20:08:55 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39362
[Bug libstdc++/39366] Memory Leak in Exception Handling
--- Comment #2 from pinskia at gcc dot gnu dot org 2009-03-04 20:14 --- It looks like glibc is not clearing up dlopened TLS allocated memory. A simple testcase for glibc would be put into a shared library something like: __thread int a; int f(void) { return a; } --- CUT --- And then call dlopen that library and see what happens with calling f from the thread. If that does not leak, try adding that creating a shared that contains a function which just calls f and then call that new function from the thread. Thanks, Andrew Pinski -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39366
[Bug debug/39355] [4.4 Regression] ICE at dwarf2out.c:10353 in loc_descriptor_from_tree_1
--- Comment #7 from dave at hiauly1 dot hia dot nrc dot ca 2009-03-04 20:46 --- Subject: Re: [4.4 Regression] ICE at dwarf2out.c:10353 in loc_descriptor_from_tree_1 --- Comment #6 from jakub at gcc dot gnu dot org 2009-03-04 19:13 --- I can't reproduce this with x86_64-linux - hppa-linux cross on the current trunk. Can you reproduce it with the provided preprocessed source? I did some more testing and I can't reproduce it with the preprocessed source. The problem only occurs when I compile directly with 13450.cc. Dave -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39355
[Bug c++/39367] New: ICE at tree-inline.c:1042 with -O
Building QT4, GCC 4.4 rev 144616. The file compiles correctly with -O0, but fails with -O1 or -Os. /var/tmp/portage/x11-libs/qt-core-4.5.0/work/qt-x11-opensource-src-4.5.0/src/script/qscriptecmaboolean.cpp: In member function 'void QScript::Ecma::Boolean::newBoolean(QScriptValueImpl*, bool)': /var/tmp/portage/x11-libs/qt-core-4.5.0/work/qt-x11-opensource-src-4.5.0/src/script/qscriptecmaboolean.cpp:101: internal compiler error: in copy_tree_body_r, at tree-inline.c:1042 -- Summary: ICE at tree-inline.c:1042 with -O Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: il dot basso dot buffo at gmail dot com GCC build triplet: x86_64-pc-linux-gnu GCC host triplet: x86_64-pc-linux-gnu GCC target triplet: x86_64-pc-linux-gnu http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug debug/39368] New: loc_descriptor doesn't call delegitimize_address on MEMs
For a RISC target that doesn't allow memory-indirect addressing, the proper way to represent an access of a symbol found in the GOT is to first load the symbol from the GOT into a register, and then use that register for memory access or call as needed. For proper scheduling and instruction selection, the symbol load source should be represented as what it is, i.e. a MEM. So we have a (MEM (unspec ... UNSPEC_GOT)) . For the purposes of debug output, this should be translated back into the symbol_ref it represents. However, loc_descriptor looks only into the address inside a MEM, it does not process the entire mem with targetm.delegitimize_address. I.e. there is no way to get rid of the MEM if it is not nested in another MEM. -- Summary: loc_descriptor doesn't call delegitimize_address on MEMs Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: debug AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: amylaar at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39368
[Bug c++/39367] ICE at tree-inline.c:1042 with -O
--- Comment #1 from il dot basso dot buffo at gmail dot com 2009-03-04 20:58 --- Created an attachment (id=17395) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17395action=view) Preprocessed C++ source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug tree-optimization/39367] [4.4 Regression] ICE at tree-inline.c:1042 with -O
-- rguenth at gcc dot gnu dot org changed: What|Removed |Added CC||hubicka at gcc dot gnu dot ||org Component|c++ |tree-optimization Keywords||ice-on-valid-code Summary|ICE at tree-inline.c:1042 |[4.4 Regression] ICE at |with -O |tree-inline.c:1042 with -O Target Milestone|--- |4.4.0 http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug tree-optimization/39367] [4.4 Regression] ICE at tree-inline.c:1042 with -O
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-03-04 21:20 --- Reducing. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug c/39369] New: ioquake3 SIGSEGVs when compiled with SSE optimizations
Backtrace is: affected program bt: Program received signal SIGSEGV, Segmentation fault. R_SubdividePatchToGrid (width=3, height=3, points=0x21ef88) at code/renderer/tr_curve.c:411 411 VectorNormalize( dir ); (gdb) bt #0 R_SubdividePatchToGrid (width=3, height=3, points=0x21ef88) at code/renderer/tr_curve.c:411 #1 0x00512334 in ParseMesh (ds=value optimized out, verts=0x14fdcc04, surf=value optimized out) at code/renderer/tr_bsp.c:424 #2 0x005160da in RE_LoadWorldMap (name=0x153c4b58 maps/q3dm0.bsp) at code/renderer/tr_bsp.c:1265 #3 0x004028d8 in CL_CgameSystemCalls (args=0x156d884c) at code/client/cl_cgame.c:553 #4 0x0059d5b6 in CallAsmCall (syscallNum=36, programStack=4193544, opStack=0x22a150) at code/qcommon/vm_x86.c:193 #5 0x0059d588 in AsmCall () #6 0x0024 in ?? () #7 0x003ffd08 in ?? () #8 0x0022a150 in ?? () #9 0x0002 in ?? () #10 0x1ad63c2a in ?? () #11 0x0059d574 in AsmCall () #12 0x1ad671ce in ?? () #13 0x0059d574 in AsmCall () #14 0x1ad6010d in ?? () #15 0x0059d6c5 in VM_CallCompiled (vm=0x1e47e90, args=0x22b1e4) at code/qcommon/vm_x86.c:1192 #16 0x0049222a in VM_Call (vm=0x1e47e90, callnum=0) at code/qcommon/vm.c:771 #17 0x00401c67 in CL_InitCGame () at code/client/cl_cgame.c:748 #18 0x00420396 in CL_DownloadsComplete () at code/client/cl_main.c:1881 #19 0x004205ec in CL_InitDownloads () at code/client/cl_main.c:2045 #20 0x004244e5 in CL_ParseGamestate (msg=0x22f838) at code/client/cl_parse.c:532 #21 0x004250ac in CL_ParseServerMessage (msg=0x22f838) at code/client/cl_parse.c:894 #22 0x00422358 in CL_PacketEvent (from= {type = NA_LOOPBACK, ip = \000\000\000, ip6 = '\0' repeats 15 times, port = 0, scope_id = 0}, msg=0x22f838) at code/client/cl_main.c:2485 #23 0x00443692 in Com_EventLoop () at code/qcommon/common.c:2208 #24 0x00443984 in Com_Frame () at code/qcommon/common.c:2935 #25 0x0054f00b in SDL_main (argc=4, argv=0x27015d8) at code/sys/sys_main.c:571 #26 0x005c80ab in console_main (argc=4, argv=0x27015d8) at ./src/main/win32/SDL_win32_main.c:217 #27 0x005c8289 in WinMain (hInst=0x40, hPrev=0x0, szCmdLine=0x2e2552 +set fs_basepath d:/games/UrbanTerror, sw=10) at ./src/main/win32/SDL_win32_main.c:353 #28 0x005c7cc1 in main () (gdb) (they seem to be out of ideas in their irc.) Related source file in bt: http://svn.icculus.org/quake3/trunk/code/renderer/tr_curve.c?view=log Related project: http://ioquake3.org gcc is latest svn build by gcc 4.3.3, platform is mingw current/stable on vista current sp1. any hint is appreciated. similar behavior of instability on SSE optimizations occurs also in v 4.3.3, not in 3.4 options are typical -O3 -march=core2 or -O3 -msse,2,3, -g or not. -- Summary: ioquake3 SIGSEGVs when compiled with SSE optimizations Product: gcc Version: 4.4.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: c AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: arxeio at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39369
[Bug pch/31634] *_SECTION_ASM_OP storage has undocumented constraints
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-04 21:56:38 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31634
[Bug tree-optimization/39367] [4.4 Regression] ICE at tree-inline.c:1042 with -O
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-03-04 22:08 --- Reduced testcase: class QScriptEnginePrivate; class QScriptClassInfo; namespace QScript { enum Type { InvalidType }; }; class QScriptValueImpl { public: inline QScriptValueImpl(); QScript::Type m_type; }; namespace QScript { namespace Ecma { class Core { public: inline QScriptEnginePrivate *engine() const { } inline QScriptClassInfo *classInfo() const { } QScriptValueImpl publicPrototype; }; class Boolean: public Core { void newBoolean(QScriptValueImpl *result, bool value = false); }; } template typename T class Buffer { public: inline void reserve(int num); inline void resize(int s); T *m_data; int m_capacity; int m_size; }; } template typename T void QScript::BufferT::resize(int s) { if (m_capacity s) reserve (s 1); } template typename T void QScript::BufferT::reserve(int x) { T *new_data = new T[m_capacity]; for (int i=0; im_size; ++i) new_data[i] = m_data[i]; } class QScriptObject { public: inline void reset(); QScript::BufferQScriptValueImpl m_values; }; class QScriptEnginePrivate { public: inline QScriptObject *allocObject(); inline void newObject(QScriptValueImpl *o, const QScriptValueImpl proto, QScriptClassInfo *oc = 0); }; inline void QScriptEnginePrivate::newObject(QScriptValueImpl *o, const QScriptValueImpl proto, QScriptClassInfo *oc) { QScriptObject *od = allocObject(); od-reset(); } inline QScriptValueImpl::QScriptValueImpl() : m_type(QScript::InvalidType) { } inline void QScriptObject::reset() { m_values.resize(0); } namespace QScript { namespace Ecma { void Boolean::newBoolean(QScriptValueImpl *result, bool value) { engine()-newObject(result, publicPrototype, classInfo()); } } } -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |NEW Ever Confirmed|0 |1 Last reconfirmed|-00-00 00:00:00 |2009-03-04 22:08:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug target/39232] apparent bizarre miscompilation on AVR
--- Comment #4 from regehr at cs dot utah dot edu 2009-03-04 22:22 --- We narrowed this down to a nasty Avrora bug. In the future we'll try to reproduce in AVR Studio before reporting. -- regehr at cs dot utah dot edu changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||WORKSFORME http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39232
[Bug rtl-optimization/35044] resource.c:find_dead_or_set_registers doesn't grok COND_EXEC
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-04 22:25:34 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35044
[Bug rtl-optimization/38449] delay branch scheduling follows REG_CROSSING_JUMP jumps indiscriminately
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Keywords||patch Last reconfirmed|2008-12-08 20:06:02 |2009-03-04 22:38:47 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38449
[Bug tree-optimization/38785] huge performance regression on EEMBC bitmnp01
-- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|NEW |ASSIGNED Keywords||patch Last reconfirmed|2009-01-09 17:59:31 |2009-03-04 22:58:24 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38785
[Bug tree-optimization/39362] [4.4 Regression] ICE failing to coalesce ab SSA names
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-03-04 23:00 --- Subject: Bug 39362 Author: rguenth Date: Wed Mar 4 23:00:25 2009 New Revision: 144626 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=144626 Log: 2009-03-04 Richard Guenther rguent...@suse.de PR tree-optimization/39362 * tree-ssa-sccvn.c (visit_use): Stores and copies from SSA_NAMEs that occur in abnormal PHIs should be varying. * g++.dg/torture/pr39362.C: New testcase. Added: trunk/gcc/testsuite/g++.dg/torture/pr39362.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-sccvn.c -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39362
[Bug tree-optimization/39362] [4.4 Regression] ICE failing to coalesce ab SSA names
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-03-04 23:01 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39362
[Bug rtl-optimization/39235] get_simple_loop_desc returns uninitialized memory
--- Comment #2 from amylaar at gcc dot gnu dot org 2009-03-04 23:28 --- amyl...@gcc14:~/pr39235$ svn ci gcc/gcc Sendinggcc/gcc/ChangeLog Sendinggcc/gcc/loop-iv.c Transmitting file data .. Committed revision 144628. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39235
[Bug c++/39370] New: Template Name lookup linker problem
Create a header file, test.h, for template class with constructor and single no args function return void. Create an implementation file, test.cpp, with constructor and implementation for the class constructor and no args function. Create an application, main.cpp, which create the template class and call no args function. Problem linker error on main, unable to find constructor and no args function. This problem only occur with multiple source file. If all the code is place in one file, main.cpp, that is, I cut and paste test.h, test.cpp in main.cpp and the program then compiles and builds. -- Summary: Template Name lookup linker problem Product: gcc Version: 4.2.1 Status: UNCONFIRMED Severity: major Priority: P3 Component: c++ AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sheldon dot robinson at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39370
[Bug c++/39370] Template Name lookup linker problem
--- Comment #1 from sheldon dot robinson at gmail dot com 2009-03-04 23:39 --- Created an attachment (id=17396) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17396action=view) Test showing problem when using template in multiple files This was compile using g++ -v --save-temps -I. test.cpp main.cpp -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39370
[Bug c++/39370] Template Name lookup linker problem
--- Comment #2 from sheldon dot robinson at gmail dot com 2009-03-04 23:42 --- Created an attachment (id=17397) -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17397action=view) success with all code is in one file This file show that I'm able to successfully build when all code is in one file which suggest there is a problem with name-lookup on linking -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39370
[Bug c++/39370] Template Name lookup linker problem
--- Comment #3 from pinskia at gcc dot gnu dot org 2009-03-04 23:52 --- This is how C++ works. You need to instiaintate the templates. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||INVALID http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39370
[Bug tree-optimization/39305] tree-ssa-loop-ch.c:copy_loop_headers performs loop unrolling
--- Comment #1 from amylaar at gcc dot gnu dot org 2009-03-05 00:00 --- http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00256.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-05 00:00:01 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39305
[Bug tree-optimization/39367] [4.4 Regression] ICE at tree-inline.c:1042 with -O
--- Comment #4 from hjl dot tools at gmail dot com 2009-03-05 00:12 --- This is caused by revision 144529. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39367
[Bug pch/31634] *_SECTION_ASM_OP storage has undocumented constraints
--- Comment #3 from amylaar at gcc dot gnu dot org 2009-03-05 00:27 --- The patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00243.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=31634
[Bug rtl-optimization/35044] resource.c:find_dead_or_set_registers doesn't grok COND_EXEC
--- Comment #2 from amylaar at gcc dot gnu dot org 2009-03-05 00:29 --- The patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00248.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35044
[Bug rtl-optimization/38449] delay branch scheduling follows REG_CROSSING_JUMP jumps indiscriminately
--- Comment #3 from amylaar at gcc dot gnu dot org 2009-03-05 00:30 --- The patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00249.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38449
[Bug tree-optimization/38785] huge performance regression on EEMBC bitmnp01
--- Comment #14 from amylaar at gcc dot gnu dot org 2009-03-05 00:32 --- My combined patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00250.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38785
[Bug tree-optimization/39141] overzealous unrolling (peeling) destroys code locality
--- Comment #2 from amylaar at gcc dot gnu dot org 2009-03-05 00:33 --- The patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00231.html -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39141
[Bug c++/13549] [4.2/4.3/4.4 regression] Problem compiling Boost.Python test
--- Comment #17 from jason at gcc dot gnu dot org 2009-03-05 00:44 --- That is, even though gT(j) does not have any dependent arguments, the call is dependent, so it should get arg-dependent lookup, which should find g(h) because it's in the associated namespace of j. -- jason at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jason at gcc dot gnu dot org |dot org | Status|NEW |ASSIGNED Last reconfirmed|2009-03-03 20:02:52 |2009-03-05 00:44:57 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13549
[Bug other/39347] Vector mode class for CCmode is missing
--- Comment #5 from amylaar at gcc dot gnu dot org 2009-03-05 00:54 --- patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00259.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-05 00:54:43 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39347
[Bug other/39348] Vector mode class for MODE_PARTIAL_INT is missing
--- Comment #3 from amylaar at gcc dot gnu dot org 2009-03-05 00:56 --- patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00260.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-05 00:56:10 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39348
[Bug rtl-optimization/39349] cse_insn has out-of-bounds array access
--- Comment #4 from amylaar at gcc dot gnu dot org 2009-03-05 01:27 --- http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00262.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | Status|UNCONFIRMED |RESOLVED Resolution||FIXED http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39349
[Bug rtl-optimization/39350] MOVE_BY_PIECES_P is used by rtl optimizers
--- Comment #1 from amylaar at gcc dot gnu dot org 2009-03-05 01:42 --- patch is here: http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00264.html -- amylaar at gcc dot gnu dot org changed: What|Removed |Added BugsThisDependsOn|39302 | OtherBugsDependingO||39363 nThis|| AssignedTo|unassigned at gcc dot gnu |amylaar at gcc dot gnu dot |dot org |org Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Keywords||patch Last reconfirmed|-00-00 00:00:00 |2009-03-05 01:42:04 date|| http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39350
[Bug rtl-optimization/39351] compute_init_costs uses unemitted insns
--- Comment #3 from amylaar at gcc dot gnu dot org 2009-03-05 01:55 --- I have a patch to fix PR39351, but for PR36240 it only changes the SEGV for foo.i into an unrecognized insn ICE. -- amylaar at gcc dot gnu dot org changed: What|Removed |Added Status|RESOLVED|UNCONFIRMED Resolution|DUPLICATE | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39351
[Bug target/39361] [4.4 Regression] Many new neon test failures
--- Comment #2 from hubicka at gcc dot gnu dot org 2009-03-05 02:04 --- I specifically kept the code propagating TREE_READONLY arguments so const arguments will get constant propagated at -O0. But I see the propagation is disabled for SSA registers. I am testing patch for this... I guess we need only constant propagation and not copy propagation, right? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39361
[Bug middle-end/39360] [4.4 Regression] ICE in referenced_var_lookup, at tree-dfa.c:563
--- Comment #6 from hubicka at gcc dot gnu dot org 2009-03-05 02:09 --- This is curious, since we should see the initializer when adding variable at first time. I am looking into this. Honza -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39360