* [PATCH, PR61191, Cilk+] Fix ICE on syntax error
@ 2014-05-20 14:32 Zamyatin, Igor
2014-05-20 15:27 ` H.J. Lu
0 siblings, 1 reply; 5+ messages in thread
From: Zamyatin, Igor @ 2014-05-20 14:32 UTC (permalink / raw)
To: GCC Patches (gcc-patches@gcc.gnu.org)
Hi all!
The following patch fixes the ICE for the cilk code with syntax error.
Regtested on x86_64.
Ok for trunk and 4.9?
Thanks,
Igor
gcc/c/ChangeLog:
2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
* c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
function parameters.
diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c
index 0ac6ba8..127f9a1 100644
--- a/gcc/c/c-array-notation.c
+++ b/gcc/c/c-array-notation.c
@@ -229,6 +229,8 @@ fix_builtin_array_notation_fn (tree an_builtin_fn, tree *new_var)
/* Fully fold any EXCESSIVE_PRECISION EXPR that can occur in the function
parameter. */
func_parm = c_fully_fold (func_parm, false, NULL);
+ if (func_parm == error_mark_node)
+ return error_mark_node;
location = EXPR_LOCATION (an_builtin_fn);
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH, PR61191, Cilk+] Fix ICE on syntax error
2014-05-20 14:32 [PATCH, PR61191, Cilk+] Fix ICE on syntax error Zamyatin, Igor
@ 2014-05-20 15:27 ` H.J. Lu
2014-05-20 16:36 ` Jeff Law
0 siblings, 1 reply; 5+ messages in thread
From: H.J. Lu @ 2014-05-20 15:27 UTC (permalink / raw)
To: Zamyatin, Igor; +Cc: GCC Patches (gcc-patches@gcc.gnu.org)
On Tue, May 20, 2014 at 7:31 AM, Zamyatin, Igor <igor.zamyatin@intel.com> wrote:
> Hi all!
>
> The following patch fixes the ICE for the cilk code with syntax error.
>
> Regtested on x86_64.
> Ok for trunk and 4.9?
>
> Thanks,
> Igor
>
>
> gcc/c/ChangeLog:
>
> 2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
>
> * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
> function parameters.
>
>
> diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c
> index 0ac6ba8..127f9a1 100644
> --- a/gcc/c/c-array-notation.c
> +++ b/gcc/c/c-array-notation.c
> @@ -229,6 +229,8 @@ fix_builtin_array_notation_fn (tree an_builtin_fn, tree *new_var)
> /* Fully fold any EXCESSIVE_PRECISION EXPR that can occur in the function
> parameter. */
> func_parm = c_fully_fold (func_parm, false, NULL);
> + if (func_parm == error_mark_node)
> + return error_mark_node;
>
> location = EXPR_LOCATION (an_builtin_fn);
>
You should include a testcase.
--
H.J.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH, PR61191, Cilk+] Fix ICE on syntax error
2014-05-20 15:27 ` H.J. Lu
@ 2014-05-20 16:36 ` Jeff Law
2014-05-21 12:49 ` Zamyatin, Igor
0 siblings, 1 reply; 5+ messages in thread
From: Jeff Law @ 2014-05-20 16:36 UTC (permalink / raw)
To: H.J. Lu, Zamyatin, Igor; +Cc: GCC Patches (gcc-patches@gcc.gnu.org)
On 05/20/14 09:27, H.J. Lu wrote:
> On Tue, May 20, 2014 at 7:31 AM, Zamyatin, Igor <igor.zamyatin@intel.com> wrote:
>> Hi all!
>>
>> The following patch fixes the ICE for the cilk code with syntax error.
>>
>> Regtested on x86_64.
>> Ok for trunk and 4.9?
>>
>> Thanks,
>> Igor
>>
>>
>> gcc/c/ChangeLog:
>>
>> 2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
>>
>> * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
>> function parameters.
>>
>>
>> diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c
>> index 0ac6ba8..127f9a1 100644
>> --- a/gcc/c/c-array-notation.c
>> +++ b/gcc/c/c-array-notation.c
>> @@ -229,6 +229,8 @@ fix_builtin_array_notation_fn (tree an_builtin_fn, tree *new_var)
>> /* Fully fold any EXCESSIVE_PRECISION EXPR that can occur in the function
>> parameter. */
>> func_parm = c_fully_fold (func_parm, false, NULL);
>> + if (func_parm == error_mark_node)
>> + return error_mark_node;
>>
>> location = EXPR_LOCATION (an_builtin_fn);
>>
>
> You should include a testcase.
Agreed. This definitely should include a testcase.
jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* RE: [PATCH, PR61191, Cilk+] Fix ICE on syntax error
2014-05-20 16:36 ` Jeff Law
@ 2014-05-21 12:49 ` Zamyatin, Igor
2014-05-21 13:05 ` Jeff Law
0 siblings, 1 reply; 5+ messages in thread
From: Zamyatin, Igor @ 2014-05-21 12:49 UTC (permalink / raw)
To: Jeff Law, H.J. Lu; +Cc: GCC Patches (gcc-patches@gcc.gnu.org)
Please see the patch with the testcase
Thanks,
Igor
gcc/c/ChangeLog:
2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
PR c/61191
* c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
function parameters.
gcc/testsuite/ChangeLog
2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
PR c/61191
* c-c++-common/cilk-plus/AN/pr61191.c: Check for correct
handling of the case with syntax error.
diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c
index 0ac6ba8..127f9a1 100644
--- a/gcc/c/c-array-notation.c
+++ b/gcc/c/c-array-notation.c
@@ -229,6 +229,8 @@ fix_builtin_array_notation_fn (tree an_builtin_fn, tree *new_var)
/* Fully fold any EXCESSIVE_PRECISION EXPR that can occur in the function
parameter. */
func_parm = c_fully_fold (func_parm, false, NULL);
+ if (func_parm == error_mark_node)
+ return error_mark_node;
location = EXPR_LOCATION (an_builtin_fn);
diff --git a/gcc/testsuite/c-c++-common/cilk-plus/AN/pr61191.c b/gcc/testsuite/c-c++-common/cilk-plus/AN/pr61191.c
new file mode 100644
index 0000000..e27819b
--- /dev/null
+++ b/gcc/testsuite/c-c++-common/cilk-plus/AN/pr61191.c
@@ -0,0 +1,10 @@
+/* PR c/61191 */
+/* { dg-do compile } */
+/* { dg-options "-fcilkplus" } */
+
+double f(double * A, double * B)
+{
+ return __sec_reduce_add((B[0:500])(;
+/* { dg-error "expected expression before ';' token" "" {target *-*-*} 7 } */
+/* { dg-error "called object" "" {target *-*-*} 7 } */
+} /* { dg-error "expected" } */
> -----Original Message-----
> From: Jeff Law [mailto:law@redhat.com]
> Sent: Tuesday, May 20, 2014 8:36 PM
> To: H.J. Lu; Zamyatin, Igor
> Cc: GCC Patches (gcc-patches@gcc.gnu.org)
> Subject: Re: [PATCH, PR61191, Cilk+] Fix ICE on syntax error
>
> On 05/20/14 09:27, H.J. Lu wrote:
> > On Tue, May 20, 2014 at 7:31 AM, Zamyatin, Igor
> <igor.zamyatin@intel.com> wrote:
> >> Hi all!
> >>
> >> The following patch fixes the ICE for the cilk code with syntax error.
> >>
> >> Regtested on x86_64.
> >> Ok for trunk and 4.9?
> >>
> >> Thanks,
> >> Igor
> >>
> >>
> >> gcc/c/ChangeLog:
> >>
> >> 2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
> >>
> >> * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
> >> function parameters.
> >>
> >>
> >> diff --git a/gcc/c/c-array-notation.c b/gcc/c/c-array-notation.c
> >> index 0ac6ba8..127f9a1 100644
> >> --- a/gcc/c/c-array-notation.c
> >> +++ b/gcc/c/c-array-notation.c
> >> @@ -229,6 +229,8 @@ fix_builtin_array_notation_fn (tree an_builtin_fn,
> tree *new_var)
> >> /* Fully fold any EXCESSIVE_PRECISION EXPR that can occur in the
> function
> >> parameter. */
> >> func_parm = c_fully_fold (func_parm, false, NULL);
> >> + if (func_parm == error_mark_node)
> >> + return error_mark_node;
> >>
> >> location = EXPR_LOCATION (an_builtin_fn);
> >>
> >
> > You should include a testcase.
> Agreed. This definitely should include a testcase.
>
> jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH, PR61191, Cilk+] Fix ICE on syntax error
2014-05-21 12:49 ` Zamyatin, Igor
@ 2014-05-21 13:05 ` Jeff Law
0 siblings, 0 replies; 5+ messages in thread
From: Jeff Law @ 2014-05-21 13:05 UTC (permalink / raw)
To: Zamyatin, Igor, H.J. Lu; +Cc: GCC Patches (gcc-patches@gcc.gnu.org)
On 05/21/14 06:48, Zamyatin, Igor wrote:
> Please see the patch with the testcase
>
> Thanks,
> Igor
>
> gcc/c/ChangeLog:
>
> 2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
>
> PR c/61191
> * c-array-notation.c (fix_builtin_array_notation_fn): Check invalid
> function parameters.
>
> gcc/testsuite/ChangeLog
>
> 2014-05-20 Igor Zamyatin <igor.zamyatin@intel.com>
>
> PR c/61191
> * c-c++-common/cilk-plus/AN/pr61191.c: Check for correct
> handling of the case with syntax error.
This is fine. Please install.
Thanks,
Jeff
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2014-05-21 13:05 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-05-20 14:32 [PATCH, PR61191, Cilk+] Fix ICE on syntax error Zamyatin, Igor
2014-05-20 15:27 ` H.J. Lu
2014-05-20 16:36 ` Jeff Law
2014-05-21 12:49 ` Zamyatin, Igor
2014-05-21 13:05 ` Jeff Law
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).