From: Laurynas Biveinis Date: Fri, 20 Jun 2008 13:57:00 +0000 (+0000) Subject: re PR debug/34908 (valgrind error indication from testsuite hashtab.c : htab_hash_string) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=952137502b559919c0cf1c6087ac7d4f3ba3a32c;p=gcc.git re PR debug/34908 (valgrind error indication from testsuite hashtab.c : htab_hash_string) 2008-06-20 Laurynas Biveinis Tobias Burnus PR fortran/34908 PR fortran/36276 * scanner.c (preprocessor_line): do not call gfc_free for current_file->filename if it differs from filename. From-SVN: r136989 --- diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index bc069651d5b..7c145e1222b 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,11 @@ +2008-06-20 Laurynas Biveinis + Tobias Burnus + + PR fortran/34908 + PR fortran/36276 + * scanner.c (preprocessor_line): do not call gfc_free for + current_file->filename if it differs from filename. + 2008-06-20 Kaveh R. Ghazi * arith.c (hollerith2representation): Fix for -Wc++-compat. @@ -1139,7 +1147,7 @@ (check_init_expr): Remove tests that first argument is an array in the call to scalarize_intrinsic_call. -2008-04-06 Tobias Schlüter +2008-04-06 Tobias Schlüter PR fortran/35832 * io.c (io_tag): Add field 'value'. Split 'spec' field in @@ -1298,7 +1306,7 @@ function, ensure that the derived type is visible in the same namespace as the function. -2008-03-23 Tobias Schlüter +2008-03-23 Tobias Schlüter * trans.h: Use fold_build in build1_v, build2_v and build3_v macros. @@ -1496,7 +1504,7 @@ (gfc_call_realloc): Likewise. * trans-io.c (gfc_trans_io_runtime_check): Likewise. -2008-02-24 Tobias Schlüter +2008-02-24 Tobias Schlüter * arith.c: Update copyright years. * arith.h: Likewise. @@ -1560,7 +1568,7 @@ (gfc_simplify_real): Add call gfc_clear_ts to initialize the temporary gfc_typspec variable. -2008-02-24 Tobias Schlüter +2008-02-24 Tobias Schlüter * trans-array.c (gfc_conv_descriptor_data_get, gfc_conv_descriptor_data_set_internal, diff --git a/gcc/fortran/scanner.c b/gcc/fortran/scanner.c index 44e6d86bd4f..48f148d300a 100644 --- a/gcc/fortran/scanner.c +++ b/gcc/fortran/scanner.c @@ -1652,7 +1652,9 @@ preprocessor_line (gfc_char_t *c) if (strcmp (current_file->filename, filename) != 0) { - gfc_free (current_file->filename); + /* FIXME: we leak the old filename because a pointer to it may be stored + in the linemap. Alternative could be using GC or updating linemap to + point to the new name, but there is no API for that currently. */ current_file->filename = xstrdup (filename); }