avr-libc-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[avr-libc-dev] gcc4.6 vs avr-libc-1.6.8?


From: dpc
Subject: [avr-libc-dev] gcc4.6 vs avr-libc-1.6.8?
Date: Fri, 18 Jun 2010 06:39:32 +0900
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (darwin)

apologies if this is the wrong list or something i missed in the
archives.

short story: i get an ICE w/ gcc 4.6 when building avr-libc-1.4.8.

longer story:

i needed to re-install an avr toolchain and already had binutils/gcc in
source-code-control form laying around so i just re-built them for avr,
grabbed the 1.4.8 package, and tried to build. the build dies w/ this
ICE message:

  ../../../libc/stdlib/dtostre.c: In function 'dtostre':
  ../../../libc/stdlib/dtostre.c:63:3: internal compiler error: in 
build_unary_op, at c-typeck.c:3773
  Please submit a full bug report,
  with preprocessed source if appropriate.
  See <http://gcc.gnu.org/bugs.html> for instructions.

the line # is close because i added a little printf to get the tree
nodes printed because they were optimized away. the assertion we're
hitting is:

  gcc_assert (quals == orig_quals
   || TREE_CODE (argtype) == FUNCTION_TYPE);

where the quals don't match (quals==1 and orig_quals==0), and
argtype==array_type from the attribute(progmem) qualified array in
dtostre.c

    __attribute__((progmem)) static char str_nan[2][4] =
        {"nan", "NAN"};

the comment in c-type.c above the failing block is

      /* If the lvalue is const or volatile, merge that into the type
         to which the address will point.  This should only be needed
         for function types.  */

where teh assertion seems to be about being 'sure' that the thinking for
the last sentence is correct. if i get rid of the tree-code check in the
assertion things seem to build ok (at least by my eye if i build w/ -S).

finally, the question. is this a gcc thing or an avr-libc thing?

\p
---
If one does not understand a person, one tends to regard him as a fool.
                - Carl Jung



reply via email to

[Prev in Thread] Current Thread [Next in Thread]