Re: About TYPE_DECL, typedefs and TYPE_NEXT_VARIANT

2011-11-19 Thread Dodji Seketeli
Alberto Lozano Alelu  a écrit:

> When I get a typedef, I would like to show the definition. I use:
>
> tree v_next_type=DECL_ORIGINAL_TYPE(TYPE_NAME(v_type));
>
> But this expression isn't always correct.

You are correct.  There are times where typedefs are thrown away
(stripped) and only the underlying type is kept.

To my knowledge, this is done when in a template instantiation the
argument is a typedef.  For instance:

template
struct S {
  T p; //#1
};
typedef int tint0;
typedef int tint1;

S s0; //#2
S s1; //#3

At #2, tint0 is stripped (and thus becomes int) when we build the
instantiation S.  So what is built is really S.  Then when
we are to build S at #3, we strip tint1 to get int, and so we
don't build a new S type, we just re-use the one we already have.

So for the instantiation S, when you look at type type of p at
#1, you get int.  Not tint0.

I believe this is done to save resources.  It's more efficient to have
just one S in the system, rather than having S, S
and S.

Unfortunately, there is no easy way around this at the moment.

Otherwise, outside of the context of template arguments, I think we
pretty much keep typedefs around.

-- 
Dodji


Re: new mirror site Gcc

2011-11-19 Thread Gerald Pfeifer
On Mon, 7 Nov 2011, В.Тутубалин wrote:
> I want to host a new mirror site Gcc.
> Server name - Latvia ChampGround
> Server admin - vt.avtm...@gmail.com, Vladimir
> Server location - Latvia, Riga
> Server address - champground.com
> Server protocol - http
> Connection speed - 100 Mbps 

Sure, go ahead!  Once the mirror is up and running, please send
us a patch for  http://gcc.gnu.org/mirrors.html  on how you would
like the mirror to be represented there.

Gerald

gcc-4.7-20111119 is now available

2011-11-19 Thread gccadmin
Snapshot gcc-4.7-2019 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/4.7-2019/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 4.7 SVN branch
with the following options: svn://gcc.gnu.org/svn/gcc/trunk revision 181516

You'll find:

 gcc-4.7-2019.tar.bz2 Complete GCC

  MD5=a49da9b2d0f443d2ce289e27fae5b80c
  SHA1=bc456d076a1d0f47edfcd3584608ada152de4f94

Diffs from 4.7-2012 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-4.7
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.