Commit Graph

114912 Commits

Author SHA1 Message Date
Bin Cheng
ab07692c1a re PR target/51835 (ARM EABI violation when passing arguments to helper floating functions like __aeabi_d2iz)
2012-01-30  Bin Cheng  <bin.cheng@arm.com>

	PR target/51835
	* config/arm/arm.c (arm_libcall_uses_aapcs_base): Use correct ABI
	for __aeabi_d2iz/__aeabi_d2uiz with hard-float.

testcases:
	PR target/51835
	* gcc.target/arm/pr51835.c: New testcase.

From-SVN: r183733
2012-01-30 16:59:14 +00:00
Tom Tromey
3efe2bf72b re PR libstdc++/51649 (pretty printers don't handle std::__7:: namespace)
PR libstdc++/51649:
	* testsuite/libstdc++-prettyprinters/debug.cc: New file.
	* testsuite/lib/gdb-test.exp (regexp-test): New proc.
	(note-test): Update.
	(gdb-test): Handle regexp tests.  Add some logging.
	* testsuite/libstdc++-prettyprinters/simple.cc: Compile with -O0.
	(placeholder, use): Remove.
	(main): Add tests for deque, list, map, and set iterators.  Add
	tests for slist and slist iterator.
	* testsuite/libstdc++-prettyprinters/48362.cc (main): Handle __7
	namespace.
	* python/libstdcxx/v6/printers.py (StdListPrinter.children): Use
	the type's _Node typedef.
	(StdListIteratorPrinter.to_string): Change how node type is
	computed.
	(StdSlistPrinter.children): Use the type's _Node typedef.
	(StdSlistIteratorPrinter.to_string): Likewise.
	(StdRbtreeIteratorPrinter.to_string): Use the type's _Link_type
	typedef.
	(StdMapPrinter.children): Change how the node's type is computed.
	(StdSetPrinter.children): Likewise.
	(StdForwardListPrinter.children): Use the type's _Node typedef.
	(Printer.add_version): New method.
	(Printer.add_container): New method.
	(build_libstdcxx_dictionary): Handle __7 and __cxx1998
	namespaces.
	(find_type): New function.

From-SVN: r183732
2012-01-30 16:25:11 +00:00
Richard Guenther
e799d44709 re PR tree-optimization/52028 (wrong code with -O2 -ftree-loop-distribution)
2012-01-30  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52028
	* tree-loop-distribution.c (ldist_gen): Properly update
	virtual SSA form.

	* gcc.dg/torture/pr52028.c: New testcase.
	* gfortran.dg/ldist-pr45199.f: Adjust.
	* gcc.dg/tree-ssa/ldist-16.c: Likewise.
	* gcc.dg/tree-ssa/ldist-17.c: Likewise.
	* gcc.dg/tree-ssa/ldist-pr45948.c: Likewise.

From-SVN: r183730
2012-01-30 15:51:23 +00:00
Dodji Seketeli
be5295721c Revert "PR c++/51641 - Lookup finds enclosing class member instead of template parameter"
This reverts commit r183726

From-SVN: r183728
2012-01-30 15:54:39 +01:00
Dodji Seketeli
12e95d87ef PR c++/51641 - Lookup finds enclosing class member instead of template parameter
gcc/cp/

	PR c++/51641
	* cp-tree.h (template_type_parameter_p): Declare new function.
	(parameter_of_template_p): Remove
	* pt.c (template_type_parameter_p): Define new function.
	(parameter_of_template_p): Remove.
	* name-lookup.c (binding_to_template_parms_of_scope_p): Don't rely
	on parameter_of_template_p anymore.  Compare the level of the
	template parameter to the depth of the template.

gcc/testsuite/

	PR c++/51641
	* g++.dg/lookup/hidden-class17.C: New test.

From-SVN: r183726
2012-01-30 15:26:12 +01:00
Jakub Jelinek
2026d51a41 re PR debug/52027 (ICE: SIGSEGV in set_cur_line_info_table (dwarf2out.c:20428) with -O -freorder-blocks-and-partition -fno-reorder-functions -fprofile-use)
PR debug/52027
	* dwarf2out.c (dwarf2out_switch_text_section): Don't call
	set_cur_line_info_table if not emitting debug info.

	* gcc.dg/tree-prof/pr52027.c: New test.

From-SVN: r183725
2012-01-30 14:49:44 +01:00
Jakub Jelinek
2f32669918 re PR tree-optimization/52046 (ICE: verify_gimple failed: invalid operands in ternary operation with -O -fexceptions -fnon-call-exceptions -ftree-vectorize)
PR tree-optimization/52046
	* tree-vect-patterns.c (check_bool_pattern): Give up if
	a comparison could throw.

	* gcc.dg/pr52046.c: New test.

From-SVN: r183724
2012-01-30 14:48:37 +01:00
Jakub Jelinek
dd44dcb022 re PR debug/52048 (-fcompare-debug failure with -O2 -fcompare-debug -fnon-call-exceptions -fno-tree-dominator-opts)
PR debug/52048
	* tree-ssa-tail-merge.c (local_def): Ignore debug uses.

	* g++.dg/other/pr52048.C: New test.

From-SVN: r183723
2012-01-30 14:47:38 +01:00
Richard Guenther
ab448cfa68 re PR middle-end/52045 (ICE: in execute_todo, at passes.c:1748 with -O3 -ftracer -fno-tree-ccp -fno-tree-copy-prop -fno-tree-dce and stpcpy_chk())
2012-01-30  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52045
	* tree-optimize.c (execute_cleanup_cfg_post_optimizing): Update
	SSA form if cfgcleanup did anything.

	* gcc.dg/pr52045.c: New testcase.

From-SVN: r183722
2012-01-30 13:40:24 +00:00
Richard Guenther
f8698b375a re PR middle-end/52045 (ICE: in execute_todo, at passes.c:1748 with -O3 -ftracer -fno-tree-ccp -fno-tree-copy-prop -fno-tree-dce and stpcpy_chk())
2012-01-30  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/52045
	* ipa-inline-transform.c (inline_transform): Call execute_fixup_cfg
	before computing final todo.

From-SVN: r183721
2012-01-30 13:39:12 +00:00
Richard Guenther
fdad69c136 re PR tree-optimization/51528 (SRA should not create BOOLEAN_TYPE replacements)
2012-01-30  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/51528
	* tree-sra.c (sra_modify_assign): Re-factor in preparation
	for PR51528 fix.

From-SVN: r183720
2012-01-30 13:26:45 +00:00
Paolo Bonzini
8203ac4983 df-problems.c (df_kill_notes): Check that the use refers to the note under examination.
2012-01-30  Paolo Bonzini  <bonzini@gnu.org>

	* df-problems.c (df_kill_notes): Check that the use refers
	to the note under examination.

From-SVN: r183719
2012-01-30 12:56:17 +00:00
Greta Yorsh
825b2e07a5 For Greta Yorsh
2012-01-30  Greta Yorsh  <Greta.Yorsh@arm.com>

        * gcc.target/arm/di-longlong64-sync-withldrexd.c: Accept
        new code generated for __sync_lock_release.

From-SVN: r183718
2012-01-30 12:55:41 +00:00
Eric Botcazou
98e4350fe2 re PR target/51920 (64-bit gcc.target/sparc/vec-init-1-vis1.c FAILs)
PR target/51920
	* config/sparc/sparc.c (vector_init_fpmerge): Remove INNER_MODE
	parameter and use short-lived pseudos.
	(vector_init_faligndata): Remove INNER_MODE parameter and use loop.
	(sparc_expand_vector_init): Const-ify local variables and adjust
	calls to above functions.

From-SVN: r183717
2012-01-30 12:43:51 +00:00
Nicolas Roche
982edf3a27 Make-lang.in: Update dependencies.
2012-01-30  Nicolas Roche  <roche@adacore.com>

	* gcc-interface/Make-lang.in: Update dependencies.
	* gcc-interface/Makefile.in: Use system-vxworks-system-ppc-mils.ads
	when needed.
	Remove Linker_Options -crtbe when building sjlj run-time.

From-SVN: r183715
2012-01-30 13:19:17 +01:00
Arnaud Charlet
b727a82b8c [multiple changes]
2012-01-30  Robert Dewar  <dewar@adacore.com>

	* sem.adb (Analyze): Call Analyze_Mod for N_Op_Mod mode.
	* sem_ch3.adb (Modular_Type_Declaration): Warn on mod value of
	form 2 * small-literal.
	* sem_ch4.adb (Analyze_Mod): New procedure (warn on suspicious
	mod value).
	* sem_ch4.ads (Analyze_Mod): New procedure.

2012-01-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch6.adb: sem_ch6.adb (Analyze_Expression_Function): Copy
	types and return expression when building spec for implicit
	body, to preserve global references that may be present in an
	instantiation.

2012-01-30  Matthew Heaney  <heaney@adacore.com>

	* a-convec.adb, a-coinve.adb, a-cobove.adb (Sort,
	Reverse_Elements): Check for cursor tampering.

2012-01-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb (Is_Fully_Initialized_Type): In Ada 2012, a
	type with aspect Default_Value or Default_Component_Value is
	fully initialized, and use of variables of such types do not
	generate warnings.

2012-01-30  Vincent Celier  <celier@adacore.com>

	* projects.texi: Add documentation for attribute Interfaces.

From-SVN: r183714
2012-01-30 13:16:12 +01:00
Javier Miranda
e11be5ac78 re PR ada/15846 (Illegal program not detected, self renames)
2012-01-30  Javier Miranda  <miranda@adacore.com>

PR ada/15846
	* sem_ch8.adb (Analyze_Subprogram_Renaming):
	Handle self-renaming when the renamed entity is referenced using
	its expanded name.

From-SVN: r183713
2012-01-30 13:15:42 +01:00
Arnaud Charlet
f849ad6ff8 [multiple changes]
2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch7.adb (Build_Finalizer_Call): Set loc again.
	* exp_ch11.adb (Expand_At_End_Handler): Do not provide a source
	location for the wrapped call to the original AT_END routine
	and the subsequent return statement.

2012-01-30  Pascal Obry  <obry@adacore.com>

	* s-rannum.adb: Minor reformatting.

2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-calend-vms.adb, a-calend.adb: Increment the number of leap seconds
	to 25 and add the hard time value for 2012-06-30.

From-SVN: r183711
2012-01-30 12:53:27 +01:00
Robert Dewar
37da997b17 a-strhas.ads, [...]: Minor reformatting/code reorganization.
2012-01-30  Robert Dewar  <dewar@adacore.com>

	* a-strhas.ads, einfo.adb, einfo.ads, exp_ch7.adb, exp_ch9.adb,
	freeze.adb, prj.adb, prj.ads, prj-nmsc.adb, prj-proc.adb, s-llflex.ads,
	s-ransee.adb, s-ransee.ads, sem_ch13.adb, sem_dim.adb, sem_prag.adb:
	Minor reformatting/code reorganization.

From-SVN: r183710
2012-01-30 12:50:52 +01:00
Thomas Quinot
7873037fd8 s-rannum.adb, [...] (Get_Seed): Return Unsigned_64 rather than Duration.
2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* s-rannum.adb, s-ransee.adb, s-ransee.ads (Get_Seed): Return
	Unsigned_64 rather than Duration.
	(System.Random_Numbers.Reset): Use full value of seed
	(do not truncate sub-second bits).

2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* sem_cat.adb, sem_ch12.adb: Minor reformatting.

From-SVN: r183708
2012-01-30 12:39:58 +01:00
Arnaud Charlet
6d9e03cb09 [multiple changes]
2012-01-30  Yannick Moy  <moy@adacore.com>

	* gnat_ugn.texi: Minor correction of GNAT UG, to take into
	account changes to -gnatwa and more recent warnings.

2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch7.adb (Build_Finalizer_Call): Do not provide a source
	location when creating a call to a finalizer.
	* exp_ch11.adb (Expand_Exception_Handlers): Do not provide
	a source location for the first actual of Save_Occurrence for
	consistency sake.

2012-01-30  Ed Schonberg  <schonberg@adacore.com>

	* einfo.ads, einfo,adb: New attribute on scalar types:
	Default_Aspect_Value New attribute on  array types:
	Default_Aspect_Component_Value Move attribute Related_Array_Object
	to a different position to accomodate new aspect attributes.
	* freeze.adb (Freeze_Entity): Use new attributes to retrieve value
	of defaults set with an aspect specification, rather than using
	the list of aspects attached to the type, to prevent issues with
	partial views.
	* sem_ch13.adb (Analyze_Aspect_Specifications): For aspects
	Default_Value and Default_Component _Value, store corresponding
	expression in type entity.
	(Check_Aspect_At_End_Of_Declaration): If the default aspects
	are declared on the full view, use the full view to resolve the
	correseponding expression.
	* exp_ch3.adb (Init_Component): Use attribute
	Default_Aspect_Component_Value to perform default initialization,
	rather than relying on the rep item list for the type.
	(Get_Simple_Init_Val): Ditto.

From-SVN: r183707
2012-01-30 12:37:42 +01:00
Arnaud Charlet
b688e03053 [multiple changes]
2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* a-strhas.ads: Document risk of collision attack.

2012-01-30  Yannick Moy  <moy@adacore.com>

	* gnat_ugn.texi: Minor update wrt warning switches.

From-SVN: r183706
2012-01-30 12:36:09 +01:00
Arnaud Charlet
1423761633 [multiple changes]
2012-01-30  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Check_Interfaces): Report an error when a
	unit from Library_Interface is not a unit of the project.

