From: Tobias Burnus Date: Mon, 27 May 2013 12:32:40 +0000 (+0200) Subject: expr.c (gfc_build_intrinsic_call): Make symbol as X-Git-Tag: releases/gcc-4.9.0~5682 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=9606f3c9b1ba304999a045d8024fb04ab2207418;p=thirdparty%2Fgcc.git expr.c (gfc_build_intrinsic_call): Make symbol as 2013-05-27 Tobias Burnus * expr.c (gfc_build_intrinsic_call): Make symbol as * attr.artificial. * intrinsic.c (gfc_is_intrinsic): Disable std check for those. From-SVN: r199355 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index eccce10ee111..4d5088eb7c14 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,8 @@ +2013-05-27 Tobias Burnus + + * expr.c (gfc_build_intrinsic_call): Make symbol as attr.artificial. + * intrinsic.c (gfc_is_intrinsic): Disable std check for those. + 2013-05-22 Tobias Burnus * resolve.c (get_temp_from_expr): Change mangling to diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index ab62c180d3d9..3ece2d3b70c0 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -4657,6 +4657,7 @@ gfc_build_intrinsic_call (gfc_namespace *ns, gfc_isym_id id, const char* name, result->symtree->n.sym->intmod_sym_id = id; result->symtree->n.sym->attr.flavor = FL_PROCEDURE; result->symtree->n.sym->attr.intrinsic = 1; + result->symtree->n.sym->attr.artificial = 1; va_start (ap, numarg); atail = NULL; diff --git a/gcc/fortran/intrinsic.c b/gcc/fortran/intrinsic.c index 3251ebb558df..c2e1525a2683 100644 --- a/gcc/fortran/intrinsic.c +++ b/gcc/fortran/intrinsic.c @@ -1046,7 +1046,8 @@ gfc_is_intrinsic (gfc_symbol* sym, int subroutine_flag, locus loc) return false; /* See if this intrinsic is allowed in the current standard. */ - if (!gfc_check_intrinsic_standard (isym, &symstd, false, loc)) + if (!gfc_check_intrinsic_standard (isym, &symstd, false, loc) + && !sym->attr.artificial) { if (sym->attr.proc == PROC_UNKNOWN && gfc_option.warn_intrinsics_std)