[Bug target/44139] Exporting emutls symbols from a DLL broken on w32 targets

2010-05-18 Thread dannysmith at users dot sourceforge dot net


--- Comment #17 from dannysmith at users dot sourceforge dot net  
2010-05-18 22:43 ---
(In reply to comment #14)
 Index: gcc/gcc/varasm.c
 ===
 --- gcc.orig/gcc/varasm.c   2010-05-18 13:19:20.0 +0200
 +++ gcc/gcc/varasm.c2010-05-18 17:10:11.385445300 +0200
 @@ -403,6 +403,8 @@ emutls_decl (tree decl)
 int foo() { return i; }
 __thread int i = 1;
   in which I goes from external to locally defined and initialized.  */
 +  DECL_DLLIMPORT_P (to) = DECL_DLLIMPORT_P (decl);
 +  DECL_ATTRIBUTES (to) = targetm.merge_decl_attributes (decl, to);
 
TREE_STATIC (to) = TREE_STATIC (decl);
TREE_USED (to) = TREE_USED (decl);
 

I like this approach better too.  It would be even cleaner (here and elswhere)
if we had a decl_with_vis.dllexport_flag and DECL_DLLEXPORT_P.  14 spare bits
left in decl_with_vis.  Are they too precious??
Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44139



[Bug libfortran/43844] open(unit, status=scratch) fails to create tempporary file

2010-04-29 Thread dannysmith at users dot sourceforge dot net


--- Comment #15 from dannysmith at users dot sourceforge dot net  
2010-04-30 03:02 ---
(In reply to comment #13)
 Kai, what about the GetTempPath? Cf. the rough draft in attachment 20460 
 [edit] ?

Compare choose_tmpdir() in libiberty/make_temp_file.c

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43844



[Bug debug/33155] _stdcall assembler names in win32 vs gdb

2010-04-26 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2010-04-26 
08:19 ---
This is fixed in 4.5.0  release.

http://gcc.gnu.org/viewcvs?view=revisionrevision=148199 

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

  Known to work|4.2.1   |4.2.1 4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33155



[Bug libstdc++/43738] basic_file_stdio.cc uses ioctl on a fd, but not available on mingw32

2010-04-15 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2010-04-15 
07:54 ---
(In reply to comment #1)
 FIONREAD is defined by winsock header
 

How come your build of basic_file_stdio includes  winsock api headers? 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43738



[Bug c++/43601] Enormous increase in DLL object files size in 4.5

2010-04-04 Thread dannysmith at users dot sourceforge dot net


--- Comment #13 from dannysmith at users dot sourceforge dot net  
2010-04-04 08:20 ---
(In reply to comment #11)
 (In reply to comment #10)
  And while the compilation time change alone
  
  How did you configure 4.5?  Did you use --enable-checking=release ?  If not
  then the compile time numbers are not comparable at all.

snip 
 gcc version 4.5.0 20100311 (experimental) (GCC)
 

This will cause defau;t checks for experimental DEV-PHASE to be enabled.
Danny 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43601



[Bug target/42213] GCC chkstk clash with Microsoft version

2009-11-29 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2009-11-29 
17:36 ---
see
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39356#c9

and discussion of
http://gcc.gnu.org/ml/gcc-patches/2009-03/msg00914.html

I think that patch should go into 4.5

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=42213



[Bug target/41512] dllexport broken on cygwin

2009-10-06 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|NEW |ASSIGNED
  Component|c++ |target
   Last reconfirmed|2009-10-03 21:49:33 |2009-10-07 02:41:49
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41512



[Bug target/41512] dllexport broken on cygwin

2009-10-06 Thread dannysmith at users dot sourceforge dot net


--- Comment #9 from dannysmith at users dot sourceforge dot net  2009-10-07 
03:06 ---
Fixed at revision 152511.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41512



[Bug c++/41512] dllexport broken on cygwin

2009-10-03 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2009-10-03 
21:47 ---
(In reply to comment #0)
 These new FAILs have been appearing on trunk since some time between 20090820
 and 20090903:
 
 FAIL: g++.dg/ext/dllexport-MI1.C scan-assembler -export:_ZNK2D12vfEv
 FAIL: g++.dg/ext/dllexport-MI1.C scan-assembler -export:_ZNK2D22vfEv
 FAIL: g++.dg/ext/dllexport-MI1.C scan-assembler -export:_ZNK3MI12vfEv
 FAIL: g++.dg/ext/dllexport-MI1.C scan-assembler -export:_ZTV2D1,data
 FAIL: g++.dg/ext/dllexport-MI1.C scan-assembler -export:_ZN2D2C2ERKS_
 FAIL: g++.dg/ext/dllexport1.C scan-assembler  -export:_ZN3Bar10inline_barEi
 
 (Refs: http://gcc.gnu.org/ml/gcc-testresults/2009-08/msg02276.html
http://gcc.gnu.org/ml/gcc-testresults/2009-09/msg00356.html )
 
 They seem to represent serious breakage of dllexport with cygwin as the latest
 testrun with my libstdc-as-dll patch is showing even more fails on top of
 these, but didn't fail before they appeared, and a quick investigation shows
 that the executables generated during the testsuite fail to import anything
 from the libstdc DLL!
 
 This could be either a target or a C++ problem since they both co-operate to
 manage the dllexport attribute.  I couldn't find any changes in that area of
 the backend in the relevant date range, so I've marked it C++ for now.  I'll
 attach preprocessed source for the testcase shortly.
 

The problem appears to be that DECL_CONTEXT is no longer set for class members 
with link-once semantixcs (inline  methods, vtables).

Is that intended?  It breaks dllexport of these symbols when they inherit the
attribute of their of their containing type.

The breakage can be fixed in target backend i386/winnt-cxx.c 
i386_pe_adjust_class_at_definition, by propagating the dllexport attribute
there, rather than relying on DECL_CONTEXT later.

I am testing that patch now.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41512



[Bug c++/41512] dllexport broken on cygwin

2009-10-03 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-10-03 21:49:33
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41512



[Bug middle-end/41254] [4.5 Regression] crashed compile Qt4 gui library

2009-09-06 Thread dannysmith at users dot sourceforge dot net


--- Comment #30 from dannysmith at users dot sourceforge dot net  
2009-09-07 04:01 ---
(In reply to comment #24)
 Subject: Re:  [4.5 Regression] crashed compile Qt4 gui
  library
 
 On Sun, 6 Sep 2009, t7 at gmail dot com wrote:
 
  
  
  --- Comment #22 from t7 at gmail dot com  2009-09-06 22:20 ---
  (In reply to comment #16)
   Try building without the patch but with unlimited stack (ulimit -s 
   unlimited)
   and see if the same error appears.
   
  
  You mean cross compile the native compiler from linux by setting the shell
  with command ulimit -s unlimited ?
  Or you want me to build the cross compiler and native compiler then try and
  build qt4?
 
 Just the same way as you reported the bug (I understand that this
 was a native compiler issue?).  There surely must be a way to increase
 the maximum stack size with windows?


To increase the stack size on windows, add -Wl,--stack=0x2000 (for eg 32 Mb
 stack).  This hard codes the exe's stack size into the program header.
 
 Richard.
 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41254



[Bug c++/40333] g++ does not align static variables properly

2009-08-24 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2009-08-24 
06:15 ---
(In reply to comment #2)
 (In reply to comment #0)
  The following SSE2 code crashes because the non-static global variable 
  breaks
  the alignment of the static data section.
 
 Is this fixed if you use 4.5.0?
 
This is fixed with 4.5.0 and a recent binutils (Nick Clifton's patch to GAS was
commuitted on 2008-09-03)
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40333



[Bug c++/40918] uncaught_exception() returns wrong (inverted) value if some exception have crossed a DLL boundary before

2009-08-04 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-08-05 
04:55 ---
(In reply to comment #6)
 (In reply to comment #5)
 
  Applying Dave Korn's patch mentioned in Comment #2, and linking against
  libstdc++.dll, I get this with your original testcaase:
  
  Expecting 'true', got 'true'
  Expecting 'false', got 'false'
  
 Where this patch is supposed to be applied to? trunk?

Yes, it against trunk.

 I have looked through the patches you are referring to and through the source
 in repository. As far as I can see, libsupc++ is still static only, and
 eh_globals.cc is a part of libsupc++, not libstdc++.

libsupc++ is a convenience lib that is included in libstdc++


 The fact that test-case
 works correctly for you could be just a coincidence. The more reliable way to
 check for the problem would be to compare the value returned by the
 __cxa_get_globals() when being from the main executable and from the dll
 respectively. I'll prepare the new test case.

The new test case succeeds when I link against a shared libstdc++.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40918



[Bug c++/40918] uncaught_exception() returns wrong (inverted) value if some exception have crossed a DLL boundary before

2009-08-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2009-08-02 
08:57 ---
(In reply to comment #3)
 I'm linking using g++ driver, so shared libgcc is enabled by default in 4.4.0.


 I've just tried to enabled shared libstdc++ as described in the Release Notes
 to the MinGW GCC 4.4.0 release, which made no difference.
 
 More over, I modified the test case the following way: I got rid of std::cout
 in favor of printf(), added -nodefaultlibs option to the linker and specified
 all the required libraries manually. Now libstdc++ is not linked at all
 (neither static nor dynamic), the bug is still here.
 

I cannot comment on the build of libsdc++.dll in the mingw 4.4.0 release since
I have not looked at that source. 

However, your revised testcase -- linking against a static libsupc++ -- would
be expected to fail.  We can have only one instance of the eh_globals structure
defined in libsupc++/eh_globals.cc. This is accomplished by linking both the
.exe  and the .dll against a shared libstdc++.

Applying Dave Korn's patch mentioned in Comment #2, and linking against
libstdc++.dll, I get this with your original testcaase:

Expecting 'true', got 'true'
Expecting 'false', got 'false'


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40918



[Bug target/40905] GCC creates invalid executable with auto-imported DLL and __attribute__((cold))

2009-07-30 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2009-07-30 
08:00 ---
(In reply to comment #2)

 
 Is it possible that it triggers the exception trying to write in text.unlikely
 which is READONLY?
 

Exactly.  This is a linker, not a compiler issue.  If you are using a
relatively recent binutils and mingw run time, the addition of the switch
-Wl,--enable-runtime-pseudo-reloc-v2 should get around the READONLY problem.
Otherwise, you could always just add __declspec (dllimport) to
 extern int foo[2]; and so retain portability with the rest of the PE-COFF
world.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40905



[Bug c++/40918] uncaught_exception() returns wrong (inverted) value if some exception have crossed a DLL boundary before

2009-07-30 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-07-31 
04:18 ---
(In reply to comment #0)
 I was not able to reproduce the bug on Linux, so I assume this is a
 Windows-specific.
 
 If an exception is generated inside shared library (DLL), then crosses the
 DLL-boundary and gets caught in some other module, the std::uncaught_exception
 will always return wrong (inverted) value from now on. Here's a small test
 case.
 

You need to link against a shared libgcc and a shared libstdc++ for this to
work.  Shared libgcc is part of standard build now for mingw  Shared libstdc++
is close.

http://gcc.gnu.org/ml/gcc-patches/2009-07/msg01042.html

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40918



[Bug target/40722] New: ia32intrin.h defines of _rotl, _rotr conflict with target stdlib.h decls.h

2009-07-11 Thread dannysmith at users dot sourceforge dot net
These defines in ia32intrin.h 

#define _lrotl(a,b) __rold((a), (b))
#define _lrotr(a,b) __rord((a), (b))
...
#define _rotl(a,b)  __rold((a), (b))
#define _rotr(a,b)  __rord((a), (b))


conflict with mingw32 stdlib.h which
declares those names as functions

_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _rotl(unsigned int, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned int __cdecl __MINGW_NOTHROW _rotr(unsigned int, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW _lrotl(unsigned long, int)
__MINGW_ATTRIB_CONST;
_CRTIMP unsigned long __cdecl __MINGW_NOTHROW _lrotr(unsigned long, int)
__MINGW_ATTRIB_CONST;


This is caught by  g++.dg/other/i386-[23456].C


-- 
   Summary: ia32intrin.h defines of _rotl, _rotr conflict with
target stdlib.h  decls.h
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dannysmith at users dot sourceforge dot net
 GCC build triplet: i686-pc-mingw32
  GCC host triplet: i686-pc-mingw32
GCC target triplet: i686-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40722



[Bug libstdc++/40278] -std=c++0x is error, but -std=gnu++0x is OK!

2009-05-28 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2009-05-28 
08:26 ---
(In reply to comment #4)
 Because __STRICT_ANSI__ means strict to the standard so -std=c++0x enables
 __STRICT_ANSI__.  But the mingw headers don't know about C++0x standard so it
 does not know those functions should be enabled.
 

mingw does not yet provide ANSI (c99) compliant swprintf or vswprintf
implementations. The functions it does provide, _swprintf and _vswprintf, are
pre-c99 MSVCRT implementations.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40278



[Bug target/40068] GCC fails to apply dllexport attribute to typeinfo.

2009-05-13 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2009-05-13 
08:12 ---
(In reply to comment #5)

   Also, I don't think this is necessarily an either-or situation; we could add
 my patch and have the typeinfo exported from the DLL, and also add yours so
 that clients could link a comdat copy (which would override the import stub)
 until we have a better solution for importing from the DLL.

Yes.  I was just thinking out loud.  I have no objection to your patch. 
Perhaps MULTIPLE_SYMBOL_SPACES should be defined in terms of an
-mmultiple-symbol-spaces target option , since if we depend on auto-import than
we should treat dll imports thae same as static lib imports.

 Also, how come emitting the typeinfo .linkonce as we currently do isn't the
 same as COMDAT for these purposes?
 
I'm not sure I understand your question.  In earlier versions of G++,  both
vtables and typeinfo were  always emitted with linkonce semantics, because of
the MULTIPLE_SYMBOL_SPACES define.  

Regards
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40068



[Bug target/40068] GCC fails to apply dllexport attribute to typeinfo.

2009-05-09 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2009-05-10 
05:01 ---
(In reply to comment #3)
 Created an attachment (id=17841)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17841action=view) [edit]
 inherit dllexport from class to typeinfo
 
 Now testing a solution based on the approach of adding the dllexport attribute
 to the class' typeinfo object when the class is passed to
 i386_pe_adjust_class_at_definition.
 
Hello Dave,
Rather than use DLL linkage (and so force client to resort to auto-import
magic)
why not just always emit the RTTI with one-only comdat linkage.

* decl2.c (import_export_decl): Always emit RTTI with comdat linkage
rather than import if MULTIPLE_SYMBOL_SPACES.

Index: decl2.c
===
--- decl2.c (revision 147015)
+++ decl2.c (working copy)
@@ -2351,15 +2351,21 @@
{
  class_type = type;
  import_export_class (type);
- if (CLASSTYPE_INTERFACE_KNOWN (type)
-  TYPE_POLYMORPHIC_P (type)
-  CLASSTYPE_INTERFACE_ONLY (type)
- /* If -fno-rtti was specified, then we cannot be sure
-that RTTI information will be emitted with the
-virtual table of the class, so we must emit it
-wherever it is used.  */
-  flag_rtti)
-   import_p = true;
+  /* Do not import typeinfo if the class might be in a DLL.
+Dllimports do not have a constant address at compile time,
+causing problems for static initialization of tables with RTTI
+fields.  Set to comdat instead.   */
+ if (MULTIPLE_SYMBOL_SPACES)
+   comdat_p = true;
+ else if (CLASSTYPE_INTERFACE_KNOWN (type)
+   TYPE_POLYMORPHIC_P (type)
+   CLASSTYPE_INTERFACE_ONLY (type)
+  /* If -fno-rtti was specified, then we cannot be sure
+ that RTTI information will be emitted with the
+ virtual table of the class, so we must emit it
+ wherever it is used.  */
+   flag_rtti)
+import_p = true;
  else
{
  if (CLASSTYPE_INTERFACE_KNOWN (type)


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-05-10 05:01:24
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40068



[Bug libgomp/39939] MinGW 4.3.0 fails to link sample programme.

2009-05-01 Thread dannysmith at users dot sourceforge dot net


--- Comment #12 from dannysmith at users dot sourceforge dot net  
2009-05-01 19:48 ---
(In reply to comment #11)
 (In reply to comment #9, comment #10)
 I did not build MinGW 4.3.0. I got it from the official MinGW site
 (gcc-4.3.0-20080502-mingw32-alpha). I have also found that on www.equation.com
 there are even newer versions (binaries), like 4.3.3 with OpenMP 2.5, 4.4.0
 with OpenMP 3.0 and MinGW 4.5 compilation snapshot. They seem to work fine 
 with
 OpenMP. 

Its a shame that www.equation.com doesn't tell us how to obtain their source
code for the gcc, gdb ands make binaries.


 They aren't present on the official MinGW site. Why?

No one has had put them there.
Danny
 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39939



[Bug target/39939] MinGW 4.3.0 fails to link sample programme.

2009-04-30 Thread dannysmith at users dot sourceforge dot net


--- Comment #9 from dannysmith at users dot sourceforge dot net  2009-04-30 
20:57 ---
(In reply to comment #6)
 (In reply to comment #4)
  Your libpthreads is doing something wrong.
  Re. comment 5
 The command was actually
 gcc -fopemnp test.c -lgomp -o test.exe
 

That command works for me with gcc 4.3.4, 4.4.0 and trunk
In 4.4.0 and trunk, test.exe links against LIBGOMP-1.DLL which in turn resolves
the pthread imports from PTHREADGCE2.DLL, which is distributed by the
pthreads-win32 project
http://sources.redhat.com/pthreads-win32/

My version of 4.3.4 has local mods.  I'm not sure if the shared libgomp build
was standard then.

How did you build gcc-4.3.0?  You need to add  --enable-libgomp to configure
and ensure that libpthread.a (note spelling) can be found.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39939



[Bug target/39939] MinGW 4.3.0 fails to link sample programme.

2009-04-30 Thread dannysmith at users dot sourceforge dot net


--- Comment #10 from dannysmith at users dot sourceforge dot net  
2009-04-30 21:07 ---
(In reply to comment #9)
 (In reply to comment #6)
  (In reply to comment #4)
   Your libpthreads is doing something wrong.
   Re. comment 5
  The command was actually
  gcc -fopemnp test.c -lgomp -o test.exe
  
 
 That command works for me with gcc 4.3.4, 4.4.0 and trunk
 In 4.4.0 and trunk, test.exe links against LIBGOMP-1.DLL which in turn 
 resolves
 the pthread imports from PTHREADGCE2.DLL, which is distributed by the
 pthreads-win32 project
 http://sources.redhat.com/pthreads-win32/
 
 My version of 4.3.4 has local mods.  I'm not sure if the shared libgomp build
 was standard then.


No it wasn't. And so the problem is that libgomp.spec says:
# This spec file is read by gcc when linking.  It is used to specify the
# standard libraries we need in order to link with -fopenmp.
*link_gomp: -lgomp %{static: -lpthread }

You have not specified '-static', so you must provide the '-lpthread' (again
note spelling) yourself.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39939



[Bug libgomp/39939] MinGW 4.3.0 fails to link sample programme.

2009-04-30 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

  Component|target  |libgomp
   Target Milestone|--- |4.3.5


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39939



[Bug target/39947] Shared libgcc getting clobbered for multilib builds

2009-04-29 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-04-29 
07:29 ---
The same problem will occur for all dll's (libstdc++-x,dll, libgfortran-x.dll,
libssp-x.dll, etc) that are built as part of gcc 

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39947



[Bug target/37216] [cygming] Invalid alignment for SSE store to .comm data generated with -O3

2009-04-15 Thread dannysmith at users dot sourceforge dot net


--- Comment #53 from dannysmith at users dot sourceforge dot net  
2009-04-16 02:59 ---
This thread is alos relevant.
http://gcc.gnu.org/ml/gcc/2009-04/msg00462.html
Adding Dave Korn to cc:


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dave dot korn dot cygwin at
   ||gmail dot com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216



[Bug bootstrap/39660] Mingw Bootstrap stops with ..host-mingw32.c:140: error: ISO C90 forbids mixed..

2009-04-08 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-04-08 
08:12 ---
Fixed.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39660



[Bug bootstrap/39660] Mingw Bootstrap stops with ..host-mingw32.c:140: error: ISO C90 forbids mixed..

2009-04-06 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-07 03:39:21
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39660



[Bug target/39530] [4.3/4.4/4.5 regression] runtime_error text not shown

2009-04-01 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-04-02 
04:20 ---
(In reply to comment #5)
 (In reply to comment #3)
  terminate called after throwing an instance of 'std::runtime_error'
what():  ouch
 
 Yes, this is the part that's missing for me.
 
With gcc-4.4.0, built from FSF sources, I get 
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
terminate called after throwing an instance of 'std::runtime_error'
  what():  ouch

With gcc-4.3.3, built from FSF sources, I get
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
terminate called after throwing an instance of 'std::runtime_error'
  what():  ouch

I have not tested 4.3.3-dw2-tdm-1  which you report as  the faulty build.
Contrary to Kai Tietz assumption, it has nothing to do with  mingw.org.
Neither does it have anything to do with FSF gcc.  Please report your bug to
tdm


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39530



[Bug target/36654] [4.2 Regression] Inlined con/de-structor breaks virtual inheritance dllimport classes

2009-03-28 Thread dannysmith at users dot sourceforge dot net


--- Comment #13 from dannysmith at users dot sourceforge dot net  
2009-03-28 07:24 ---
(In reply to comment #12)
 Both the dg-error clauses now fail; previously (4.3.2), only the second one
 failed.  Reverting the patch causes the first dg-error (line 21) to pass again
 by restoring the error message
 
 /gnu/gcc/release/gcc4-4.3.3-1/src/gcc-4.3.3/gcc/testsuite/g++.dg/ext/dllimport7.
 C:21: error: definition of static data member 'Bar::three' of dllimport'd 
 class
 
 I'm not sure why that should be a problem in the first place, so I don't know
 if the underlying issue is now fixed and not an error any more.  Anybody?
 

IMO, the hard error should occur.
The native MS compiler emits a similar error message.
Allowing a static data member to be defined in more than one place is a bad
thing.  It most be defined in the dll if the class is defined there and, in the
situation the testcase is testing will be defined again in the exe or dll that
uses the dll.   


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654



[Bug target/36834] structure return ABI for windows targets differs from native MSVC

2009-03-23 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2009-03-23 22:10 ---
(In reply to comment #10)
 Note that C++ objects need not be larger than 8 bytes to qualify for returning
 on the stack (and thus subject to this cleanup problem). Any class with a copy
 constructor, for example, seems to be affected.

Thanks.  I understand your concern now.  
Do you think that a function  __attibute__((ms-aggregate-return)) would be 
useful to specify individual problematic functions.
I expect that this would be equivalent to 
(__attribute__((target(ms-aggregate-return))) which should work now, but I
haven't tested,  Will do so soon.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36834



[Bug target/36834] structure return ABI for windows targets differs from native MSVC

2009-03-20 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-03-21 
01:03 ---
(In reply to comment #7)
 The proposed patch works for plain C code, but also affects C++. Since
 libstdc++ contains code that returns aggregates or calls code that does,

An example, please.  The patch only affects functions that return large ( 8
bytes) aggregates by value.

Danny

 -mms-aggregate-return will make the generated code incompatible with the C++
 library. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36834



[Bug driver/39356] assembler isn't called

2009-03-15 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-03-16 
02:13 ---
(In reply to comment #7)
 The following patch solves this problem and prevents the name collision for 32
 and 64 bits win32 systems.
 
 ChangeLog
 
 * config/i386/i386.md (allocate_stack_worker_32): Use
 ___gnu_chkstk.
 (allocate_stack_worker_64): Likewise.
 * config/i386/cygwin.asm (__alloca): Renamed to __gnu_alloca.
 (___chkstk): Renamed to ___gnu_chkstk.
 
No. This breaks backward compatibility.  Static libraries and objects built
with current and older versions of gcc will not be able to resolve references
to __alloca or ___chkstk.Why not add labels with the new names as aliases
rather than replace.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39356



[Bug driver/39424] MinGW doesn't seem to work if main disk is not C:\

2009-03-10 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2009-03-11 
02:41 ---
This is fixed in  4.3.x by

2006-11-20  Carlos O'Donell  car...@codesourcery.com
Mark Mitchell  m...@codesourcery.com

* cppdefault.c: Define cpp_PREFIX, cpp_PREFIX_len, and
gcc_exec_prefix.
(cpp_relocated): New function.
* cppdefault.h: Declare cpp_PREFIX, cpp_PREFIX_len, gcc_exec_prefix
and cpp_relocated.
* Makefile.in (PREPROCESSOR_DEFINES): Add -DPREFIX option.
* c-incpath.c (add_standard_paths): Call cpp_relocated. If relocated,
replace configured prefix with gcc_exec_prefix.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 GCC target triplet||4.3.3
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39424



[Bug target/37121] g++ create global symbol for inline function, which make link failed with multiple defination

2009-03-09 Thread dannysmith at users dot sourceforge dot net


--- Comment #13 from dannysmith at users dot sourceforge dot net  
2009-03-09 07:46 ---
(In reply to comment #12)
 Was this broken in 4.3 compilers?  Is it a 4.4 regression?
 
This is not a new bug in the compiler (the same multiple definition will occur
with 3.4.5)  , but an old 'feature' of the the PE-COFF linker

_InterlockedIncrement is defined as an ordinary  C library function  in
lib64_libmingwex_a-wininterlocked.o

In thread.cpp, it is defined and emitted using linkonce semantics (it is put
into its own .text$_InterlockedIncrement link_once sections, which is how
PE-COFF implements vague linkage.

The linker grabs the one and only .text$_InterlockedIncrement section in
thread.o and then while resolving another symbol it needs from
lib64_libmingwex_a-wininterlocked.o finds an ordinary (not .linkonce)
definition InterlockedIncrement

Hence the multiple definition.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37121



[Bug c++/39404] -fpack-struct causes iostream to error, -O3 makes problem worse

2009-03-09 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-03-09 
07:52 ---
From gcc.info:

*Warning:* the `-fpack-struct' switch causes GCC to generate code
 that is not binary compatible with code generated without that
 switch.  Additionally, it makes the code suboptimal.  Use it to
 conform to a non-default application binary interface.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39404



[Bug target/39291] _Unwind_Backtrace fails.

2009-02-27 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2009-02-28 
02:38 ---
Created an attachment (id=17376)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17376action=view)
testcase executable built on mingw32 

testcase executable built on mingw32 attached


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39291



[Bug target/39291] _Unwind_Backtrace fails.

2009-02-24 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-02-25 
02:28 ---
I get this with your testcase on mingw32, DW@ build:
GNU C (GCC) version 4.4.0 20090221 (experimental) (mingw32)

gcc -fexceptions -g  u.c

foo:enter
bar:enter
zoo:enter
boom!
signalHandler:enter
lookupSymbol: 00401407
lookupSymbol: 00401232
signalHandler:longjmp
zoo:exit
bar:exit
foo:exit
alive!


Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39291



[Bug c++/29974] Segmentation fault on simple input file. Omission of #include string prevents error. WinXP x64, cygwin

2009-02-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2009-02-03 
02:02 ---

  /usr/lib/gcc/i686-pc-cygwin/3.4.4/cc1plus.exe -quiet -v -D__CYGWIN32__
 -D__CYGWIN__ -Dunix -
 D__unix__ -D__unix -idirafter
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../include/w32api -i
 dirafter
 /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../../i686-pc-cygwin/lib/../../include/w32ap
 i testFail.h -quiet -dumpbase testFail.h -mtune=pentiumpro -auxbase testFail
 -version -o /cyg
 drive/c/DOCUME~1/JAMESF~1/LOCALS~1/Temp/ccGNtP5T.s --output-pch=testFail.h.gch


PCH support for cywgin  was not available until 4.0 series.  Your testcase
compiles correctly on cygwin with recent (=4.1) gcc. 


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.1.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29974



[Bug bootstrap/37915] bootstrap broken for cygwin

2009-01-28 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2009-01-29 
01:57 ---
(In reply to comment #6)
 This bug is fixed and should be closed now.  A new PR, bug 37660, has been
 created for the separate issue in comment 4.
 
Closing


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37915



[Bug other/38920] dw2 exceptions don't work.

2009-01-25 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2009-01-26 
03:30 ---
AFAICT DW2 unwind has never worked on x86_64-mingw32, which is why Kai made
sjlj the default EH model for that target.
http://gcc.gnu.org/ml/gcc-patches/2007-12/msg00273.html


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

   Severity|normal  |enhancement


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38920



[Bug testsuite/38949] Link failures in new stackalign tests

2009-01-23 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-01-23 
18:53 ---
There is an alternative patch at 
http://gcc.gnu.org/ml/gcc-patches/2008-10/msg00044.html
which i had forgotten about. It has been tested on i686-pc-mingw32 and
i686-pc-linux


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38949



[Bug other/38920] throwing ex. across dlls doesn't work.

2009-01-19 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2009-01-20 
06:07 ---
libstdc++ also needs to be built and linked in as dll.

Search mingw archive lists for other examples and approaches.

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-01-20 06:07:57
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38920



[Bug bootstrap/37660] [4.4 Regression] Error Building libssp, recent update

2009-01-18 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-01-19 
04:22 ---
(In reply to comment #7)
 Created an attachment (id=17132)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17132action=view) [edit]
 Move _ctors* and _chkstk* to import lib
 
 Danny, this is the approach that I think I'd like to take for Cygwin; what do
 you think about doing it this way?  

On mingw we would also need to copy gthr-win32.o and __main.o into implib as
well.
It just seems simpler to follow the logic in init_gcc_spec with the
modification forced by the requirement for no-undefined-symbols when building a
dll.

Note that with your patch, init_gcc_spec will still link in the static libgcc
when building an .exe (ie the !shared case)

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37660



[Bug bootstrap/37660] [4.4 Regression] Error Building libssp, recent update

2009-01-15 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2009-01-16 
07:14 ---
(In reply to comment #4)
   I've just run into this problem too.
   In earlier versions of Aaron's shared libgcc patch, we extracted ctors.o and
 chkstk.o and placed them whole into the import lib.  I'm not sure why he 
 didn't
 do this in the committed version, but it has the effect that you have to link
 against the static libgcc as well as the shared one in order to let it fill 
 out
 any missing references.  I'm not sure I'm entirely comfortable with that,
 although I can't think of any obvious problem, but it seems wrong to link
 against such a duplicated body of code to me, and I think I'd prefer the 
 import
 lib solution for cygwin's compiler. 


If you look at the (static) libgcc.a,  when shared libs are enabled, it
contains only symbols that are not exported from the shared dll. Only the
'API-stable' symbols are exported.  That is a good thing.  So the libgcc.a code
 does not duplicate any code in libgcc_s.[a|dll].


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-01-16 07:14:38
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37660



[Bug bootstrap/37660] [4.4 Regression] Error Building libssp, recent update

2009-01-14 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2009-01-15 
02:39 ---
I believe that this failure reflects the fact that PE_COFF dll's do not allow
undefined symbols. Because of that, the rule to decide shared vs static libgcc 
in  gcc.c init_gcc_spec, namely the case for building a shared lib:
%{shared:, shared_name, }
is not quite right.   It should be (I think)
   %{shared:, shared_name, , static_name }
However, since a shared libgcc is a new thing on cygwin and mingw, it may be
better for this release to actually require an explicit -shared-libgcc to get
the shared lib. That is what mingw32 does, by defining its own
REAL_LIBGCC_SPEC.

Does this patch fix the problem for you?

Index: config/i386/cygwin.h
===
--- config/i386/cygwin.h(revision 143259)
+++ config/i386/cygwin.h(working copy)
@@ -49,9 +49,17 @@
GCC without making a new CYGWIN.DLL, so we leave it.  Profiling is handled
by calling the init function from main.  */

-#undef LIBGCC_SPEC
-#define LIBGCC_SPEC \
-  %{mno-cygwin: %{mthreads:-lmingwthrd} -lmingw32} -lgcc  \
+#
+#ifdef ENABLE_SHARED_LIBGCC
+#define SHARED_LIBGCC_SPEC %{shared-libgcc:-lgcc_s}
%{!shared-libgcc:-lgcc_eh}
+#else
+#define SHARED_LIBGCC_SPEC /*empty*/
+#endif
+#undef REAL_LIBGCC_SPEC
+#define REAL_LIBGCC_SPEC \
+  %{mno-cygwin: %{mthreads:-lmingwthrd} -lmingw32} \
+   SHARED_LIBGCC_SPEC \
+   -lgcc \
%{mno-cygwin:-lmoldname -lmingwex -lmsvcrt}

 /* We have to dynamic link to get to the system DLLs.  All of libc, libm and


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37660



[Bug bootstrap/38580] [4.4 Regression] Bootstrap broken on mingw32

2009-01-12 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-01-13 
07:43 ---
Fixed on trunk.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38580



[Bug c++/34749] Incorrect warning when applying dllimport to friend function

2009-01-11 Thread dannysmith at users dot sourceforge dot net


--- Comment #9 from dannysmith at users dot sourceforge dot net  2009-01-12 
02:07 ---
(In reply to comment #8)
 still unfixed?

Please provide a compilable self-contained testcase. 
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34749



[Bug bootstrap/38580] [4.4 Regression] Bootstrap broken on mingw32

2009-01-08 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2009-01-08 
08:41 ---
Created an attachment (id=17052)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17052action=view)
Replace execvp with pex_one in process_command

Patch uses pex_one as per Ian Taylor suggestion , but the error reporting may
need expansion.
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38580



[Bug target/36654] [4.2/4.3 Regression] Inlined con/de-structor breaks virtual inheritance dllimport classes

2009-01-06 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2009-01-07 07:47 ---
Fixedd on 4.3 branch


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

  Component|c++ |target
  Known to work|3.4.5 4.2.1 |3.4.5 4.2.1 4.3.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654



[Bug target/38662] __fastcall confuses a function's throw() specification

2009-01-05 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2009-01-06 
03:49 ---
Confirmed on SVN head.

This also avoids the bug.
//
class E
{
};

class Test
{
public:

__fastcall bool ernie(bool b) throw(E)
{
}

__fastcall bool bert(bool b);
};

// Make sure definition also has the __attribute fastcall
__fastcall bool Test::bert(bool b)
{
}
//


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-01-06 03:49:31
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38662



[Bug c++/36654] [4.2/4.3 Regression] Inlined con/de-structor breaks virtual inheritance dllimport classes

2009-01-01 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2009-01-02 
04:19 ---
Hello John,
This patch:

Index: gcc/config/i386/winnt-cxx.c
===
--- gcc/config/i386/winnt-cxx.c (revision 142383)
+++ gcc/config/i386/winnt-cxx.c (working copy)
@@ -65,7 +65,7 @@
   ignore the class attribute.  */
   else if (TREE_CODE (decl) == VAR_DECL
TREE_STATIC (decl)  TREE_PUBLIC (decl)
-   !DECL_EXTERNAL (decl))
+   DECL_NOT_REALLY_EXTERN (decl))
 {
   if (!DECL_VIRTUAL_P (decl))
  error (definition of static data member %q+D of 

fixes your testcase and causes no regressions in g++ testsuite.  I have only
tested on narrow range of dll builds, to check that the patch does not break
anything.  I think it may cause spurious errors with import of static data
members, but that can be fixed.  Could you please test with your projects.

Thanks

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654



[Bug bootstrap/38580] Bootstrap broken on mingw32

2008-12-19 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-12-19 
23:01 ---
Patch for this was submitted 4 months ago:

http://gcc.gnu.org/ml/gcc-patches/2008-08/msg01143.html
Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-12-19 23:01:36
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38580



[Bug target/38294] Enable multilib support for mingw

2008-12-13 Thread dannysmith at users dot sourceforge dot net


--- Comment #9 from dannysmith at users dot sourceforge dot net  2008-12-14 
05:54 ---
(In reply to comment #5)
 Reasoned by the fact, that this patch will solve our build failures for w64, 
 it
 is really more to be treated as regression.
 
 NightStrike, when all tests you are doing at the moment are passing, I'll sent
 it tomorrow to gcc-patches.
 
 Danny is this ok for you?
 
I would prefer that this be left until 4.5. I don't understand how failing to
add a new feature is now a regression.

(In reply to comment #6)
 Created an attachment (id=16906)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16906action=view) [edit]
 Third attempt
 
 There were a few lines in t-mingw32 that were commented out and shouldn't have
 been there.  Fixed in this patch.


Please also remove this unnecessary change in mingw32.h

+#if TARGET_64BIT_DEFAULT
 #define STANDARD_INCLUDE_DIR /mingw/include
+#else
+#define STANDARD_INCLUDE_DIR /mingw/include
 #endif

Nightstrike,  have you completed FSF copyright assignment formality

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38294



[Bug target/38054] Assertion failed in change_decl_assembler_name()

2008-12-03 Thread dannysmith at users dot sourceforge dot net


--- Comment #13 from dannysmith at users dot sourceforge dot net  
2008-12-04 07:16 ---
Fixed in 4.3.3


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|4.3.4   |4.3.3


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug target/38054] Assertion failed in change_decl_assembler_name()

2008-12-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2008-12-02 08:05 ---
I have committed a patch to 4.4.0  to fix  bug in compilation of desktop.cpp


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

   Target Milestone|--- |4.3.4


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug middle-end/17982] stop calling assemble_external before final assembly output time

2008-11-23 Thread dannysmith at users dot sourceforge dot net


--- Comment #33 from dannysmith at users dot sourceforge dot net  
2008-11-24 06:41 ---
(In reply to comment #32)
 I've been told that this is related to the test case I just attached

Your testcase is more closely related to PR 38054.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=17982



[Bug bootstrap/37915] bootstrap broken for cygwin

2008-11-20 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2008-11-21 
05:51 ---
(In reply to comment #4)
 Creating library file: .libs/libssp.dll.a
 .libs/ssp.o: In function `fail':
 /home/vmk/gccdev/gcctr11/gcc/libssp/ssp.c:109: undefined reference to
 `___chkstk'
 .libs/gets-chk.o: In function `__gets_chk':
 /home/vmk/gccdev/gcctr11/gcc/libssp/gets-chk.c:66: undefined reference to
 `___chkstk'


This is a different bug.  Cygwin uses the rules in gcc.c:init_gcc_specs to 
 Add appropriate libgcc specs to OBSTACK, taking into account
   various permutations of -shared-libgcc, -shared, and such.  
These do not quite work for Windows targets because dll's do not allow any
reference to be undefined whey they are built.  Thus, the static libgcc.a must
generally be  included to resolve, eg __chkstk.mingw works around this by
defining it's own REAL_LIBGCC_SPEC in mingw32.h that does this.  Perhaps cygwin
should do the same.  

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dave dot korn at artimi dot
   ||com


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37915



[Bug target/38130] [4.4 regression]__builtin_alloca (vs IRA?) testsuite failures on mingw32

2008-11-17 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2008-11-18 
05:55 ---
(In reply to comment #4)
 Created an attachment (id=16713)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16713action=view) [edit]
 gcc44-pr38130.patch
 
 I've talked about this with Honza on IRC:
 honza I would just use 0 constraint. At least in old times with regmove,
 regmove was able to discover that it should use same pseudo for input and
 output.  If you use pair of =a and a only reload sees this fact
 honza so patch is OK with that change.
 This is an updated patch which uses 0 instead of a constraint for operand
 1.
 So, can anyone please test it?  Thanks.
 

This patch  bootstraps on mingw32 (c,c++,gfortran) successfully,  libstcd++ now
compiles and the two testcases reported as failing now pass.

A full regtest is in progress and so far looks good.

Thanks


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38130



[Bug bootstrap/37915] bootstrap broken for cygwin

2008-11-17 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2008-11-18 
06:26 ---
Hello Murali, 
Does the patch for PR 38130 fix the build of libstdc++ on cygwin?

http://gcc.gnu.org/bugzilla/attachment.cgi?id=16713action=view

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37915



[Bug target/38130] New: [4.4.0 regression]__builtin_alloca (vs IRA?) testsuite failures on mingw32

2008-11-15 Thread dannysmith at users dot sourceforge dot net
Execution testcases c-torture/execute/920929-1.c and
c-torture/execute/built-in-setjmp.c began failing on mingw32 in late August,
coincident with merge of IRA into trunk. 

In both cases, the execution tests pass if -fno-ira is added to command line.

The problem appears to be in the call of the target stack-probing code
(__chkstk) in cygwin.asm from allocate_stack_worker instruction. __chkstk has
unusual calling convention, with the input argument as well as the
output passed in eax.

From i386.md:

(define_insn allocate_stack_worker_32
  [(set (match_operand:SI 0 register_operand +a)
(unspec_volatile:SI [(match_dup 0)] UNSPECV_STACK_PROBE))
   (set (reg:SI SP_REG) (minus:SI (reg:SI SP_REG) (match_dup 0)))
   (clobber (reg:CC FLAGS_REG))]
  !TARGET_64BIT  TARGET_STACK_PROBE
  call\t___chkstk
  [(set_attr type multi)
   (set_attr length 5)])


The relevant part of the output of 
gcc  -S  -O -funroll-all-loops  920929-1.c -o 920929-1-IRA.s:

f:
pushl   %ebp
movl%esp, %ebp
pushl   %ebx
subl$4, %esp
movl8(%ebp), %edx
call___chkstk
leal15(%esp), %ecx
andl$-16, %ecx
testl   %edx, %edx
...

__chkstk allocates only 1 byte and the code segfault on the first
attempt to assign a double to the allocated array.


The output, with -fno-ira 
gcc  -S  -O -funroll-all-loops -fno-ira 920929-1.c -o 920929-1-NOIRA.s:
_f:
pushl   %ebp
movl%esp, %ebp
pushl   %ebx
subl$4, %esp
movl8(%ebp), %ebx
leal30(,%ebx,8), %eax
andl$-16, %eax
call___chkstk
leal15(%esp), %eax
movl%eax, %edx
andl$-16, %edx
testl   %ebx, %ebx

__chkstk allocates 816 bytes


A comparison of built-in-setjmp.c with amd without -fno-ira switch also shows
incorrect input to __chkstk

Probably related to these failure is miscompilation of the C++ compiler
code cp/pt.c, which segfaults following call to alloca in
process_partial_specialization when building libstdc++. If cp/pt.c is
compiled with -fno-ira, libstdc++ builds successfully.

Danny


-- 
   Summary: [4.4.0 regression]__builtin_alloca (vs IRA?)  testsuite
failures on  mingw32
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dannysmith at users dot sourceforge dot net
 GCC build triplet: i686-pc-mingw32
  GCC host triplet: i686-pc-mingw32
GCC target triplet: i686-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38130



[Bug target/38054] Assertion failed in change_decl_assembler_name()

2008-11-10 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2008-11-11 
06:27 ---
(In reply to comment #3)
 Patch at:
 http://gcc.gnu.org/ml/gcc-patches/2008-11/msg00321.html
 

That patch also fixes the FAIL of testsuite\g++.old-deja\g++.dg\otherg++
pr35504.C .  Currently it fails on mingw32 and cygwin with:

Warning: resolving non-virtual thunk to c3::method5()@4 by linking to
non-virtual thunk to c3::method5()
Use --enable-stdcall-fixup to disable these warnings
Use --disable-stdcall-fixup to disable these fixups
c:\tmp/ccisCRqc.o:pr35504.C:(.rdata$_ZTV2c3[vtable for c3]+0x44): undefined
reference to [EMAIL PROTECTED]@4'
collect2: ld returned 1 exit status 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug target/38054] Assertion failed in change_decl_assembler_name()

2008-11-09 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-11-09 
08:20 ---
This a target bug (stdcall symbol name decorati0on on windows targets)


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

  Component|middle-end  |target


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug target/38054] Assertion failed in change_decl_assembler_name()

2008-11-09 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2008-11-09 
08:24 ---
Patch at:
http://gcc.gnu.org/ml/gcc-patches/2008-11/msg00321.html


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug middle-end/38054] Assertion failed in change_decl_assembler_name()

2008-11-08 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-11-09 00:41:29
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38054



[Bug target/37989] PR37528 fix broke --disable-shared on mingw32

2008-11-03 Thread dannysmith at users dot sourceforge dot net


--- Comment #5 from dannysmith at users dot sourceforge dot net  2008-11-04 
02:21 ---
Fixed by Mikael's patch


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989



[Bug target/37989] PR37528 fix broke --disable-shared on mingw32

2008-11-02 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-11-03 06:09:24
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989



[Bug target/37989] PR37528 fix broke --disable-shared on mingw32

2008-11-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-11-03 
07:45 ---
Created an attachment (id=16614)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16614action=view)
revised patch to quard with ENABLE_SHARED_LIBGCC

Hi Mikael,

I have modified your patch slightly and added a ChangeLog entry.  It works for
me with host=build=target=mingw32.  Does attached it work for you.
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37989



[Bug target/37216] [cygming] Invalid alignment for SSE store to .comm data generated with -O3

2008-10-06 Thread dannysmith at users dot sourceforge dot net


--- Comment #41 from dannysmith at users dot sourceforge dot net  
2008-10-06 20:18 ---
(In reply to comment #35)

 As I suspected.  The PE/COFF file format does not provide for specifying 
 the alignment of commons.
 
 Hmm, I wonder if gcc should complain if it finds aligned commons with 
 COFF backends or if we should try to generate a GNU extension to the 
 COFF format.
 

Aligned commons are not part of the PE COFF spec and AFAICT neither MASM nor
NASM provide a way to specify aligned commons.  I am afraid that a GNU
extension will cause object incompatibility, so it would it need to be a
non-default option.  We already have
 -fno-common
__attribute__((no_common)) 
#pragma gcc optimize (no_common)  

G++ already puts commons in .bss

Perhaps a new option -fno_large_common that applies -fcommon only to objects
with align = 4 bytes?

A warning would be useful in any case.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216



[Bug target/37528] [4.4 Regression] boostrap failure due to configure problems

2008-10-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #10 from dannysmith at users dot sourceforge dot net  
2008-10-02 08:47 ---
Fixed on mingw32 at revision 140803. 


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37528



[Bug target/37216] [cygming] Invalid alignment for SSE store to .comm data generated with -O3

2008-10-01 Thread dannysmith at users dot sourceforge dot net


--- Comment #27 from dannysmith at users dot sourceforge dot net  
2008-10-01 10:22 ---
(In reply to comment #13)
 Created an attachment (id=16425)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16425action=view) [edit]
 Revised patch with correct section switching
 
That patch causes other problems
This test case:

/* t1.c */
int  i[0];
int k;

void testi (void)
{
  i[0] = 0;
}

void testk (void)
{
  k = 0;
}


int main (void)
{
  return 0;
} 

now fails with 
t1.c:(.text+0x5): undefined reference to `_i' 

The assembler code is
.file   t1.c
.text
.p2align 4,,15
.globl _testi
.def_testi; .scl2;  .type   32; .endef
_testi:
pushl   %ebp
movl%esp, %ebp
movl$0, _i
popl%ebp
ret
.p2align 4,,15
.globl _testk
.def_testk; .scl2;  .type   32; .endef
_testk:
pushl   %ebp
movl%esp, %ebp
movl$0, _k
popl%ebp
ret
.def___main;.scl2;  .type   32; .endef
.p2align 4,,15
.globl _main
.def_main;  .scl2;  .type   32; .endef
_main:
pushl   %ebp
movl%esp, %ebp
andl$-16, %esp
call___main
xorl%eax, %eax
movl%ebp, %esp
popl%ebp
ret
.bss
.balign 4
.comm   _i, 0  size of i[0]
.balign 4
.comm   _k, 4


I suspect we need to add this bit, or similar, back in
-  rounded = size ? size : 1;
-  rounded += (BIGGEST_ALIGNMENT / BITS_PER_UNIT) - 1;
-  rounded = (rounded / (BIGGEST_ALIGNMENT / BITS_PER_UNIT)
-* (BIGGEST_ALIGNMENT / BITS_PER_UNIT));

and output rounded rather than size.

Testing now.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216



[Bug bootstrap/37702] Stage 2- C compiler cannot create executables-recent svn

2008-10-01 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2008-10-02 
00:20 ---
In reply to comment #4)
 xgcc: error trying to exec
 '/cygdrive/c/jimdata/home/cvsroot/gcc-obj/./prev-gcc/cc1.exe': execv:
 Permission denied
 
This may be related to:
http://gcc.gnu.org/ml/gcc-bugs/2007-05/msg00228.html
Windows filesystems have woefully poor timestamp resolution, so it is easy to
get in race situation with modern CPUS. I find that it helps to disable
explorer.exe in the Windows TaskManager while doing a bootstrap.


Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37702



[Bug target/37216] [cygming] Invalid alignment for SSE store to .comm data generated with -O3

2008-09-30 Thread dannysmith at users dot sourceforge dot net


--- Comment #26 from dannysmith at users dot sourceforge dot net  
2008-10-01 01:33 ---
(In reply to comment #14)
 Hi Guys,
 
   I am not able to reproduce the build problems that were reported with the
 first version of my patch, but then again I do not have a native cygwin build
 system or a system in which I can bootstrap mingw32.  I think that Brian may
 well be right however in that the patch is behaving badly when it manually
 switches into the .bss section.  I have uploaded a revised version of the 
 patch
 which uses the correct gcc function to perform the section switch, so please
 can anyone who is interested give this new patch a run.


This latter patch, applied to R139853 [*] (just before the big IRA merge) does
not cause the build problems of the prior patch but does not solve the problem
either.

With this patch, using your _align.c test case which I uploaded in previous
comment:

gcc -DHAVE_ALIGNED_COMMON _align.c   a.exe
fails.

The assembler code, specifically the .balign 32 directive applied to the
_common object looks like it should do the right thing, but doesn't (:

.file   _align.c
.bss
.balign 1
.comm   _a, 1
.balign 32
.comm   _common, 64
.globl _b
.section.bss,w
_b:
.space 1
.globl _bss
.align 32
_bss:
.space 64
.globl _c
.data
_c:
.byte   1
.globl _data
.align 32
_data:
.long   1
.space 4
.long   2
.space 4
.long   3
.space 12
.long   4
.space 28
.text
.globl _test
.def_test;  .scl2;  .type   32; .endef
_test:
pushl   %ebp
movl%esp, %ebp
subl$8, %esp
movl8(%ebp), %eax
addl$8, %eax
andl$7, %eax
testl   %eax, %eax
jne L2
movl8(%ebp), %eax
addl$16, %eax
andl$15, %eax
testl   %eax, %eax
jne L2
movl8(%ebp), %eax
addl$32, %eax
andl$31, %eax
testl   %eax, %eax
je  L4
L2:
call_abort
L4:
leave
ret
.def___main;.scl2;  .type   32; .endef
.globl _main
.def_main;  .scl2;  .type   32; .endef
_main:
pushl   %ebp
movl%esp, %ebp
andl$-16, %esp
subl$16, %esp
call___main
movl$_common, (%esp)
call_test
movl$_bss, (%esp)
call_test
movl$_data, (%esp)
call_test
movl$0, (%esp)
call_exit
.def_abort; .scl2;  .type   32; .endef
.def_exit;  .scl2;  .type   32; .endef




[*] Since the IRA merge, mingw32  has been broken, failing to compile libstdc++
and raising many (500 in gcc.dg) new testcase errors.  


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216



[Bug target/37216] [cygming] Invalid alignment for SSE store to .comm data generated with -O3

2008-09-29 Thread dannysmith at users dot sourceforge dot net


--- Comment #19 from dannysmith at users dot sourceforge dot net  
2008-09-29 18:43 ---
Created an attachment (id=16427)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16427action=view)
Nick's aligned common testcase


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37216



[Bug c++/34749] Incorrect warning when applying dllimport to friend function

2008-09-25 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2008-09-26 
03:15 ---
*** Bug 37652 has been marked as a duplicate of this bug. ***


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||v dot haisman at sh dot cvut
   ||dot cz


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34749



[Bug target/37652] Bogus redeclaration warning for `friend __declspec(dllimport) int foo ()'

2008-09-25 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-09-26 
03:15 ---
This is duplicate of 34749

*** This bug has been marked as a duplicate of 34749 ***


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37652



[Bug target/37629] auto-import of constant data results in a crash at runtime

2008-09-23 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-09-24 
03:12 ---
This bug is linker related.  It is fixed on 32-bit windows by this patch
http://sourceware.org/ml/binutils-cvs/2007-10/msg2.html
Have you tried with recent binutils and explict -Wl,--enable-auto-import
switch?

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37629



[Bug target/37528] [4.4 Regression] boostrap failure due to configure problems

2008-09-21 Thread dannysmith at users dot sourceforge dot net


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-09-16 07:20:01 |2008-09-22 03:04:46
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37528



[Bug target/37528] [4.4 Regression] boostrap failure due to configure problems

2008-09-21 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2008-09-22 
03:09 ---
Fixed at revision 140541.
Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37528



[Bug target/37584] -ftree-ch causes stack corruption on mingw32

2008-09-21 Thread dannysmith at users dot sourceforge dot net


--- Comment #3 from dannysmith at users dot sourceforge dot net  2008-09-22 
03:23 ---
I have run into what I believe is the same bug in build of of cc1plus.exe, with
miscompilation of cp/pt.c
When exercising cp/pt.c:process_partial_specialization (eg, when compiling
libstdc++'s mt_allocator.cc) I get a segfault in cygwin.asm (used in w32
implementation  of __builtin_alloca)  
Adding -fno-tree-ch to CFLAGS for pt.c fixes build of libstdc++ and testsuite
results  

I will try to reduce a testcase when time permits.
Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-09-22 03:23:45
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37584



[Bug libstdc++/37522] [4.4 regression] Incorrect vswprintf prototype breaks __to_xstring

2008-09-14 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-09-15 
02:57 ---

 
 I guess the solution is to make libstdc++ use _vsnwprintf instead of vswprintf
 on *-mingw32.
 

I think that is the most expedient solution.  Would an inline redirection  of
vswprintf to _vsnwprintf in config/os/mingw32/os_define.h (later, if it gets
fixed in mingw runtime  that could be made conditional on mingw version) work?

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37522



[Bug bootstrap/36948] cc1.exe: internal compiler error: Segmentation fault

2008-07-31 Thread dannysmith at users dot sourceforge dot net


--- Comment #6 from dannysmith at users dot sourceforge dot net  2008-08-01 
04:34 ---
This kind of path
'--prefix=/c/_GccBuilds/gcc-4.3.1-install/mingw-32-i686' may be understood by
your  shell, but  won't be found by the xgcc driver or cc1.exe which are native
windows apps.  Search the mingw site for  a build script that will work with
the msys shell.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36948



[Bug libfortran/36857] Non-English locale breaks gfortran float formatting (printf is broken)

2008-07-20 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2008-07-20 
09:58 ---
(In reply to comment #3)
 This is untested, but you get the idea.
 
 +  setlocale(LC_ALL, POSIX);

 mingw's  setlocale doesn't believe in  POSIX ; it does however go to the ISO
C89 church, and has setlocale(LC_ALL, C); in its liturgy.
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36857



[Bug target/36834] structure return ABI for windows targets differs from native MSVC

2008-07-17 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-07-17 
08:16 ---
Patch submitted
http://gcc.gnu.org/ml/gcc-patches/2008-07/msg01250.html
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36834



[Bug target/36834] New: structure return ABI for windows targets differs from nbative MSVC

2008-07-15 Thread dannysmith at users dot sourceforge dot net
Like i386-netware, the native MS Windows compiler assumes that the CALLER pops
the stack for the implicit arguments pointing to aggregate return value.  This
differs from the default i386 ABI which assumes the CALLEE pops the stack.

This is documented at http://www.angelcode.com/dev/callconv/callconv.html in
the section  on __cdecl calling convention.

The bug was reported to mingw users list by Magnus Christensson at:
http://www.nabble.com/Problem-returning-C-struct-from-MinGW-to-MSVC-td18444899.html
This report contains a testcase demostrating the problem.

Danny


-- 
   Summary: structure return ABI for windows targets differs from
nbative MSVC
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dannysmith at users dot sourceforge dot net
 GCC build triplet: i686-pc-mingw32
  GCC host triplet: i686-pc-mingw32
GCC target triplet: i686-pc-mingw32


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36834



[Bug target/36834] structure return ABI for windows targets differs from nbative MSVC

2008-07-15 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-07-15 
09:29 ---
Testing  a patch to add a new switch for windows targets.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
  Known to fail||4.2.0 4.3.0 4.4.0
   Last reconfirmed|-00-00 00:00:00 |2008-07-15 09:29:57
   date||
Summary|structure return ABI for|structure return ABI for
   |windows targets differs from|windows targets differs from
   |nbative MSVC|nbative MSVC


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36834



[Bug target/35921] Con/de-structor definition fails to override dllimport declaration

2008-06-28 Thread dannysmith at users dot sourceforge dot net


--- Comment #12 from dannysmith at users dot sourceforge dot net  
2008-06-28 07:53 ---
*** Bug 36654 has been marked as a duplicate of this bug. ***


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35921



[Bug c++/36654] Inlined con/de-structor breaks virtual inheritance dllimport classes

2008-06-28 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-06-28 
07:53 ---
This is duplicate of 35921 and is fixed on 4.3.2 and trunk. 

*** This bug has been marked as a duplicate of 35921 ***


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||DUPLICATE
   Target Milestone|--- |4.3.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36654



[Bug target/36603] Use \r\n for generated *.s files on Windows

2008-06-22 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-06-23 
02:54 ---
Using \r\n will cause problems with pch files.

This is why I made this change
2004-06-05  Danny Smith  [EMAIL PROTECTED]

* toplev.c (init_asm_output): Add explicit 'b' to mode when
opening asm_out_file.

This is the first complaint I've heard since that patch.  Don't use Notepad for
anything.
Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-06-23 02:54:51
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36603



[Bug tree-optimization/36218] [4.2/4.3/4.4 regression] VRP causes stack overflow while building libgcj

2008-06-14 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2008-06-14 10:01 ---
(In reply to comment #6)
 Note that a native build should be done to verify that my patch increases the
 stack limit enough to fix this bug, before marking it fixed.
 

With this patch (8 mb stack reserve), native mingw32 jc1.exe (built with -O2) 
is able to compile all libgcj objects on trunk and 4_3-branch. 

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36218



[Bug bootstrap/36541] Make failed with error about system headers

2008-06-14 Thread dannysmith at users dot sourceforge dot net


--- Comment #1 from dannysmith at users dot sourceforge dot net  2008-06-15 
05:31 ---
(In reply to comment #0)

 make[3]: Leaving directory `/f/_Builds/gcc-4.3.1-build/gcc'

It appears that you are building on drive F:.  I'd guess that /mingw/include
(== F:\mingw\include to the OS) does not exist.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36541



[Bug target/35921] Con/de-structor definition fails to override dllimport declaration

2008-06-06 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2008-06-07 00:46 ---
Fix backported to branch.


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.2


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35921



[Bug driver/35916] problem running GCC under Vista with relocated directory

2008-06-05 Thread dannysmith at users dot sourceforge dot net


--- Comment #13 from dannysmith at users dot sourceforge dot net  
2008-06-05 06:23 ---
Closing, as this is fixed on trunk. 


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.4.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35916



[Bug driver/35916] problem running GCC under Vista with relocated directory

2008-06-04 Thread dannysmith at users dot sourceforge dot net


--- Comment #11 from dannysmith at users dot sourceforge dot net  
2008-06-04 08:22 ---
This fixes for me on Vista host.  Can someone confirm?

config/ChangeLog

PR35916
* mh-mingw (CFLAGS): Add -D__USE_MINGW_ACCESS.


Index: config/mh-mingw
===
--- config/mh-mingw (revision 136350)
+++ config/mh-mingw (working copy)
@@ -1,3 +1,4 @@
 # Add -D__USE_MINGW_ACCESS to enable the built compiler to work on Windows
 # Vista (see PR33281 for details).
 BOOT_CFLAGS += -D__USE_MINGW_ACCESS
+CFLAGS += -D__USE_MINGW_ACCESS


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dannysmith at users dot
   |dot org |sourceforge dot net
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-06-03 04:31:48 |2008-06-04 08:22:20
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35916



[Bug driver/36417] On Vista, driver can't find collect2

2008-06-02 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-06-03 
03:17 ---
Although config/mh-mingw has
BOOT_CFLAGS += -D__USE_MINGW_ACCESS
as a fix for PR33281,

CFLAGS_FOR_TARGET for mingw32 also requires this define, else libiberty's
make_relative_prefix won't work on Vista.

make_relative_prefix is used by driver to determine and set environment
variable GCC_EXEC_PREFIX.

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2008-06-03 03:17:33
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36417



[Bug target/35921] Con/de-structor definition fails to override dllimport declaration

2008-05-29 Thread dannysmith at users dot sourceforge dot net


--- Comment #8 from dannysmith at users dot sourceforge dot net  2008-05-29 
21:00 ---
(In reply to comment #7)
 Created an attachment (id=15702)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=15702action=view) [edit]
 Minimal testcase for vtable issue
 
 I'm not sure whether this is related, but the effect is similar so I'm adding
 it to this same bug.
 
 Basically, we get an undefined reference to the vtable for a dllimport-ed
 struct with a single inner-defined virtual function.



Uhh, if you declare a struct as dllimport, then you are declaring that it's
vtable is defined in a dll. So why is this a bug?

Of course if you allow compiler to actually inline the virtual function in your
example, the vtable should not be needed. 

Anyway, thanks for reminding me of this bug.  I'll backport 4.4 patch to 4.3.2
once branch reopens.

Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35921



[Bug ada/36207] [4.4 regression] Ada bootstrap fails in uintp.adb:1595

2008-05-17 Thread dannysmith at users dot sourceforge dot net


--- Comment #4 from dannysmith at users dot sourceforge dot net  2008-05-17 
07:27 ---
Is this related to PR35493?
A possibly related cygwin failure was also reported here.
http://gcc.gnu.org/ml/gcc/2008-03/msg00681.html.

My last successful build of Ada on mingw was:
gcc version 4.4.0 20080312 (experimental) (GCC)

Danny


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 CC||dannysmith at users dot
   ||sourceforge dot net


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36207



[Bug libgcj/36218] [4.4 regression] libgcj causes stack overflow in jc1.exe

2008-05-12 Thread dannysmith at users dot sourceforge dot net


--- Comment #2 from dannysmith at users dot sourceforge dot net  2008-05-13 
03:52 ---
(In reply to comment #0)
  What negative consequences does increasing the default [stack]
 allocation have?  
Minimal really, for a single threaded program like jc1.exe.  We are just
reserving address space not actual memory.  In a multithreaded app, each thread
reserves the same amount of address space as the primary thread (by default,
but the default can be overiden), so too high a stack reserve for main thread
can limit what is available for others.  



Is it possible to adjust this limit at runtime, perhaps as
 needed?
 
No, not for main thread. It is built into the program header on MS windows.
GNAT also bumps stack reserve to 32 MB for non-tasking apps.  See
system-mingw.ads.  

In old days, 32 MB was default for win32 in gnu ld.
Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36218



[Bug target/35661] __attribute__((cold)) generates wrong code

2008-05-11 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2008-05-11 
21:09 ---
Fixed on 4_3 branch


-- 

dannysmith at users dot sourceforge dot net changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35661



[Bug libstdc++/36211] __iconv_adaptor chooses char** where const char** is required

2008-05-11 Thread dannysmith at users dot sourceforge dot net


--- Comment #7 from dannysmith at users dot sourceforge dot net  2008-05-11 
22:46 ---
Following is with mingw but it applies to cygwin as well 

This is the command line from log for FAILing 22_locale/locale/cons/unicode.cc

Executing on host: /develop/svn/trunk/build/./gcc/g++ -shared-libgcc
-B/develop/svn/trunk/build/./gcc -nostdinc++
-L/develop/svn/trunk/build/mingw32/libstdc++-v3/src
-L/develop/svn/trunk/build/mingw32/libstdc++-v3/src/.libs
-L/develop/svn/trunk/build/mingw32/winsup/mingw
-L/develop/svn/trunk/build/mingw32/winsup/w32api/lib -isystem
/develop/svn/trunk/src/winsup/mingw/include -isystem
/develop/svn/trunk/src/winsup/w32api/include -B/mingw/mingw32/bin/
-B/mingw/mingw32/lib/ -isystem /mingw/mingw32/include -isystem
/mingw/mingw32/sys-include -g -O2 -D_GLIBCXX_ASSERT -fmessage-length=0
-ffunction-sections -fdata-sections -g -O2 -g -O2   -DLOCALEDIR=. -nostdinc++
-I/develop/svn/trunk/build/mingw32/libstdc++-v3/include/mingw32
-I/develop/svn/trunk/build/mingw32/libstdc++-v3/include
-I/develop/svn/trunk/src/libstdc++-v3/libsupc++
-I/develop/svn/trunk/src/libstdc++-v3/include/backward
-I/develop/svn/trunk/src/libstdc++-v3/testsuite/util -Wl,--gc-sections
/mingw/lib/libiconv.a
/develop/svn/trunk/src/libstdc++-v3/testsuite/22_locale/locale/cons/unicode.cc 
  -include bits/stdc++.h ./libtestc++.a  -lm   -o ./unicode.exe(timeout =
600)


Note that although the correct libiconv /mingw/lib/libiconv.a is passed to
linker, it is  passed  *before*  the objects and libraries that reference
libiconv symbols.
With PE-COFF, the order of objects really does  matter and  since the libiconv
symbols have not yet been referenced when the linker looks at the lib, the
symbols are not resolved. They are not resolved lazily as is possible in ELF


Danny


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36211



  1   2   3   4   >