2012-01-30  Vincent Pucci  <pucci@adacore.com>

	* sem_prag.adb (Make_Aspect_For_PPC_In_Gen_Sub_Decl): Parent
	links fixed inside PPC pragmas.
	* sem_ch12.adb: Move call to Make_Aspect_For_PPC_In_Gen_Sub_Decl.

2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* s-ransee.ads: Minor reformatting.

From-SVN: r183705
2012-01-30 12:33:53 +01:00
Arnaud Charlet
de6e4fc494 [multiple changes]
2012-01-30  Pascal Obry  <obry@adacore.com>

	* prj.ads, prj.adb (For_Each_Source): Add support for skipping
	sources coming from an encapsulated library.

2012-01-30  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Process-Full_View): fix typo.
	* sem_ch13.adb (Aalyze_Aspect_Specifications): if predicates
	appear on a private type and the full view is available, ensure
	existence of freeze node for full view.
	(Build_Predicate_Function): Attach predicate function to both
	views of a private type.

2012-01-30  Vincent Celier  <celier@adacore.com>

	* prj-nmsc.adb (Check_Interfaces): Compute the Lib_Interface_ALIs
	for the project if either attribute Library_Interface or
	Interfaces is declared.
	(Check_Stand_Alone_Library): Use Lib_Interface_ALIs computed in
	Check_Interfaces.

