2016-02-23 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/69456
* io/list_read.c (read_real): If digit is missing from exponent issue
an error. (parse_real): Likewise and adjusted error message to clarify
it is part of a complex number.
(nml_read_obj): Bump item count and add comment that this is used to
identify which item in a namelist read has a problem.
PR libgfortran/69456
* gfortran.dg/namelist_89.f90: New test.
* gfortran.dg/pr59700.f90: Update test..
From-SVN: r233641
gcc/testsuite/ChangeLog:
PR preprocessor/69126
PR preprocessor/69543
* c-c++-common/pr69126-2-long.c: New test.
* c-c++-common/pr69126-2-short.c: New test.
* c-c++-common/pr69543-1.c: Remove xfail.
libcpp/ChangeLog:
PR preprocessor/69126
PR preprocessor/69543
* line-map.c (linemap_compare_locations): At the function top,
replace inlined bodies of get_location_from_adhoc_loc with calls
to get_location_from_adhoc_loc. Add a pair of calls to
get_location_from_adhoc_loc at the bottom of the function, to
avoid meaningless comparisons of ad-hoc and non-ad-hoc locations.
From-SVN: r233638
We had some regressions in the ability for _Pragma to disable a warning
(PR preprocessor/69126, PR preprocessor/69543, PR preprocessor/69558).
This patch attempts to add more test coverage for this, for the
various combinations of:
- various warnings:
-Wunused-variable
-Wuninitialized
-Wdeprecated-declarations
- various combinations of location of _Pragma relative to location of
the warning:
- _Pragma is in a macro, warning isn't a macro
- neither is in a macro
- _Pragma isnt't in a macro, warning is in a macro
- in different macros
- both in the same macro
- C vs C++ frontend.
It adds some XFAILs:
- pr69543-1.c for C++ (fixed in the followup patch)
- pr69543-3.c for both C and C++
- pr69543-4.c for both C and C++
- pr69558.c for C++ (moving it from gcc.dg to c-c++-common,
marking it as xfail for C++ for now)
gcc/testsuite/ChangeLog:
PR preprocessor/69126
PR preprocessor/69543
PR preprocessor/69558
* c-c++-common/pr69126.c (MACRO_1, test_1): New.
(f): Rename to...
(test_2): ...this, and add leading comment.
(MACRO_3, test_3): New.
(MACRO_4A, MACRO_4B, test_4): New.
(MACRO): Rename to...
(MACRO_5): ...this.
(g): Rename to...
(test_5): ...this, updating for renaming of MACRO, and
add leading comment.
* c-c++-common/pr69543-1.c: New.
* c-c++-common/pr69543-2.c: New.
* c-c++-common/pr69543-3.c: New.
* c-c++-common/pr69543-4.c: New.
* c-c++-common/pr69558-1.c: New.
* c-c++-common/pr69558-2.c: New.
* c-c++-common/pr69558-3.c: New.
* c-c++-common/pr69558-4.c: New.
* gcc.dg/pr69558.c: Move to...
* c-c++-common/pr69558.c: ...here. Add dg-bogus directives, with
xfail for c++.
From-SVN: r233637
2016-02-23 Richard Biener <rguenther@suse.de>
* alloc-pool.h (struct allocation_object): Make id member
conditional on CHECKING_P again.
(get_instance): Adjust.
(base_pool_allocator): Likewise.
From-SVN: r233635
DECL_SOURCE_FILE can be NULL (for example when DECL_ARTIFICIAL).
So make sure to check before comparing against main_input_filename.
gcc/ChangeLog
PR c/69911
* cgraphunit.c (check_global_declaration): Check main_input_filename
and DECL_SOURCE_FILE are not NULL.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r233627
2016-02-23 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/69666
* tree-sra.c (sra_modify_assign): Do not attempt to create
default_def replacements for unscalarizable regions.
testsuite/
* gcc.dg/tree-ssa/pr69666.c: New test.
From-SVN: r233626
gcc/testsuite/ChangeLog:
2016-02-23 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/67451
* gfortran.dg/coarray_allocate_5.f08: New test.
gcc/fortran/ChangeLog:
2016-02-23 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/67451
* trans-array.c (gfc_array_allocate): Take the attributes from the
expression to allocate and not from the source=-expression.
From-SVN: r233625
There is some controversy about enabling -Wunused-const-variable for all
unused static const variables because some feel there are too many errors
exposed in header files. Create two levels for -Wunused-const-variable.
One level to only check for unused static const variables in the main
compilation file. Which is enabled by -Wunused-variable. And a second
level that also checks for unused static const variables in included
files. Which must be explicitly enabled.
gcc/ChangeLog
PR c/28901
* cgraphunit.c (check_global_declaration): Check level of
warn_unused_const_variable and main_input_filename.
* doc/invoke.texi (Warning Options): Add -Wunused-const-variable=.
(-Wunused-variable): For C implies -Wunused-const-variable=1.
(-Wunused-const-variable): Explain levels 1 and 2.
gcc/c-family/ChangeLog
PR c/28901
* c.opt (Wunused-const-variable): Turn into Alias for...
(Wunused-const-variable=): New option.
gcc/testsuite/ChangeLog
PR c/28901
* gcc.dg/unused-variable-3.c: New test.
From-SVN: r233616
gcc/
* config/nvptx/nvptx.c (nvptx_gen_shuffle): Add support for QImode
and HImode registers.
libgomp/
* testsuite/libgomp.oacc-c-c++-common/vprop.c: New test.
From-SVN: r233607
2016-02-22 Richard Biener <rguenther@suse.de>
Tom de Vries <tom@codesourcery.com>
* graph.c: Include dumpfile.h.
(print_graph_cfg): Split into three overloads.
* gdbhooks.py (class DotFn): Add and instantiate, adding command dot-fn.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r233600
2016-02-22 Richard Biener <rguenther@suse.de>
PR ipa/37448
* ipa-inline-transform.c (inline_call): When not updating
overall summaries adjust self size by the growth estimate.
* ipa-inline.c (inline_to_all_callers_1): Add to the callers
hash-set, do not update overall summaries here. Renamed from ...
(inline_to_all_callers): ... this which is now wrapping the
above and performing delayed overall summary update.
(early_inline_small_functions): Delay updating of the overall
summary.
From-SVN: r233598
2016-02-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/69423
* trans-decl.c (create_function_arglist): Deferred character
length functions, with and without declared results, address
the passed reference type as '.result' and the local string
length as '..result'.
(gfc_null_and_pass_deferred_len): Helper function to null and
return deferred string lengths, as needed.
(gfc_trans_deferred_vars): Call it, thereby reducing repeated
code, add call for deferred arrays and reroute pointer function
results. Avoid using 'tmp' for anything other that a temporary
tree by introducing 'type_of_array' for the arrayspec type.
2016-02-20 Paul Thomas <pault@gcc.gnu.org>
PR fortran/69423
* gfortran.dg/deferred_character_15.f90 : New test.
From-SVN: r233589