diff options
author | Khem Raj <raj.khem@gmail.com> | 2011-06-12 20:56:57 -0700 |
---|---|---|
committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2011-06-14 15:29:15 +0100 |
commit | ec9b6d061b8495b9316ae90e5a71a499ef2873ee (patch) | |
tree | dc922c9ddd98f937eb2095b07f6c3b5043e3a491 /meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch | |
parent | fbc60cc5ba2284bfcaea8c82001a49b7795cc2a2 (diff) | |
download | poky-ec9b6d061b8495b9316ae90e5a71a499ef2873ee.tar.gz |
gcc-4.6.0: Bring in patches from FSF 4.6 branch
This brings in new patches from 4.6 release branch
updates the comment section of existing branch to not
contain patch numbers.
Tested build on qemu for arm ppc mips x86 and x86_64
(From OE-Core rev: 3968f33b6542cf20cf63cf49bfbc033bd2486295)
Signed-off-by: Khem Raj <raj.khem@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch')
-rw-r--r-- | meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch new file mode 100644 index 0000000000..d5bdf2ca9d --- /dev/null +++ b/meta/recipes-devtools/gcc/gcc-4.6.0/gcc-4_6-branch-backports/0322-PR-c-47336.patch | |||
@@ -0,0 +1,53 @@ | |||
1 | From cabe6e4db49d70512f795dd87a2c6e67f2587648 Mon Sep 17 00:00:00 2001 | ||
2 | From: jason <jason@138bc75d-0d04-0410-961f-82ee72b054a4> | ||
3 | Date: Wed, 25 May 2011 01:08:24 +0000 | ||
4 | Subject: [PATCH] PR c++/47336 | ||
5 | * error.c (dump_template_bindings): Suppress access control. | ||
6 | |||
7 | git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/branches/gcc-4_6-branch@174160 138bc75d-0d04-0410-961f-82ee72b054a4 | ||
8 | |||
9 | index 28305d2..2477123 100644 | ||
10 | --- a/gcc/cp/error.c | ||
11 | +++ b/gcc/cp/error.c | ||
12 | @@ -312,7 +312,9 @@ dump_template_bindings (tree parms, tree args, VEC(tree,gc)* typenames) | ||
13 | pp_cxx_whitespace (cxx_pp); | ||
14 | pp_equal (cxx_pp); | ||
15 | pp_cxx_whitespace (cxx_pp); | ||
16 | + push_deferring_access_checks (dk_no_check); | ||
17 | t = tsubst (t, args, tf_none, NULL_TREE); | ||
18 | + pop_deferring_access_checks (); | ||
19 | /* Strip typedefs. We can't just use TFF_CHASE_TYPEDEF because | ||
20 | pp_simple_type_specifier doesn't know about it. */ | ||
21 | t = strip_typedefs (t); | ||
22 | new file mode 100644 | ||
23 | index 0000000..e7da961 | ||
24 | --- /dev/null | ||
25 | +++ b/gcc/testsuite/g++.dg/cpp0x/error3.C | ||
26 | @@ -0,0 +1,24 @@ | ||
27 | +// PR c++/47336 | ||
28 | +// { dg-options -std=c++0x } | ||
29 | + | ||
30 | +template <typename T> | ||
31 | +void g(T t) | ||
32 | +{ | ||
33 | + t+1; // { dg-error "no match" } | ||
34 | +} | ||
35 | + | ||
36 | +template <typename S> | ||
37 | +class C | ||
38 | +{ | ||
39 | + struct D {} d; | ||
40 | +public: | ||
41 | + decltype(g(d)) h() | ||
42 | + { | ||
43 | + return g(d); | ||
44 | + } | ||
45 | +}; | ||
46 | + | ||
47 | +int main() | ||
48 | +{ | ||
49 | + C<int>().h(); | ||
50 | +} | ||
51 | -- | ||
52 | 1.7.0.4 | ||
53 | |||