From-SVN: r183704
2012-01-30 11:35:19 +01:00
Pascal Obry
a76b09dce5 prj-proc.adb (Recursive_Process): Set From_Encapsulated_Lib boolean value to true in the process list created by...
2012-01-30  Pascal Obry  <obry@adacore.com>

	* prj-proc.adb (Recursive_Process): Set From_Encapsulated_Lib
	boolean value to true in the process list created by this routine.
	* prj.ads (Project_List_Element): New field From_Encapsulated_Lib.
	Continued work for KA06-021.
	* prj.adb (Compute_All_Imported_Projects): Set
	From_Encapsulated_Lib boolean flag.

From-SVN: r183703
2012-01-30 11:33:44 +01:00
Arnaud Charlet
457c5df44b [multiple changes]
2012-01-30  Vincent Pucci  <pucci@adacore.com>

	* sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Minor
	code clean up.
	* s-diflio.ads: Minor change.

2012-01-30  Javier Miranda  <miranda@adacore.com>

	* exp_ch9.adb (Build_Dispatching_Requeue): Add missing call
	to Get_Entry_Index.  Required to generate code which provides
	the correct value of Entry_Index in the target entry.

2012-01-30  Nicolas Roche  <roche@adacore.com>

	* system-vxworks-ppc.ads: Add pragma Linker_Options -crtbe to
	fix issue with zcx on VxWorks5.

