[Bug c/59615] asm goto output or at least clobbered operands

2013-12-28 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59615

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org ---
The reason for the limitation is that any needed reload out can't be then
inserted after the asm goto, but all the other edges would need to be split and
the reload outs inserted on all the edges.

Looking at your example though, can you explain why you want to use asm goto
then?  I'd say that for addition, two conditional jumps and one comparison you
definitely don't want to use asm goto, the compiler can't see through it thus
can't optimize it.  Why isn't what GCC generates sufficient?  Do you have a
testcase?


[Bug c++/56926] Crash (without ICE) while compiling Boost.Math

2013-12-28 Thread asmwarrior at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56926

--- Comment #6 from asmwarrior asmwarrior at gmail dot com ---
It is very simple to reproduce this bug. Here is the steps I do
1, download the GCC 4.8.2 from MinGW-w64 site, I'm using
i686-4.8.2-release-posix-dwarf-rt_v3-rev1

2, download the boost source package, I'm using boost_1_55_0.7z download from
boost official site, extract its source to some folder like:
D:\mingw-builds\boost_1_55_0.  (Note, no need to build boost library, only the
boost header files are needed for testing)

3, create a simple file named pch.h, which contains following:

#ifndef pch_h
#define pch_h

#pragma GCC diagnostic push
#pragma GCC diagnostic ignored -Wdelete-non-virtual-dtor

#include boost/asio.hpp
#include boost/iostreams/filtering_stream.hpp
#include boost/program_options.hpp
#include boost/thread.hpp

#pragma GCC diagnostic pop
#endif
 

4, create a simple test.cpp file, which contains following:

#include pch.h

int main()
{
int a;
int b;
int c;
a++;
b++;
}


5, build the pch file by running the command.

g++.exe -Wall -fexceptions  -g  -march=core2 -Wall
-ID:\mingw-builds\boost_1_55_0  -c pch.h -o pch.h.gch

6, now, you will see a file named pch.h.gch was generated, its size is bigger
than 200M.

7, compile the test.cpp file by running the command:
g++.exe -v -Wall -fexceptions  -g  -march=core2 -Wall
-ID:\mingw-builds\boost_1_55_0  -Winvalid-pch -include pch.h -c test.cpp -o
test.o

8, I see some verbose messages, but no test.o file was generated in the
working directory, also I see no crash dialog shown.

So, this is indeed a bug.

Now, if you comment out some lines in the pch.h file, e.g. only leave the first
#include directive: #include boost/asio.hpp, and comment out the later three
include directive, and run the steps again, you get a 47M pch.h.gch and a 206K
test.o file.

I try to use GDB to catch the errors, but failed.
Try use GDB, I did such thing:
gdb g++.exe [enter]
then
set args -v -Wall -fexceptions  -g  -march=core2 -Wall
-ID:\mingw-builds\boost_1_55_0  -Winvalid-pch -include pch.h -c test.cpp -o
test.o [enter]
then
r [enter]

GDB can't catch anything, just the same as I run the command in the Command
line, the last message from GDB is: [Inferior 1 (process 2000) exited with code
01]

Does exit code 01 has some special meaning?

BTW: I have test the GCC 4.9 snapshot
i686-4.9.0-snapshot-20131119-rev205009-posix-dwarf-rt_v4.7z from mingw-w64
site, it has the same bug.


[Bug debug/59170] pretty printers: end iterator invalid pointer

2013-12-28 Thread jan.kratochvil at redhat dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59170

Jan Kratochvil jan.kratochvil at redhat dot com changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #2 from Jan Kratochvil jan.kratochvil at redhat dot com ---
It is fixable, only for development builds but that does not matter much IMO.
Just one has to build the executable with -D_GLIBCXX_DEBUG.

The test whether it is an end() iterator can be done by:

(gdb) whatis end
type = std::__debug::vectorint, std::allocatorint ::iterator
s/::iterator$//
(gdb) p end._M_current._M_current == ((std::__debug::vectorint,
std::allocatorint  *)end._M_sequence)._M_impl._M_finish
$29 = true

That is with -D_GLIBCXX_DEBUG each iterator contains:
/** The sequence this iterator references; may be NULL to indicate
a singular iterator. */
_Safe_sequence_base* _M_sequence;


[Bug lto/59543] [4.9 Regression] lto1: fatal error: Cgraph edge statement index out of range

2013-12-28 Thread trippels at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59543

--- Comment #3 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
It turned out to be a problem with debugging information.
Some files in libjs_static.a are build with -g, even when
Firefox is configured with --disable-debug --disable-debug-symbols.

If I add -g to the g++ invocation above, or build the object files
in libjs_static.a without -g, the issue goes away.


