From: Paolo Carlini Date: Tue, 26 Feb 2008 10:09:43 +0000 (+0000) Subject: re PR c++/35323 (ICE calling functions with fixed-point type parameter) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=50a70b6bbb7a0a80f39bc609a9a61c5794e5c9b3;p=gcc.git re PR c++/35323 (ICE calling functions with fixed-point type parameter) /cp 2008-02-26 Paolo Carlini PR c++/35323 * name-lookup.c (arg_assoc_type): Handle FIXED_POINT_TYPE. /testsuite 2008-02-26 Paolo Carlini PR c++/35323 * g++.dg/lookup/crash7.C: New. From-SVN: r132669 --- diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 2738490e78c..aa4bf07f4ea 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2008-02-26 Paolo Carlini + + PR c++/35323 + * name-lookup.c (arg_assoc_type): Handle FIXED_POINT_TYPE. + 2008-02-26 Manuel Lopez-Ibanez * typeck.c (build_class_member_access_expr): Add appropriate diff --git a/gcc/cp/name-lookup.c b/gcc/cp/name-lookup.c index 74a25bd2a31..9a95d150eec 100644 --- a/gcc/cp/name-lookup.c +++ b/gcc/cp/name-lookup.c @@ -1,5 +1,5 @@ /* Definitions for C++ name lookup routines. - Copyright (C) 2003, 2004, 2005, 2006, 2007 + Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. Contributed by Gabriel Dos Reis @@ -4601,6 +4601,7 @@ arg_assoc_type (struct arg_lookup *k, tree type) case COMPLEX_TYPE: case VECTOR_TYPE: case BOOLEAN_TYPE: + case FIXED_POINT_TYPE: return false; case RECORD_TYPE: if (TYPE_PTRMEMFUNC_P (type)) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 62d37695baa..b627135f100 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,8 @@ +2008-02-26 Paolo Carlini + + PR c++/35323 + * g++.dg/lookup/crash7.C: New. + 2008-02-26 Kaz Kojima * gcc.c-torture/execute/nest-align-1.c: Use the largest alignment. diff --git a/gcc/testsuite/g++.dg/lookup/crash7.C b/gcc/testsuite/g++.dg/lookup/crash7.C new file mode 100644 index 00000000000..11176677cb8 --- /dev/null +++ b/gcc/testsuite/g++.dg/lookup/crash7.C @@ -0,0 +1,9 @@ +// PR c++/35323 +// { dg-options "" } + +void foo(int); + +void bar() +{ + foo(1r); // { dg-error "unnamed-fixed" } +}