2012-01-30  Pascal Obry  <obry@adacore.com>

	* prj.ads, prj.adb (For_Every_Project_Imported): Remove
	In_Aggregate_Lib.
	(For_Every_Project_Imported_Context): New generic routine with
	a context parameter.
	* prj-nmsc.adb: Revert to use For_Every_Project_Imported Avoid
	distributed complexity.
	* prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb: Ditto.

From-SVN: r183702
2012-01-30 11:32:44 +01:00
Arnaud Charlet
1b6897ce5d [multiple changes]
2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* exp_aggr.adb (Expand_Record_Aggregate): After creating the
	_parent aggregate for an extension aggregate, check whether it
	requires delayed (top-down) expansion.

2012-01-30  Vincent Pucci  <pucci@adacore.com>

	* sem_dim.adb (Expand_Put_Call_With_Dimension_Symbol): Rewritten.
	* snames.ads-tmpl: Name_Item and Name_Symbols added.
	* s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads: Rename
	and change the position of parameter Symbols in every Put routine.
	* s-dimmks.ads: Convert long float type Mks_Type into long
	long float.
	* s-llflex.ads: Modifications in comments.

2012-01-30  Hristian Kirtchev  <kirtchev@adacore.com>

	* sem_ch12.adb (Earlier): Do not use the
	top level source locations of the two input nodes.