[Bug c/59615] asm goto output or at least clobbered operands

2013-12-28 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59615

--- Comment #2 from Uroš Bizjak ubizjak at gmail dot com ---
Looking at the assembly, you probably want:

--cut here--
int test (int a, int b, int c)
{
  unsigned r = a + b;

  if (r  (unsigned) a)
return 1;
  else if (r  c)
return 1;

  return 0;
}
--cut here--

gcc-4.8.2 -O2:

test:
addl%esi, %edi
movl$1, %eax
jc  .L2
xorl%eax, %eax
cmpl%edx, %edi
seta%al
.L2:
rep ret

Please note how the compiler is able to generate jc without compare insn.

[Bug c/59615] asm goto output or at least clobbered operands

2013-12-28 Thread ubizjak at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59615

--- Comment #3 from Uroš Bizjak ubizjak at gmail dot com ---
(In reply to Uroš Bizjak from comment #2)

   if (r  (unsigned) a)

Explicit cast is not needed here, the compiler will do it for you.

[Bug fortran/59604] Constant comparisons with -fno-range-check and int(z'...')

2013-12-28 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59604

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2013-12-28
   Assignee|unassigned at gcc dot gnu.org  |tkoenig at gcc dot 
gnu.org
 Ever confirmed|0   |1

--- Comment #6 from Thomas Koenig tkoenig at gcc dot gnu.org ---
I have a patch.


[Bug fortran/59604] Constant comparisons with -fno-range-check and int(z'...')

2013-12-28 Thread tkoenig at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59604

Thomas Koenig tkoenig at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|UNCONFIRMED
 Ever confirmed|1   |0

--- Comment #7 from Thomas Koenig tkoenig at gcc dot gnu.org ---
(In reply to Steve Kargl from comment #5)
 On Fri, Dec 27, 2013 at 07:53:00PM +, tkoenig at gcc dot gnu.org wrote:
  http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59604
  
  Thomas Koenig tkoenig at gcc dot gnu.org changed:
  
 What|Removed |Added
  
   Blocks||58003
  
  --- Comment #4 from Thomas Koenig tkoenig at gcc dot gnu.org ---
  (In reply to kargl from comment #2)
   (In reply to Thomas Koenig from comment #1)
TRANSFER gets this right.
   
   It is unclear what you mean here.
  
  What I mean is that
  
  program test
if (transfer(z'',1) /= -1) call abort
  end program test
  
  does not call abort.
 
 I suspect that the above is not portable as transfer() simply copies
 bits.  z'FFF' is an integer(8) (or integer(16)) entity.  Transfer()
 is copying 32-bits from that entity.  It is clear from the 
 -fdump-tree-original that middle-end is converting the resulting
 32-bit thing into -1.  So, you're relying on twos-complement wrap
 around semantics.

As gcc supports only twos complement arithmetic, I think this is OK.


[Bug lto/59543] [4.9 Regression] lto1: fatal error: Cgraph edge statement index out of range

2013-12-28 Thread trippels at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59543

--- Comment #4 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
Created attachment 31527
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31527action=edit
testcase

Here's a small testcase:

  % cat check.sh
g++ -g -fprofile-use -fPIC -flto -fno-exceptions -O2 -std=c++11 -c uniset.ii
g++ -fPIC -flto -fno-exceptions -O2 -std=c++11 -c unistr.ii
g++ -fPIC -flto -fno-exceptions -O2 -std=c++11 -c unorm.ii
gcc -O3 -c -fPIC unorm_it.i
g++ -flto -O2 uniset.o unistr.o unorm_it.o unorm.o
  % ./check.sh
In member function ‘extractBetween’:
lto1: fatal error: Cgraph edge statement index out of range 25  50
compilation terminated.

[Bug fortran/59612] iso_fortran_env segfaults with -fdump-fortran-original

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59612

janus at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||ice-on-valid-code
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2013-12-28
 CC||janus at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #1 from janus at gcc dot gnu.org ---
Straightforward patch:

Index: gcc/fortran/dump-parse-tree.c
===
--- gcc/fortran/dump-parse-tree.c(revision 206176)
+++ gcc/fortran/dump-parse-tree.c(working copy)
@@ -110,7 +110,8 @@ show_typespec (gfc_typespec *ts)
   break;

 case BT_CHARACTER:
-  show_expr (ts-u.cl-length);
+  if (ts-u.cl)
+show_expr (ts-u.cl-length);
   fprintf(dumpfile,  %d, ts-kind);
   break;


[Bug fortran/59612] iso_fortran_env segfaults with -fdump-fortran-original

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59612

--- Comment #2 from janus at gcc dot gnu.org ---
Note that there are two small errors in the related documentation:


Index: gcc/fortran/invoke.texi
===
--- gcc/fortran/invoke.texi(revision 206176)
+++ gcc/fortran/invoke.texi(working copy)
@@ -989,11 +989,12 @@ Output the internal parse tree after translating t
 into internal representation.  Only really useful for debugging the
 GNU Fortran compiler itself.

-@item -fdump-optimized-tree
+@item -fdump-fortran-optimized
 @opindex @code{fdump-fortran-optimized}
 Output the parse tree after front-end optimization.  Only really
 useful for debugging the GNU Fortran compiler itself.

+@item -dump-parse-tree
 @opindex @code{fdump-parse-tree}
 Output the internal parse tree after translating the source program
 into internal representation.  Only really useful for debugging the


Does -fdump-fortran-optimized actually do anything?


[Bug c++/56926] Crash (without ICE) while compiling Boost.Math

2013-12-28 Thread 1000hz.radiowave at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56926

--- Comment #7 from baltic 1000hz.radiowave at gmail dot com ---
(In reply to baltic from comment #5)
 worked fine with 4.6
This is not true anymore :) was probably working fine with previous versions of
the Qt, because headers were smaller back than. Now 4.6 version of MinGW-64
doesn't work with the PCH's full of Qt headers either.


[Bug fortran/59589] [4.9 Regression] [OOP] Memory leak when deallocating polymorphic

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59589

janus at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||wrong-code
 CC||janus at gcc dot gnu.org
Summary|[4.9 Regression] Memory |[4.9 Regression] [OOP]
   |leak when deallocating  |Memory leak when
   |polymorphic |deallocating polymorphic

--- Comment #12 from janus at gcc dot gnu.org ---
I can confirm the problem on x86_64-unknown-linux-gnu with a current trunk
build. It is certainly related to finalization, which was introduced in 4.9.
The dump shows that a finalizer routine is called for 'b' upon deallocation:

b._vptr-_final (desc.7, b._vptr-_size, 0);

However, the finalizer routine apparently misses to properly deallocate the
components.


[Bug fortran/59612] iso_fortran_env segfaults with -fdump-fortran-original

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59612

--- Comment #3 from janus at gcc dot gnu.org ---
Maybe it would make sense to run the testsuite with -fdump-fortran-original, in
order to check for further problems:


Index: gcc/testsuite/gfortran.dg/dg.exp
===
--- gcc/testsuite/gfortran.dg/dg.exp(revision 206231)
+++ gcc/testsuite/gfortran.dg/dg.exp(working copy)
@@ -22,7 +22,7 @@
 # If a testcase doesn't have special options, use these.
 global DEFAULT_FFLAGS
 if ![info exists DEFAULT_FFLAGS] then {
-set DEFAULT_FFLAGS  -pedantic-errors
+set DEFAULT_FFLAGS  -pedantic-errors -fdump-fortran-original
 }

 # Initialize `dg'.


[Bug fortran/59589] [4.9 Regression] [OOP] Memory leak when deallocating polymorphic

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59589

janus at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |janus at gcc dot gnu.org

--- Comment #13 from janus at gcc dot gnu.org ---
I think the following is sufficient to fix it:


Index: gcc/fortran/class.c
===
--- gcc/fortran/class.c(revision 206231)
+++ gcc/fortran/class.c(working copy)
@@ -811,6 +811,7 @@ finalize_component (gfc_expr *expr, gfc_symbol *de
 return;

   if (comp-ts.type == BT_DERIVED  !comp-attr.allocatable
+   !comp-ts.u.derived-attr.alloc_comp
(comp-ts.u.derived-f2k_derived == NULL
   || comp-ts.u.derived-f2k_derived-finalizers == NULL)
!has_finalizer_component (comp-ts.u.derived))


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #14 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
In the following code:



// a small text file filter.c //

#include stdio.h





main(int argc, char* argv[])

{


char c, previous_c;   

int word_begin_position[3000];


int spec_symbol[7]={0xAE,0xBB,0xAB,0xA9,0x22,0x2F,0x27};


int eof_symbol[2]={0x0D,0x0A};
int search_result;

int this_is_the_same_word;
int words_count;
int word_number;

int search_result_A_count;
int search_result_space;

FILE *stream,*stream2;


int i, j, characters_count, character_number;
int other_character_printed;


// double characters
int A_count, E_count;



characters_count=0;

stream = fopen (argv[1],r);

while ((c = fgetc(stream)) != EOF) 

{
characters_count++;

}
fclose(stream);
//printf(total characters are %i\n, characters_count); 


character_number=1;
words_count=0;
previous_c=0;


stream = fopen (argv[1],r);

while ((c = fgetc(stream)) != EOF) 

{
if(((c!=0x20)  (character_number==1)) || ((previous_c==0x20) 
(c!=0x20)  (c!=0x0A)) || ((previous_c!=0x20)  (c==0x0D)) || ((c!=0x20) 
(c!=0x0D)  (c!=0x0A)  (previous_c==0x0A)) || ((previous_c!=0x20) 
(previous_c!=0x0A)  (character_number==characters_count)  (c==0x20)))

//1. ((c!=0x20)  (character_number==1))
//2. ((previous_c==0x20)  (c!=0x20)  (c!=0x0A))
//3. ((previous_c!=0x20)  (c==0x0D))
//!((previous_c!=0x0D)  (c==0x0A))
//4. ((c!=0x20)  (c!=0x0D)  (c!=0x0A)  (previous_c==0x0A))
//5. ((previous_c!=0x20)  (previous_c!=0x0A) 
(character_number==characters_count)  (c==0x20))

this_is_the_same_word=0;
else
this_is_the_same_word=1;

if(this_is_the_same_word==0)
{
words_count++;
word_begin_position[words_count]=character_number;

//printf( the begin char is .
%i,word_begin_position[words_count]);
}

//if(character_number==characters_count)
//printf(the last character);
/*
printf( the number of words is %i\n, words_count);
printf( the current character is . %c\n, c);
if(c==0x0D)
printf( the current character is . 0x0D\n);
if(c==0x0A)
printf( the current character is . 0x0A\n);
*/
previous_c=c;
character_number++;
}
fclose(stream);



word_number=1;
character_number=1;

A_count=1;
E_count=1;

stream = fopen (argv[1],r);

//stream2 = fopen (argv[2],w);

while ((c = fgetc(stream)) != EOF) 

{

other_character_printed=0;
if((character_number = word_begin_position[word_number]) 
(character_number = word_begin_position[word_number+1]) )
{
if(((c=='a') || (c=='а') || (c=='A') || (c=='А')) )
{
if(A_count==1)
{
printf(A1);
A_count=2;
other_character_printed=1;
}
else
{
printf(A2);
A_count=1;
other_character_printed=1;
}
}
else
if((other_character_printed==0)  ((c!='е')  (c!='e') 
(c!='Е')  (c!='E')))
{
printf(%c, c);
other_character_printed=1;
}

if((c=='e') || (c=='е') || (c=='Е') || (c=='E'))
{
if(E_count==1)
{
printf(E1);
E_count=2;
other_character_printed=1;
}
else
{
printf(E2);
E_count=1;
other_character_printed=1;
}

}
else
if((other_character_printed==0)  (((c=='a')  (c=='а') 
(c=='A')  (c=='А'
{
printf(%c, c);
other_character_printed=1;
}
}
else
{
A_count=1;
E_count=1;
word_number++;

}

character_number++;
}
fclose(stream);
//printf( the number of words is %i, words_count);



return 0;

}



why other characters representing number are displayed to the screen except
0?
when the input text file is of the cintent:
ARSeNALE 2012 ARSENALE



It is a bug and nothing else! Nowhere in my code is stated to ignore 0



--

[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #15 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
the output line is:
A1RSE1NA2LE2 212 A1
should be:
A1RSE1NA2LE2 2012 A1


[Bug fortran/59612] iso_fortran_env segfaults with -fdump-fortran-original

2013-12-28 Thread janus at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59612

--- Comment #4 from janus at gcc dot gnu.org ---
(In reply to janus from comment #3)
 Maybe it would make sense to run the testsuite with -fdump-fortran-original,
 in order to check for further problems:

Does not seem to yield any failures here (with the patch from comment 1
applied).


[Bug c/59615] asm goto output or at least clobbered operands

2013-12-28 Thread jakub at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59615

--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org ---
But it would warn about it with -Wsign-compare.  You want unsigned r =
(unsigned) a + b; or similar to avoid undefined behavior if there is a
possibility of signed integer overflow.  Anyway, you definitely don't want to
use inline asm in this case, if there is some code GCC doesn't optimize as good
as you'd like to, just report that.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread sch...@linux-m68k.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Andreas Schwab sch...@linux-m68k.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #16 from Andreas Schwab sch...@linux-m68k.org ---
We are not going to debug your code.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #17 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
please specify the reason for your demand? I can not see anything I missed in
my code!!


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread pinskia at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Andrew Pinski pinskia at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #18 from Andrew Pinski pinskia at gcc dot gnu.org ---
Again this is not a place to learn c programming or get help to debug your
code.  This is a place to report bugs against GCC and I don't see a bug here.
There are other places on the internet to get c programming help.


[Bug c/59616] New: OpenMP standard conflict in parallel default clause

2013-12-28 Thread beamesleach at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59616

Bug ID: 59616
   Summary: OpenMP standard conflict in parallel default clause
   Product: gcc
   Version: 4.8.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: beamesleach at gmail dot com

Created attachment 31528
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31528action=edit
MWE exhibiting error in gcc's OMP predetermined sharing

I'm trying to get OpenMP directives to work under both GCC and Intel compilers,
but I've found a conflict, when using `default(none)` on an `omp parallel for`
directive.

I've been reading through relevant sections of the OpenMP 4.0 standard and I
haven't managed to pick out any obvious contradiction in the compilers'
behaviours, but I think the below compiler error makes the least sense and
might also be the easiest to fix:

$ gcc-4.8 test_ompmin.c -o omp -fopenmp -std=c99
test_ompmin.c:15:68: error: 'b' is predetermined 'shared' for 'shared'
 # pragma omp parallel for schedule(static) default(none) shared(a,b,c)
^

test_ompmin.c is attached - a minimal working example designed to test out this
behaviour.

What's interesting, is g++ does not raise this error, only gcc. Neither do icc
or icpc raise the error; these both exhibit the same behaviour as g++ (they
compile test_ompmin.c fine, but raise an error if `b` is omitted from the
`shared` clause). I'm inclined to surmise that this is a bug in gcc's
implementation, as there are no relevant differences between C and C++ in the
OpenMP specification.



Compile commands that succeed:-

 g++-4.8 test_ompmin.c -o omp-gxx -fopenmp
 icc test_ompmin.c -o omp-icc -openmp -std=c99
 icpc test_ompmin.c -o omp-icpc -openmp


-

GCC versions tested:

Mac OS X (Mavericks)
 gcc 4.8.2 (built with Homebrew)

Linux 2.6.35 (Fedora 14)
 gcc 4.5.1 (x86_64-redhat-linux)

-

Below are sections I copied from the OpenMP specification (v4.0.0) that look
relevant:




2.14.1.1 - Data-sharing Attribute Rules for Variables Referenced in a Construct
===

Certain variables and objects have predetermined data-sharing attributes as
follows:

C/C++
-

- Objects with dynamic storage duration are shared.

-  [ nothing specifically mentioning const variables... ]

Variables with predetermined data-sharing attributes may not be listed in
data-sharing attribute clauses, except for the cases listed below. For these
exceptions only, listing a predetermined variable in a data-sharing attribute
clause is allowed and overrides the variable's predetermined data-sharing
attributes.

- [...]

- Variables with `const`-qualified type having no mutable member may be
  listed in a `firstprivate` clause, even if they are static data members.


2.14.3 - Data-Sharing Atribute Clauses
==

2.14.3.1 - `default` clause
---

The `default` clause explicitly determines the data-sharing attributes of
variables that are referenced in a `parallel`, `task` or `teams` construct and
would otherwise be implicitly determined.

The `default(none)` clause requires that each variable that is referenced in
the
construct, and that does not have a predetermined data-sharing attribute, must
have its data-sharing attribute explicitly determined by being listed in a
data-sharing attribute clause.


2.14.3.2 - `shared` clause
--

The `shared` clause declares one or more list items to be shared by tasks
generated by a `parallel`, `task` or `teams` construct.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #19 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
I do not have errors in my core: other characters processed except '0'. This is
a bug!


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #20 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
'0' is not 'a' in 2 languages and not 'e' in 2 languages in both: small or
capital  variants


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #21 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
Even all characters, which are numeric are processed except '0'. This is a bug!
I do not violate eny C++ rules and I do not receive even any messages while
compilation. This is a bug. You can not hide the truth!


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #22 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
I know that this is not a place to report programming problems, but I do not
see errors in my code


[Bug tree-optimization/59617] New: [vectorizer] ICE in vectorizable_mask_load_store with AVX-512F's gathers enabled.

2013-12-28 Thread kirill.yukhin at intel dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59617

Bug ID: 59617
   Summary: [vectorizer] ICE in vectorizable_mask_load_store with
AVX-512F's gathers enabled.
   Product: gcc
   Version: 4.9.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: kirill.yukhin at intel dot com

Created attachment 31529
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31529action=edit
Reproducer

Hello, I am going to check in a patch, which will
enable AVX-512F new gathers instructions.

New gathers are use mask registers (%kN), while
vectorizable_mask_load_store asserts mask type to be compatible
with operand type.

This fails 416.gamess to build with -mavx512f -Ofast.

Reproducer attached.

Reproduce:
$ gfortran -S -Ofast -mavx512f hss2a.fppized.f

Back trace:
0xbcfc27 vectorizable_mask_load_store
/export/users/kyukhin/gcc/git/gcc/gcc/tree-vect-stmts.c:1901
0xbddf6c vectorizable_call
/export/users/kyukhin/gcc/git/gcc/gcc/tree-vect-stmts.c:2172
0xbe1021 vect_transform_stmt(gimple_statement_base*, gimple_stmt_iterator*,
bool*, _slp_tree*, _slp_instance*)
/export/users/kyukhin/gcc/git/gcc/gcc/tree-vect-stmts.c:7017
0xbe4731 vect_transform_loop(_loop_vec_info*)
/export/users/kyukhin/gcc/git/gcc/gcc/tree-vect-loop.c:6046
0xc00838 vectorize_loops()
/export/users/kyukhin/gcc/git/gcc/gcc/tree-vectorizer.c:476

I'll check my patch in with disabled gathers, so to enable it -
remove `#if 0' in gcc/config/i386/i386.c


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread ktietz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Kai Tietz ktietz at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||ktietz at gcc dot gnu.org
 Resolution|--- |INVALID

--- Comment #23 from Kai Tietz ktietz at gcc dot gnu.org ---
First, don't be so self-righteous. Your program has more then one bug ... for
sure you need to learn this language better ...  within this code there are at
least two major logical failures, and one serious array out-of-bounds access on
uninitialized data, and your coding-style is simply poor.  The C language isn't
Lisp, you don't need that much frames, neither you don't need to repeat within
on logical expression the prior expression ... it just makes code unreadable
... anyway

I won't tell you your bugs, as I am assuming your are a rooky student trying to
learn C and I don't want to destroy the sense of your teachers lesson.

So I close this bug as invalid, as it is ...


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread ktietz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Kai Tietz ktietz at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |WONTFIX

--- Comment #27 from Kai Tietz ktietz at gcc dot gnu.org ---
.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread ktietz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Kai Tietz ktietz at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #25 from Kai Tietz ktietz at gcc dot gnu.org ---
It is none.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #26 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
My code has no errors. It is a bug.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #24 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
Mister,



I have had tragedies in my life, that is why I do not want to make politica
with all. It is a bug and I described why.


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Denis Kolesnik denis.v.koles...@safe-mail.net changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|WONTFIX |---

--- Comment #28 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
commenting gives no change:



//int spec_symbol[7]={0xAE,0xBB,0xAB,0xA9,0x22,0x2F,0x27};


//int eof_symbol[2]={0x0D,0x0A};



other the only one array is declared fully correct as stated at C How to
Program H.M. Deitel Nove University Deitel and Associates P. J. Deitel Deitel
Associates


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #29 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
My code style has nothing to do with it. I even do not tell, that I do not
fully like the interface of this site!!


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #30 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
I use the elements of the array fully correct: 
int word_begin_position[3000];


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread denis.v.koles...@safe-mail.net
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

--- Comment #31 from Denis Kolesnik denis.v.koles...@safe-mail.net ---
Your arguments are based on what?? I argued my arguments!


[Bug c++/59598] very simple code using file open for read

2013-12-28 Thread ktietz at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59598

Kai Tietz ktietz at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #32 from Kai Tietz ktietz at gcc dot gnu.org ---
(In reply to Denis Kolesnik from comment #29)
 My code style has nothing to do with it. I even do not tell, that I do not
 fully like the interface of this site!!

Well, you coding-style and ability is poor.  Believe me. I wasn't referring to
those none-used arrays.

Think about this if-line in your second sample.  It contains the out of bounds
access:

...
if((character_number = word_begin_position[word_number]) 
(character_number = word_begin_position[word_number+1]) )
...

What is word_begin_position[word_number+1]???  Imagine you are within the final
word in your file.  The value at this position isn't initialized and therefore
contains random number.
Btw here in this line is also one of the logical failures you made.  Why your
if-condition includes first character of next word?

So you mights see, or I fear you won't, that your program has more then one bug
and therefore this is a invalid bug-report of gcc.


[Bug c/59618] New: internal compiler error: Killed (program as)

2013-12-28 Thread andrewh at inmarket dot com.au
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59618

Bug ID: 59618
   Summary: internal compiler error: Killed (program as)
   Product: gcc
   Version: unknown
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: andrewh at inmarket dot com.au

Compiling large file:
gcc: internal compiler error: Killed (program as)
Tried with gcc-4.6 i386 (Linux Mint 13 32-bit) and then gcc-4.8 (Linux Mint 16
64-bit compile with -m32)
Same problem. Source file compiles with gcc-4.7.1 ARM and with mingw32 4.8.1
(Win32)

Zip contains:
1/ gccver.txt - the full gcc -v output
2/ i_system.i - the source file preprocessor output
3/ makeout.txt - the full command line and its output


[Bug c/59618] internal compiler error: Killed (program as)

2013-12-28 Thread andrewh at inmarket dot com.au
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59618

--- Comment #1 from inmarket andrewh at inmarket dot com.au ---
Created attachment 31530
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31530action=edit
All files except i_system.i

All files except i_system.i


[Bug c/59618] internal compiler error: Killed (program as)

2013-12-28 Thread andrewh at inmarket dot com.au
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59618

--- Comment #2 from inmarket andrewh at inmarket dot com.au ---
Created attachment 31531
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31531action=edit
Part 3 of 3 for i_system.i

Compressed with 7zip
After extraction combine parts with:
 cat i_system.i-part1 i_system.i-part2 i_system.i-part3  i_system.i


[Bug c/59618] internal compiler error: Killed (program as)

2013-12-28 Thread andrewh at inmarket dot com.au
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59618

--- Comment #3 from inmarket andrewh at inmarket dot com.au ---
Created attachment 31532
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31532action=edit
Part 2 of 3 for i_system.i

Compressed with 7zip
After extraction combine parts with:
 cat i_system.i-part1 i_system.i-part2 i_system.i-part3  i_system.i


[Bug c/59618] internal compiler error: Killed (program as)

2013-12-28 Thread andrewh at inmarket dot com.au
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59618

--- Comment #4 from inmarket andrewh at inmarket dot com.au ---
Created attachment 31533
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31533action=edit
Part 1 of 3 for i_system.i

Compressed with 7zip
After extraction combine parts with:
 cat i_system.i-part1 i_system.i-part2 i_system.i-part3  i_system.i


[Bug c/59619] New: gstaudiotestsrc.c:479:1: error: unrecognizable insn: DEFINE_SQUARE (int16, 32767.0);

2013-12-28 Thread biergaizi2009 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59619

Bug ID: 59619
   Summary: gstaudiotestsrc.c:479:1: error: unrecognizable insn:
DEFINE_SQUARE (int16, 32767.0);
   Product: gcc
   Version: 4.8.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: biergaizi2009 at gmail dot com

mips64el-unknown-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..  
-save-temps -march=loongson2f -mplt -Wa,-mfix-loongson2f-nop -pipe
-fomit-frame-pointer -mno-branch-likely -pthread -I/usr/include/glib-2.0
-I/usr/lib32/glib-2.0/include -pthread -I/usr/include/gstreamer-0.10
-I/usr/include/glib-2.0 -I/usr/lib32/glib-2.0/include -I/usr/include/libxml2 
-DG_THREADS_MANDATORY -DG_DISABLE_CAST_CHECKS -DG_DISABLE_ASSERT -Wall
-Wdeclaration-after-statement -Wvla -Wpointer-arith -Wmissing-declarations
-Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings
-Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs
-Waddress -Waggregate-return -Wno-multichar -Wnested-externs   -pthread
-I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0
-I/usr/lib32/glib-2.0/include -I/usr/include/libxml2  -O2 -march=loongson2f
-mplt -Wa,-mfix-loongson2f-nop -pipe -fomit-frame-pointer -mno-branch-likely -c
-o libgstaudiotestsrc_la-gstaudiotestsrc.lo `test -f 'gstaudiotestsrc.c' ||
echo './'`gstaudiotestsrc.c
mips64el-unknown-linux-gnu-gcc: warning: -pipe ignored because -save-temps
specified
gstaudiotestsrc.c: In function ‘gst_audio_test_src_create_square_int16’:
gstaudiotestsrc.c:479:1: error: unrecognizable insn:
 DEFINE_SQUARE (int16, 32767.0);
 ^  
(insn 106 105 107 8 (set (reg:SI 284)   
(if_then_else:SI (ne:CC (reg:CC 67 $fcc0)   
(const_int 0 [0]))  
(reg:SI 249 [ iftmp.184 ])  
(reg:SI 251 [ iftmp.184 ]))) -1 
 (nil)) 
gstaudiotestsrc.c:479:1: internal compiler error: in extract_insn, at
recog.c:2154 
Please submit a full bug report,
with preprocessed source if appropriate.

[Bug c/59620] New: gstaudiotestsrc.c:479:1: error: unrecognizable insn: DEFINE_SQUARE (int16, 32767.0);

2013-12-28 Thread biergaizi2009 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59620

Bug ID: 59620
   Summary: gstaudiotestsrc.c:479:1: error: unrecognizable insn:
DEFINE_SQUARE (int16, 32767.0);
   Product: gcc
   Version: 4.8.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: biergaizi2009 at gmail dot com

mips64el-unknown-linux-gnu-gcc -std=gnu99 -DHAVE_CONFIG_H -I. -I../..  
-save-temps -march=loongson2f -mplt -Wa,-mfix-loongson2f-nop -pipe
-fomit-frame-pointer -mno-branch-likely -pthread -I/usr/include/glib-2.0
-I/usr/lib32/glib-2.0/include -pthread -I/usr/include/gstreamer-0.10
-I/usr/include/glib-2.0 -I/usr/lib32/glib-2.0/include -I/usr/include/libxml2 
-DG_THREADS_MANDATORY -DG_DISABLE_CAST_CHECKS -DG_DISABLE_ASSERT -Wall
-Wdeclaration-after-statement -Wvla -Wpointer-arith -Wmissing-declarations
-Wmissing-prototypes -Wredundant-decls -Wundef -Wwrite-strings
-Wformat-nonliteral -Wformat-security -Winit-self -Wmissing-include-dirs
-Waddress -Waggregate-return -Wno-multichar -Wnested-externs   -pthread
-I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0
-I/usr/lib32/glib-2.0/include -I/usr/include/libxml2  -O2 -march=loongson2f
-mplt -Wa,-mfix-loongson2f-nop -pipe -fomit-frame-pointer -mno-branch-likely -c
-o libgstaudiotestsrc_la-gstaudiotestsrc.lo `test -f 'gstaudiotestsrc.c' ||
echo './'`gstaudiotestsrc.c
mips64el-unknown-linux-gnu-gcc: warning: -pipe ignored because -save-temps
specified
gstaudiotestsrc.c: In function ‘gst_audio_test_src_create_square_int16’:
gstaudiotestsrc.c:479:1: error: unrecognizable insn:
 DEFINE_SQUARE (int16, 32767.0);
 ^  
(insn 106 105 107 8 (set (reg:SI 284)   
(if_then_else:SI (ne:CC (reg:CC 67 $fcc0)   
(const_int 0 [0]))  
(reg:SI 249 [ iftmp.184 ])  
(reg:SI 251 [ iftmp.184 ]))) -1 
 (nil)) 
gstaudiotestsrc.c:479:1: internal compiler error: in extract_insn, at
recog.c:2154 
Please submit a full bug report,
with preprocessed source if appropriate.

[Bug c/59620] gstaudiotestsrc.c:479:1: error: unrecognizable insn: DEFINE_SQUARE (int16, 32767.0);

2013-12-28 Thread biergaizi2009 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59620

--- Comment #1 from Tom Li biergaizi2009 at gmail dot com ---
Created attachment 31534
  -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=31534action=edit
preprocessed source


[Bug c/59620] gstaudiotestsrc.c:479:1: error: unrecognizable insn: DEFINE_SQUARE (int16, 32767.0);

2013-12-28 Thread biergaizi2009 at gmail dot com
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59620

--- Comment #2 from Tom Li biergaizi2009 at gmail dot com ---
Using built-in specs.
COLLECT_GCC=/usr/mips64el-unknown-linux-gnu/gcc-bin/4.8.2/gcc
COLLECT_LTO_WRAPPER=/usr/libexec/gcc/mips64el-unknown-linux-gnu/4.8.2/lto-wrapper
Target: mips64el-unknown-linux-gnu
Configured with: /var/tmp/portage/sys-devel/gcc-4.8.2/work/gcc-4.8.2/configure
--prefix=/usr --bindir=/usr/mips64el-unknown-linux-gnu/gcc-bin/4.8.2
--includedir=/usr/lib/gcc/mips64el-unknown-linux-gnu/4.8.2/include
--datadir=/usr/share/gcc-data/mips64el-unknown-linux-gnu/4.8.2
--mandir=/usr/share/gcc-data/mips64el-unknown-linux-gnu/4.8.2/man
--infodir=/usr/share/gcc-data/mips64el-unknown-linux-gnu/4.8.2/info
--with-gxx-include-dir=/usr/lib/gcc/mips64el-unknown-linux-gnu/4.8.2/include/g++-v4
--host=mips64el-unknown-linux-gnu --build=mips64el-unknown-linux-gnu
--disable-altivec --disable-fixed-point --without-cloog --disable-lto
--enable-nls --without-included-gettext --with-system-zlib --enable-obsolete
--disable-werror --enable-secureplt --enable-multilib --enable-libmudflap
--disable-libssp --disable-libgomp
--with-python-dir=/share/gcc-data/mips64el-unknown-linux-gnu/4.8.2/python
--enable-checking=release --disable-libgcj --enable-libstdcxx-time
--disable-libquadmath --with-abi=n32 --enable-languages=c,c++ --enable-shared
--enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu
--with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.8.2 p1.0,
pie-0.5.8'
Thread model: posix
gcc version 4.8.2 (Gentoo 4.8.2 p1.0, pie-0.5.8)