This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug fortran/18022] problem with structure and calling a function



------- Comment #22 from cvs-commit at gcc dot gnu dot org  2005-10-23 06:59 -------
Subject: Bug 18022

CVSROOT:        /cvs/gcc
Module name:    gcc
Changes by:     pault@gcc.gnu.org       2005-10-23 06:59:18

Modified files:
        gcc/fortran    : trans-expr.c iresolve.c ChangeLog 
        libgfortran/intrinsics: spread_generic.c 
        libgfortran    : ChangeLog 
        gcc/testsuite  : ChangeLog 
Added files:
        gcc/testsuite/gfortran.dg: assign_func_dtcomp_1.f90 
                                   merge_char_const.f90 
                                   spread_scalar_source.f90 

Log message:
        2005-10-23  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/18022
        * trans-expr.c (gfc_trans_arrayfunc_assign): Return NULL
        if there is a component ref during an array ref to force
        use of temporary in assignment.

        PR fortran/24311
        PR fortran/24384
        * fortran/iresolve.c (check_charlen_present): New function to
        add a charlen to the typespec, in the case of constant
        expressions.
        (gfc_resolve_merge, gfc_resolve_spread): Call.the above.
        (gfc_resolve_spread): Make calls to library functions that
        handle the case of the spread intrinsic with a scalar source.
        * libgfortran/intrinsics/spread_generic.c (spread_internal
        _scalar): New function that handles the special case of spread
        with a scalar source. This has interface functions -
        (spread_scalar, spread_char_scalar): New functions to interface
        with the calls specified in gfc_resolve_spread.

        2005-10-23  Paul Thomas  <pault@gcc.gnu.org>

        PR fortran/18022
        gfortran.dg/assign_func_dtcomp_1.f90: New test.

        PR fortran/24311
        gfortran.dg/merge_char_const.f90: New test.

        PR fortran/24384
        gfortran.dg/spread_scalar_source.f90: New test.

Patches:
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/trans-expr.c.diff?cvsroot=gcc&r1=1.65&r2=1.66
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/iresolve.c.diff?cvsroot=gcc&r1=1.42&r2=1.43
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/fortran/ChangeLog.diff?cvsroot=gcc&r1=1.592&r2=1.593
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgfortran/intrinsics/spread_generic.c.diff?cvsroot=gcc&r1=1.12&r2=1.13
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/libgfortran/ChangeLog.diff?cvsroot=gcc&r1=1.329&r2=1.330
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gfortran.dg/assign_func_dtcomp_1.f90.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gfortran.dg/merge_char_const.f90.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/gfortran.dg/spread_scalar_source.f90.diff?cvsroot=gcc&r1=NONE&r2=1.1
http://gcc.gnu.org/cgi-bin/cvsweb.cgi/gcc/gcc/testsuite/ChangeLog.diff?cvsroot=gcc&r1=1.6234&r2=1.6235


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=18022


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]