From-SVN: r183701
2012-01-30 11:29:35 +01:00
Robert Dewar
50decc819b exp_aggr.adb, [...]: Minor reformatting.
2012-01-30  Robert Dewar  <dewar@adacore.com>

	* exp_aggr.adb, sem_aggr.adb: Minor reformatting.

From-SVN: r183700
2012-01-30 11:27:36 +01:00
Robert Dewar
22243c12a3 einfo.ads, [...]: Minor reformatting.
2012-01-30  Robert Dewar  <dewar@adacore.com>

	* einfo.ads, sem_prag.adb, sem_attr.adb, aspects.ads,
	sem_cat.adb, sem_aggr.adb, exp_aggr.adb: Minor reformatting.

From-SVN: r183699
2012-01-30 11:26:25 +01:00
Arnaud Charlet
25081892c4 [multiple changes]
2012-01-30  Robert Dewar  <dewar@adacore.com>

	* a-cdlili.adb, a-cidlli.adb, a-cbdlli.adb: Minor reformatting.

2012-01-30  Olivier Hainque  <hainque@adacore.com>

	* sigtramp-ppcvxw.c (CFI_COMMON_REGS): Add rule for r1 back +
	comments.

2012-01-30  Thomas Quinot  <quinot@adacore.com>

	* gnat_rm.texi, sem_dist.adb, sem_dist.ads, einfo.ads, sem_prag.adb,
	sem_ch12.adb, sem_attr.adb, aspects.adb, aspects.ads, par-prag.adb,
	sem_cat.adb, snames.ads-tmpl (Sem_Dist.Is_Valid_Remote_Object_Type):
	New subprogram (extracted from
	Sem_Cat.Validate_Remote_Access_Object_Type_Declaration).
	(Einfo.Is_Remote_Types): Now applies to generic types. Update
	documentation accordingly.
	(Sem_Ch12.Analyze_Associations): A RACW type is acceptable as
	actual for a formal type to which a pragma Remote_Access_Type
	applies.
	(Aspects, Par.Prag, Sem_Prag): Support for new pramga/aspect
	Remote_Access_Type.
	(Sem_Attr.Analyze_Attribute, case Stub_Type): Attribute can
	be applied to a generic type if pragma Remote_Access_Type
	applies, in which case the type of the attribute is
	System.Partition_Interface.RACW_Stub_Type.

From-SVN: r183698
2012-01-30 11:24:17 +01:00
Georg-Johann Lay
4f0534570b avr.c (out_movqi_mr_r): Fix length computation.
* config/avr/avr.c (out_movqi_mr_r): Fix length computation.

From-SVN: r183697
2012-01-30 10:16:29 +00:00
Georg-Johann Lay
733ccf098f avr.c (out_movqi_mr_r): Fix length computation.
* config/avr/avr.c (out_movqi_mr_r): Fix length computation.

From-SVN: r183696
2012-01-30 10:08:25 +00:00
Andreas Krebbel
5f8f0db63d fe-convert-2.c: Force use of soft dfp on s390 and s390x.
2012-01-30  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* gcc.dg/dfp/fe-convert-2.c: Force use of soft dfp on s390 and
          s390x.

From-SVN: r183694
2012-01-30 08:24:46 +00:00
Sandra Loosemore
1d7b264ef1 invoke.texi: Make usage of "compile time" and "run time"/"runtime" consistent throughout the...
2012-01-29  Sandra Loosemore  <sandra@codesourcery.com>

	gcc/
	* doc/invoke.texi: Make usage of "compile time" and
	"run time"/"runtime" consistent throughout the file.

From-SVN: r183693
2012-01-29 19:41:03 -05:00
GCC Administrator
9c0ef3731c Daily bump.
From-SVN: r183692
2012-01-30 00:18:29 +00:00
John David Anglin
491341879b re PR testsuite/51875 (FAIL: gfortran.dg/guality/pr41558.f90 -O0 line 7 s == 'foo')
PR testsuite/51875
	* gfortran.dg/guality/pr41558.f90: Skip on 32-bit hppa*-*-hpux*.

From-SVN: r183688
2012-01-29 23:56:38 +00:00
John David Anglin
de0f11fe09 template10.C: Fix typo.
* g++.dg/ext/visibility/template10.C: Fix typo.

From-SVN: r183687
2012-01-29 23:53:44 +00:00
John David Anglin
921f02a0fd pr51472.c: Add -fno-common option on hppa-*-hpux*.
* gcc.dg/tm/pr51472.c: Add -fno-common option on hppa-*-hpux*.

From-SVN: r183686
2012-01-29 23:51:00 +00:00
Paolo Carlini
07a71223f1 re PR c++/51327 ([c++0x] [4.7 Regression] ICE with invalid constexpr parameter)
/cp
2012-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51327
	* class.c (explain_non_literal_class): Correctly handle implicitly
	deleted constructors.

/testsuite
2012-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51327
	* g++.dg/cpp0x/constexpr-ice6.C: New.

From-SVN: r183685
2012-01-29 21:42:56 +00:00
Paolo Carlini
efff2fb40e re PR c++/51327 ([c++0x] [4.7 Regression] ICE with invalid constexpr parameter)
/cp
2012-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51327
	* class.c (explain_non_literal_class): Correctly handle implicitly
	deleted constructors.

/testsuite
2012-01-29  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/51327
	* g++.dg/cpp0x/constexpr-ice6.C: New.

From-SVN: r183684
2012-01-29 21:41:54 +00:00
Uros Bizjak
1e86df8d39 alpha.c (alpha_option_overrride): Default to full IEEE compliance mode for Go language.
* config/alpha/alpha.c (alpha_option_overrride): Default to
	full IEEE compliance mode for Go language.

From-SVN: r183683
2012-01-29 21:55:09 +01:00
Tobias Burnus
0b673c092d re PR fortran/41600 ([OOP] SELECT TYPE with associate-name => exp: Arrays not supported)
2012-01-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/41600
        * expr.c (gfc_default_initializer): Convert the values if
        the type does not match.

2012-01-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/41600
        * gfortran.dg/default_initialization_6.f90: New.


Co-Authored-By: Steven G. Kargl <kargl@gcc.gnu.org>

From-SVN: r183682
2012-01-29 21:51:19 +01:00
Janne Blomqvist
cc19bc7fdd Reduce size of pointer_info tree, minor cleanups.
2012-01-29  Janne Blomqvist  <jb@gcc.gnu.org>

	* module.c (pointer_info): Make true_name and module pointers
	rather than arrays, order pointers before other fields.
	(free_pi_tree): free true_name and module as well.
	(mio_read_string): Rename to read_string.
	(mio_write_string): Remove.
	(load_commons): Use read_string.
	(read_module): Use read_string rather than mio_internal_string.
	(write_blank_common): Call write_atom directly.
	(write_symbol): Likewise.

From-SVN: r183681
2012-01-29 22:29:50 +02:00
Tobias Burnus
4ed1b019f6 re PR fortran/51972 ([OOP] Wrong code as _copy does not honor CLASS components)
2012-01-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51972
        * trans-array.c (structure_alloc_comps): Fix assignment of
        polymorphic components (polymorphic deep copying).

2012-01-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51972
        * gfortran.dg/class_allocate_12.f90: Enable disabled test.
        * gfortran.dg/class_48.f90: New.

From-SVN: r183680
2012-01-29 21:02:19 +01:00
Janne Blomqvist
9975a30b5c PR 51808 Constify binding_label.
2012-01-29  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/51808
	* decl.c (set_binding_label): Make binding_label argument const.
	(curr_binding_label): Constify.
	* gfortran.h (gfc_symbol): Constify binding_label.
	(gfc_common_head): Likewise.
	(get_iso_c_sym): Likewise.
	* match.c (gfc_match_name_C): Constify buffer argument.
	* match.h (gfc_match_name_C): Likewise.
	* resolve.c (set_name_and_label): Constify binding_label argument.
	(gfc_iso_c_sub_interface): Constify binding_label variable.
	* symbol.c (get_iso_c_sym): Constify binding_label argument.

From-SVN: r183679
2012-01-29 21:01:09 +02:00
Janne Blomqvist
9e85a9fd0d PR 51808 Fix ChangeLog entry
From-SVN: r183678
2012-01-29 19:41:49 +02:00
Janne Blomqvist
62603fae93 PR 51808 Support arbitrarily long bind(C) binding labels.
2012-01-29  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/51808
	* decl.c (set_binding_label): Move prototype from match.h to here.
	(curr_binding_label): Make a pointer rather than static array.
	(build_sym): Check sym->binding_label pointer rather than array,
	update set_binding_label call, handle curr_binding_label changes.
	(set_binding_label): Handle new curr_binding_label, dest_label
	double ptr, and sym->binding_label.
	(verify_bind_c_sym): Handle sym->binding_label being a pointer.
	(set_verify_bind_c_sym): Check sym->binding_label pointer rather
	than array, update set_binding_label call.
	(gfc_match_bind_c_stmt): Handle curr_binding_label change.
	(match_procedure_decl): Update set_binding_label call.
	(gfc_match_bind_c): Change binding_label to pointer, update
	gfc_match_name_C call.
	* gfortran.h (GFC_MAX_BINDING_LABEL_LEN): Remove macro.
	(gfc_symbol): Make binding_label a pointer.
	(gfc_common_head): Likewise.
	* match.c (gfc_match_name_C): Heap allocate bind(C) name.
	* match.h (gfc_match_name_C): Change prototype argument.
	(set_binding_label): Move prototype to decl.c.
	* module.c (struct pointer_info): Make binding_label a pointer.
	(free_pi_tree): Free unused binding_label.
	(mio_read_string): New function.
	(mio_write_string): New function.
	(load_commons): Redo reading of binding_label.
	(read_module): Likewise.
	(write_common_0): Change to write empty string instead of name if
	no binding_label.
	(write_blank_common): Write empty string for binding label.
	(write_symbol): Change to write empty string instead of name if no
	binding_label.
	* resolve.c (gfc_iso_c_func_interface): Don't set binding_label.
	(set_name_and_label): Make binding_label double pointer, use
	asprintf.
	(gfc_iso_c_sub_interface): Make binding_label a pointer.
	(resolve_bind_c_comms): Handle cases if
	gfc_common_head->binding_label is NULL.
	(gfc_verify_binding_labels): sym->binding_label is a pointer.
	* symbol.c (gfc_free_symbol): Free binding_label.
	(gfc_new_symbol): Rely on XCNEW zero init for binding_label.
	(gen_special_c_interop_ptr): Don't set binding label.
	(generate_isocbinding_symbol): Insert binding_label into symbol
	table.
	(get_iso_c_sym): Use pointer assignment instead of strcpy.
	* trans-common.c (gfc_sym_mangled_common_id): Handle
	com->binding_label being a pointer.
	* trans-decl.c (gfc_sym_mangled_identifier): Handle
	sym->binding_label being a pointer.
	(gfc_sym_mangled_function_id): Likewise.


testsuite ChangeLog

2012-01-29  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/51808
	* gfortran.dg/module_md5_1.f90: Update MD5 sum.

From-SVN: r183677
2012-01-29 19:19:32 +02:00
Kai Tietz
9b850dd969 ffi.c (ffi_call_win32): Add new argument to prototype for specify calling-convention.
* src/libffi/src/x86/ffi.c (ffi_call_win32): Add new
        argument to prototype for specify calling-convention.
        (ffi_call): Add support for stdcall/thiscall convention.
        (ffi_prep_args): Likewise.
        (ffi_raw_call): Likewise.
        * src/x86/ffitarget.h (ffi_abi): Add FFI_THISCALL and
        FFI_FASTCALL.
        * src/x86/win32.S (_ffi_call_win32): Add support for
        fastcall/thiscall calling-convention calls.
        * testsuite/libffi.call/fastthis1_win32.c: New test.
        * testsuite/libffi.call/fastthis2_win32.c: New test.
        * testsuite/libffi.call/fastthis3_win32.c: New test.
        * testsuite/libffi.call/strlen2_win32.c: New test.
        * testsuite/libffi.call/many2_win32.c: New test.
        * testsuite/libffi.call/struct1_win32.c: New test.
        * testsuite/libffi.call/struct2_win32.c: New test.

From-SVN: r183676
2012-01-29 14:29:53 +01:00
Tobias Burnus
ae98156eae re PR fortran/52038 (fortran bootstrap failure: no previous prototype for 'symbol_as')
2012-01-29  Tobias Burnus  <burnus@net-b.de>

        PR fortran/52038
        * resolve.c (symbol_as): Remove unused, accidentally
        added function.

From-SVN: r183675
2012-01-29 12:56:18 +01:00
GCC Administrator
319191b93c Daily bump.
From-SVN: r183674
2012-01-29 00:18:29 +00:00