Commit Graph

92973 Commits

Author SHA1 Message Date
Ira Rosen
c4551b28a7 re PR tree-optimization/39675 (ICE in vect_get_vec_def_for_operand, at tree-vect-transform.c:1999)
PR tree-optimization/39675
	* tree-vect-loop.c (vect_transform_loop): Remove currently redundant 
	check of the return code of vect_schedule_slp. Check that stmt_vec_info
	still exists for the statement, before checking its vectorization type.

From-SVN: r146399
2009-04-20 11:26:18 +00:00
Eric Botcazou
ecc3905a2d trans.c (gigi): Declare the name of the compilation unit as the first global name at the very...
* gcc-interface/trans.c (gigi): Declare the name of the compilation
	unit as the first global name at the very beginning.

From-SVN: r146398
2009-04-20 11:01:49 +00:00
Vasilis Liaskovitis
34d01e1d17 re PR fortran/35423 (Implement OpenMP workshare)
PR fortran/35423
	* trans.h (OMPWS_WORKSHARE_FLAG, OMPWS_CURR_SINGLEUNIT,
	OMPWS_SCALARIZER_WS, OMPWS_NOWAIT): Define.
	(ompws_flags): New extern decl.
	* trans-array.c (gfc_trans_scalarized_loop_end): Build OMP_FOR
	for the outer dimension if ompws_flags allow it.
	* trans.c (gfc_generate_code): Clear ompws_flags.
	* trans-expr.c (gfc_trans_assignment_1): Allow worksharing
	array assignments inside of !$omp workshare.
	* trans-stmt.c (gfc_trans_where_3): Similarly for where statements
	and constructs.
	* trans-openmp.c (ompws_flags): New variable.
	(gfc_trans_omp_workshare): Rewritten.

	* testsuite/libgomp.fortran/workshare2.f90: New test.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r146397
2009-04-20 12:59:59 +02:00
Thomas Quinot
2907036db7 socket.c, [...] (__gnat_inet_pton): Needs to be enabled for HP-UX as well...
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
	s-oscons-tmplt.c, gsocket.h, g-socthi-mingw.ads, g-socthi.ads,
	g-sothco.ads (__gnat_inet_pton): Needs to be enabled for HP-UX as well,
	since HP-UX supports neither inet_aton nor inet_pton (altough the
	latter is part of the Single UNIX Specification!).
	So reorganize code, and share C implementation based on inet_addr(3)
	with VMS (instead of having a VMS specific Ada implementation in
	g-socthi-vms.adb).

From-SVN: r146396
2009-04-20 12:45:28 +02:00
Arnaud Charlet
d50633515b [multiple changes]
2009-04-20  Gary Dismukes  <dismukes@adacore.com>

	* osint-c.ads, osint-c.adb (Get_Object_Output_File_Name): New function
	to return the object file name saved by Set_Object_Output_File_Name.

2009-04-20  Emmanuel Briot  <briot@adacore.com>

	* g-comlin.adb (Initialize_Option_Scan): Fix initialization of parsers
	for the standard command line, when argc has been modified since the
	start of the application.

2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* socket.c (__gnat_inet_pton, Windows case): Adjust return value.
	WSAStringToAddress returns 0 for success and SOCKET_ERROR for failure.

From-SVN: r146395
2009-04-20 12:41:25 +02:00
Arnaud Charlet
51c2e647b2 Update comment.
From-SVN: r146394
2009-04-20 12:39:48 +02:00
Arnaud Charlet
3edf2f76e4 [multiple changes]
2009-04-20  Bob Duff  <duff@adacore.com>

	* gnat1drv.adb (Gnat1drv): Put call to Check_Library_Items inside
	pragma Debug.

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch9.adb (Build_Protected_Sub_Specification): Mark generated
	subprogram as Eliminated when source operation is.
	(Expand_N_Protected_Type_Declaration): Generate protected and
	unprotected specs for the internal operations, even if the source
	operation is eliminated.

2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch3.adb (Make_Predefined_Primitive_Specs,
	Predefined_Primitive_Bodies): Do not create the declarations and bodies
	of the primitive subprograms associated with dispatching select
	statements when the runtime is in configurable mode.

2009-04-20  Ed Falis  <falis@adacore.com>

	* s-vxwext-kernel.ads (tickGet): Use tick64Get.

From-SVN: r146393
2009-04-20 12:35:28 +02:00
Arnaud Charlet
4fd1e8b001 [multiple changes]
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* s-oscons-tmplt.c: Add support for generating a dummy version of
	s-oscons.ads providing all possible constants.

	* g-socthi-mingw.ads: Fix calling convention for __gnat_inet_pton.

	* socket.c (__gnat_inet_pton): On Windows make sure we always use the
	ANSI version (not the UNICODE version) of WSAStringToAddress.

2009-04-20  Pascal Obry  <obry@adacore.com>

	* adaint.c (__gnat_set_OWNER_ACL): properly free memory
	allocated for the security descriptor and make sure all
	handles are closed before leaving this procedure.

From-SVN: r146392
2009-04-20 12:23:29 +02:00
Arnaud Charlet
9013065bc0 [multiple changes]
2009-04-20  Javier Miranda  <miranda@adacore.com>

	* einfo.ads, einfo.adb (Is_Underlying_Record_View): New subprogram
	(Set_Is_Underlying_Record_View): New subprogram

	* sem_aggr.adb (Discr_Present, Resolve_Record_Aggregate): In case of
	private types with unknown discriminants use the underlying record view
	if available.

	* sem_ch3.adb (Build_Derived_Private_Type): Enable construction of the
	underlying record view in the full view of private types whose parent
	has unknown discriminants.
	(Build_Derived_Record_Type): Avoid generating the class-wide entity
	associated with an underlying record view.
	(Derived_Type_Declaration): Avoid deriving parent primitives in
	underlying record views.

	* sem_ch6.adb (Check_Return_Subtype_Indication): Add support for
	records with unknown discriminants.

	* sem_type.adb (Covers): Handle underlying record views.
	(Is_Ancestor): Add support for underlying record views.

	* exp_attr.adb (Expand_Attribute): Expand attribute 'size into a
	dispatching call if the type of the target object is tagged and has
	unknown discriminants.

	* exp_aggr.adb (Resolve_Record_Aggregate): Add support for records with
	unknown discriminants.

	* exp_disp.adb (Build_Dispatch_Tables): Avoid generating dispatch
	tables for internally built underlying record views.

	* sprint.adb (sprint_node_actual): Improve output of aggregates with an
	empty list of component associations.

2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* sem_ch10.adb: Minor reformatting

	* socket.c, g-socthi-vms.adb, g-socthi-vms.ads, g-socthi-vxworks.ads,
	g-socthi-mingw.ads, g-socthi.ads, g-socket.adb
	(GNAT.Sockets.Inet_Addr): Do not use non-portable inet_aton, instead use
	standard inet_pton API (and emulate it on platforms that do not
	support it).
	(GNAT.Sockets.Thin.Inet_Pton, VMS case): Implement in terms of
	DECC$INET_ADDR, imported in Ada.
	(GNAT.Sockets.Thin.Inet_Pton, VxWorks and Windows cases): Use C
	implementation provided by GNAT runtime.
	(__gnat_inet_pton): C implementation of inet_pton(3) for VxWorks and
	Windows.

From-SVN: r146391
2009-04-20 12:18:48 +02:00
Arnaud Charlet
7289b80c09 [multiple changes]
2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_ugn.texi: Add documentation for -fno-ivopts.

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch10.adb (Analyze_Context): Do not analyze a unit in a
	with_clause if it is the main unit.

From-SVN: r146390
2009-04-20 12:07:30 +02:00
Arnaud Charlet
c09a557e3a [multiple changes]
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* sem_type.adb, ali.adb, erroutc.adb: Minor code reorganization
	(no behaviour change): Use Append instead of Increment_Last followed
	by assignment.

2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate the
	declarations of all primitives associated with dispatching asynchronous,
	conditional and timed selects when dispaching calls are forbidden and
	select statements are not allowed (such as in Ravenscar).
	(Predefined_Primitive_Bodies): Ditto for bodies.

	* exp_disp.ad (Make_DT): Do not create and populate the
	Select_Specific_Data of the dispatch table when dispatching calls are
	forbidden and select statements are not allowed (such as in Ravenscar).

2009-04-20  Robert Dewar  <dewar@adacore.com>

	* a-tifiio.adb: Minor reformatting

2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* g-socthi-vms.adb, g-socket.adb, g-socket.ads: inet_aton(3), unlike
	other C library functions, report *failure* with a zero status, and
	success with a non-zero status.

2009-04-20  Bob Duff  <duff@adacore.com>

	* sem.ads, sem.adb (Walk_Library_Items): New generic procedure.
	(Semantics): After analyzing each unit, Append it to the
	Comp_Unit_List, if appropriate.

	* gnat1drv.adb (Check_Library_Items): New procedure for debugging
	purposes.
	(Gnat1drv): Correct comment regarding Back_End_Mode.

2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>

	* gnat_ugn.texi: Add documentation for -fno-inline-small-functions.

From-SVN: r146389
2009-04-20 12:04:20 +02:00
Thomas Quinot
7e728b0f0d s-taprop-irix.adb, [...]: Minor reformatting.
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* s-taprop-irix.adb, s-taprop-tru64.adb, s-taprop-vms.adb,
	output.adb, output.ads, s-taprop-hpux-dce.adb,
	s-taprop-linux.adb, s-taprop-solaris.adb, s-taprop-posix.adb: Minor
	reformatting.

From-SVN: r146388
2009-04-20 11:44:10 +02:00
Thomas Quinot
5e39baa64c 2009-04-20 Thomas Quinot <quinot@adacore.com>
* g-socket.adb, g-socket.ads, g-socthi-mingw.ads, g-socthi-vms.adb,
	g-socthi-vms.ads, g-socthi-vxworks.ads, g-socthi.ads
	(GNAT.Sockets.Thin.C_Inet_Addr): Remove.
	(GNAT.Sockets.Thin.Inet_Aton): New function, imported from C library
	except for VMS where it is reimplemented in Ada using DECC$INET_ADDR.
	(GNAT.Sockets.Inet_Addr): Use inet_aton(3) instead of inet_addr(3).

	* debug.adb: Fix typo

	* gnat_rm.texi: Minor doc fix.

	* sem_ch7.adb, freeze.adb: Minor reformatting

From-SVN: r146387
2009-04-20 11:42:48 +02:00
Arnaud Charlet
3568b27142 [multiple changes]
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: Add new constants:
	  Loopback_Inet_Addr
	  Unspecified_Group_Inet_Addr
	  All_Hosts_Group_Inet_Addr
	  All_Routers_Group_Inet_Addr

	* s-oscons-tmplt.c, g-sttsne-vxworks.adb (System.OS_Constants): Add
	ERANGE (Result too large).
	(GNAT.Sockets.Thin.Task_Safe_NetDB, VxWorks version): Add missing
	propagation of errno to caller.

2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-calend.adb, a-calend-vms.adb: Increase the number of leap seconds
	to 24. Increment Leap_Seconds_Count and add an entry to aggregate
	Leap_Second_Times.

2009-04-20  Vincent Celier  <celier@adacore.com>

	* mlib-prj.adb (Build_Library): Use the shared library linker, if one
	has been declared (Library_GCC or Linker'Driver), for the driver name.

	* prj-nmsc.adb (Process_Linker): If Library_GCC is not declared and
	Linker'Driver is, use Linker'Driver as the shared library linker.
	(Process_Project_Level_Simple_Attributes): Issue a warning if attribute
	Library_GCC is declared.
	(Check_Library_Attributes): Set up the shared linker driver: either
	Library_GCC or Linker'Driver. Issue a warning if Library_GCC is
	declared.

From-SVN: r146386
2009-04-20 11:38:27 +02:00
Gary Dismukes
16212e894a sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for checking for references to eliminated subprograms that should...
2009-04-20  Gary Dismukes  <dismukes@adacore.com>

	* sem_elim.ads (Check_For_Eliminated_Subprogram): New procedure for
	checking for references to eliminated subprograms that should be
	flagged.
	(Eliminate_Error_Message): Update comment to say "references" rather
	than "calls" (since attribute cases are handled here as well).

	* sem_elim.adb (Check_For_Eliminated_Subprogram): New procedure for
	checking for references to eliminated subprograms that should be
	flagged.  Add with and use of Sem and Sem_Util.

	* sem_res.adb (Resolve_Call): Reject calls to eliminated subprograms.
	Add with and use of Sem_Elim.

	* sem_attr.adb (Analyze_Access_Attribute): Reject access attributes
	applied to eliminated subprograms.
	(Analyze_Attribute): Reject 'Address and 'Code_Address applied to
	eliminated subprograms.
	Add with and use of Sem_Elim.

	* sem_disp.adb (Check_Dispatching_Call): Remove error check for calls
	to eliminated subprograms, now handled during Resolve_Call.
	Remove with and use of Sem_Elim.

	* exp_disp.adb (Make_DT): Get Ultimate_Alias of primitive before
	testing Is_Eliminated, for proper handling of primitive derived from
	eliminated subprograms.

From-SVN: r146385
2009-04-20 11:37:30 +02:00
Thomas Quinot
6e55ac7a64 g-socket.ads (Send_Socket): Fix misleading comment.
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads (Send_Socket): Fix misleading comment.

From-SVN: r146384
2009-04-20 11:31:00 +02:00
Arnaud Charlet
566fef1d5f Complete previous change.
From-SVN: r146383
2009-04-20 11:30:20 +02:00
Arnaud Charlet
68218f7cf3 [multiple changes]
2009-04-20  Arnaud Charlet  <charlet@adacore.com>

	* switch-c.adb (Scan_Front_End_Switches): Disable inspector mode in
	ASIS mode.

2009-04-20  Geert Bosch  <bosch@adacore.com>

	* a-tifiio.adb (Put): Avoid generating too many digits for certain
	fixed types with smalls that are neither integer or the reciprocal
	of an integer.

2009-04-20  Bob Duff  <duff@adacore.com>

	* uname.ads: Minor comment fix.

	* types.ads: Minor comment fix.

From-SVN: r146382
2009-04-20 11:27:50 +02:00
Michael Matz
21a495fba4 * Makefile.in (generated_files): Take out $(simple_generated_c).
From-SVN: r146381
2009-04-20 09:20:33 +00:00
Pascal Obry
262991d826 adaint.c (__gnat_get_libraries_from_registry): Fix code to avoid warning.
2009-04-20  Pascal Obry  <obry@adacore.com>

	* adaint.c (__gnat_get_libraries_from_registry): Fix code to
	avoid warning. At the same time fix a memory leak.

	* osint.adb (Get_Libraries_From_Registry): Properly free memory
	returned by the above routine.

From-SVN: r146380
2009-04-20 11:19:08 +02:00
Arnaud Charlet
d0f8d157fe [multiple changes]
2009-04-20  Robert Dewar  <dewar@adacore.com>

	* s-conca5.adb, s-conca5.ads, s-conca7.adb, s-conca7.ads, s-conca9.adb,
	s-conca9.ads, rtsfind.ads, s-conca2.adb, s-conca2.ads, s-conca4.adb,
	s-conca4.ads, s-conca6.adb, s-conca6.ads, s-conca8.adb, s-conca8.ads,
	s-conca3.adb, s-conca3.ads (Str_Concat_Bounds_x): New functions.

	* exp_ch4.adb (Expand_Concatenate): Minor code reorganization

2009-04-20  Pascal Obry  <obry@adacore.com>

	* initialize.c (__gnat_initialize): Add braces to kill warning.

	* adaint.c: Minor reformatting, untabify, remove trailing spaces.

From-SVN: r146379
2009-04-20 11:14:04 +02:00
Arnaud Charlet
34c25b321f * gcc-interface/Make-lang.in: Update dependencies.
From-SVN: r146377
2009-04-20 11:10:29 +02:00
Arnaud Charlet
9549767b9f [multiple changes]
2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>

	* adaint.h (__gnat_lwp_self): Declare on Linux.

	* adaint.c (__gnat_os_filename): Add ATTRIBUTE_UNUSED on 'filename'.

2009-04-20  Robert Dewar  <dewar@adacore.com>

	* exp_ch5.adb, usage.adb, back_end.adb, opt.ads: Implement
	front-end part of -fpreserve-control-flow switch.

From-SVN: r146376
2009-04-20 11:02:17 +02:00
Arnaud Charlet
d7f9440126 [multiple changes]
2009-04-20  Bob Duff  <duff@adacore.com>

	* rtsfind.adb: Minor comment fix

2009-04-20  Robert Dewar  <dewar@adacore.com>

	* exp_aggr.adb: Minor reformatting
	Minor code reorganization (use Nkind_In)

	* g-socket.adb: Minor reformatting

	* g-socket.ads: Minor comment fix

	* s-auxdec.ads: Minor comment and organization update.

	* s-auxdec-vms_64.ads: Minor comment and organization update.

	* sem_ch10.adb: Minor addition of ??? comment

	* sem_disp.adb: Minor reformatting

From-SVN: r146375
2009-04-20 10:55:51 +02:00
Arnaud Charlet
f8b86c2d80 [multiple changes]
2009-04-20  Ed Schonberg  <schonberg@adacore.com>

	* inline.adb (Add_Inlined_Subprogram): Do not place on the back-end
	list a caller of an inlined subprogram, if the caller itself is not
	called.

2009-04-20  Pascal Obry  <obry@adacore.com>

	* adaint.c: Disable use of ACL on network drives.

2009-04-20  Arnaud Charlet  <charlet@adacore.com>

	* gnat_ugn.texi: Add examples.

From-SVN: r146374
2009-04-20 10:49:02 +02:00
Thomas Quinot
efec4f2a56 g-socket.ads (Abort_Selector): Clarify documentation.
2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads (Abort_Selector): Clarify documentation.

From-SVN: r146373
2009-04-20 10:45:04 +02:00
Arnaud Charlet
162f2c7238 Update comments.
From-SVN: r146372
2009-04-20 10:44:37 +02:00
Arnaud Charlet
ff2e7c1ed0 [multiple changes]
2009-04-20  Arnaud Charlet  <charlet@adacore.com>

	* opt.ads (Inspector_Mode): Update documentation of this flag.

2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* g-socket.ads: Minor reformatting

	* socket.c, gsocket.h (__gnat_get_h_errno, VxWorks case): No need to
	consider S_resolvLib error codes since we only use the hostLib wrappers.

2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
	of the Underlying_Record_View after that of the derived type.

From-SVN: r146371
2009-04-20 10:41:44 +02:00
Arnaud Charlet
26a43556c8 [multiple changes]
2009-04-20  Arnaud Charlet  <charlet@adacore.com>

	* switch-c.adb (Scan_Front_End_Switches): Disable front-end inlining
	in inspector mode.

2009-04-20  Javier Miranda  <miranda@adacore.com>

	* sem_ch6.adb (New_Overloaded_Entity): Minor reformating.

	* sem_ch6.ads (Subtype_Conformant, Type_Conformant): Add missing
	documentation.

	* exp_aggr.adb (Build_Record_Aggr_Code): Code cleanup.

	* sem_disp.adb
	(Check_Dispatching_Operation): Set attribute Is_Dispatching_Operation
	in internally built overriding subprograms.

2009-04-20  Doug Rupp  <rupp@adacore.com>

	* s-auxdec-vms_64.ads (Integer_{8,16,32,64}_Array): New array types.

	* s-auxdec.ads: Likewise

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch3.adb (Find_Type_Name): Reject the completion of a private
	type by an interface.

	* exp_ch6.adb (Expand_Call): Inline To_Address unconditionally, to
	minimze difference in expanded tree when compiled as spec of the main
	unit, or as a spec in the context of another unit.

From-SVN: r146370
2009-04-20 10:35:16 +02:00
Arnaud Charlet
3f25c54d81 [multiple changes]
2009-04-20  Hristian Kirtchev  <kirtchev@adacore.com>

	* a-calend.adb: Remove types char_Pointer, int, tm and tm_Pointer.
	(localtime_tzoff): This routine no longer accepts an actual of type
	tm_Pointer.
	(UTC_Time_Offset): Remove local variable Secs_TM.

	* sysdep.c (__gnat_localtime_tzoff): This routine no longer accepts an
	actual of type struct tm*. Add local variable of type struct tm for all
	targets that provide localtime_r and need to invoke it.

2009-04-20  Thomas Quinot  <quinot@adacore.com>

	* s-oscons-tmplt.c, g-socket.adb, g-socket.ads
	(GNAT.Sockets.Resolve_Error): Add case of EPIPE
	Add case of EAGAIN for platforms where it is not equal to EWOULDBLOCK

From-SVN: r146369
2009-04-20 10:26:13 +02:00
Arnaud Charlet
8dbf3473b1 [multiple changes]
2009-04-20  Robert Dewar  <dewar@adacore.com>

	* sem_ch3.adb: Minor reformatting

	* lib-load.adb: Minor reformatting

	* sem_ch4.adb: Minor reformatting

2009-04-20  Robert Dewar  <dewar@adacore.com>

	* namet-sp.ads, namet-sp.adb (Is_Bad_Spelling_Of): Implement new spec
	(equal values => False).

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

	* exp_ch6.adb (Is_Null_Procedure): predicate is global, so that calls
	to null procedures can be inlined unconditionally.

From-SVN: r146368
2009-04-20 10:18:43 +02:00
Eric Botcazou
56fe7b052d trans.c (call_to_gnu): When creating the copy for a non-addressable parameter passed by reference...
* gcc-interface/trans.c (call_to_gnu): When creating the copy for a
	non-addressable parameter passed by reference, do not convert the
	actual if its type is already the nominal type, unless it is of
	self-referential size.

From-SVN: r146367
2009-04-20 08:14:36 +00:00
Arnaud Charlet
9fcf2a0bdc [multiple changes]
2009-04-20  Arnaud Charlet  <charlet@adacore.com>

	* gnat_ugn.texi: Fix typos.

2009-04-20  Robert Dewar  <dewar@adacore.com>

	* debug.adb, gnat1drv.adb, sem_ch13.adb: Add circuitry to
	Validate_Unchecked_Warnings to suppress warnings about size or
	alignment or extra bits if either type involved has pragma Warnings
	(Off) set for the type entity.

From-SVN: r146366
2009-04-20 10:09:46 +02:00
GCC Administrator
76974327ad Daily bump.
From-SVN: r146363
2009-04-20 00:17:01 +00:00
Dave Korn
8e208874c7 cygwin-stdint.h (INTPTR_TYPE): Remove "long".
* config/i386/cygwin-stdint.h (INTPTR_TYPE):  Remove "long".
	(UINTPTR_TYPE):  Likewise.

From-SVN: r146360
2009-04-19 21:15:01 +00:00
Joseph Myers
a45e580b25 re PR c/37481 (-pedantic accepts flexible array member = "string" initialization)
PR c/37481
	* c-typeck.c (digest_init): Check for initializing an array with a
	string literal.

testsuite:
	* gcc.dg/c99-flex-array-7.c: New test.

From-SVN: r146359
2009-04-19 21:38:53 +01:00
Joseph Myers
20845d3582 re PR c/19771 (VLA deallocation)
PR c/19771
	* c-semantics.c (pop_stmt_list): Propagate
	STATEMENT_LIST_HAS_LABEL to parent statement list.

testsuite:
	* gcc.c-torture/execute/vla-dealloc-1.c: New test.

From-SVN: r146358
2009-04-19 21:19:54 +01:00
Adam Nemet
28143fdd2f mips.h (mips_tune_attr): New macro.
* config/mips/mips.h (mips_tune_attr): New macro.
	* config/mips/mips.md (cpu): Use it.

From-SVN: r146357
2009-04-19 19:56:14 +00:00
Joseph Myers
da377db901 re PR c/38243 (Restrict constraint violation not an error with -pedantic-errors)
PR c/38243
	* c-decl.c (shadow_tag_warned): Diagnose use of restrict when
	declaring a tag.

testsuite:
	* gcc.dg/c99-restrict-3.c: New test.

From-SVN: r146356
2009-04-19 19:25:07 +01:00
Diego Novillo
3baf459d85 toplev.c (compile_file): Move call to coverage_finish ...
* toplev.c (compile_file): Move call to coverage_finish ...
	* cgraphunit.c (ipa_passes): ... here.
	Call cgraph_process_new_functions.
	* ipa-utils.c (get_base_var): Handle CONSTRUCTOR.
	* Makefile.in (cgraphunit.o): Add dependency on COVERAGE_H.

From-SVN: r146354
2009-04-19 13:52:03 -04:00
Joseph Myers
aa50850225 re PR preprocessor/20078 (Gcc doesn't complain about non-benign macro definitions)
libcpp:
	PR preprocessor/20078
	* include/cpp-id-data.h (struct cpp_macro): Add extra_tokens
	field.
	* include/cpplib.h (SP_DIGRAPH, SP_PREV_WHITE): Define.
	(struct cpp_token): Change flags to unsigned short.
	* lex.c (_cpp_lex_direct): Initialize arg_no for CPP_PASTE tokens.
	(_cpp_equiv_tokens): Check arg_no for CPP_PASTE tokens.
	(cpp_token_val_index): Return CPP_TOKEN_FLD_ARG_NO for CPP_PASTE
	tokens.
	* macro.c (macro_real_token_count): New.
	(enter_macro_context, replace_args): Use macro_real_token_count.
	(create_iso_definition): Record whitespace surrounding and digraph
	spelling of # and ## tokens using SP_PREV_WHITE and SP_DIGRAPH.
	Set extra_tokens and save CPP_PASTE tokens with arg_no set for
	multiple consecutive ## tokens.
	(_cpp_create_definition): Initialize extra_tokens.
	(cpp_macro_definition): Use macro_real_token_count.

gcc/testsuite:
	* gcc.dg/cpp/paste16.c, gcc.dg/cpp/redef4.c: New tests.

From-SVN: r146352
2009-04-19 18:10:56 +01:00
Jan Hubicka
b6fa5b0101 cgraph.c (cgraph_create_edge, [...]): Set proper cfun.
* cgraph.c (cgraph_create_edge, cgraph_set_call_stmt): Set proper cfun.
	(dump_cgraph_node): Dump can throw external flag.
	* ipa-pure-const.c (propagate): Fix propagation of nothrow flags.

From-SVN: r146349
2009-04-19 13:27:28 +00:00
Jan Hubicka
9b074dc6c1 stdatomic.h (__atomic_flag_for_address): Use _GLIBCXX_NOTHROW.
* include/c_compatibility/stdatomic.h (__atomic_flag_for_address): Use
	_GLIBCXX_NOTHROW.

From-SVN: r146348
2009-04-19 13:16:34 +00:00
Eric Botcazou
f7ebc6a8c2 trans.c (gigi): Make the special IA-64 descriptor type a builtin type and give it a name.
* gcc-interface/trans.c (gigi): Make the special IA-64 descriptor type
	a builtin type and give it a name.

From-SVN: r146347
2009-04-19 13:02:14 +00:00
Eric Botcazou
743e3e4c8c gnat.exp (local_find_gnatmake): Pass --LINK to gnatlink.
* lib/gnat.exp (local_find_gnatmake): Pass --LINK to gnatlink.
	Do not pass -B$root after -margs.

From-SVN: r146345
2009-04-19 12:46:12 +00:00
Manuel López-Ibáñez
ca409efd92 re PR c/32061 ((Wlogical-op) wording of warning of constant logicials need improvement)
2009-04-19  Manuel López-Ibáñez  <manu@gcc.gnu.org>

	PR c/32061
	PR c++/36954
	* doc/invoke.texi: Add -Wlogical-op to -Wextra.
	* common.opt (Wlogical-op): Move from here...
	* c.opt (Wlogical-op): ... to here.
	* c-typeck.c (parser_build_binary_op): Update call to
	warn_logical_operator.
	* c-opts.c (c_common_post_options): Enable warn_logical_op with
	extra_warnings.
	* c-common.c (warn_logical_op): Update.
	* c-common.h (warn_logical_op): Update declaration.
cp/
	* call.c (build_new_op): Save the original codes of operands
	before folding.
	
testsuite/
	* gcc.dg/pr32061.c: New.
	* gcc.dg/Wlogical-op-1.c: Update.
	* g++.dg/warn/Wlogical-op-1.C: Update.
	* g++.dg/warn/pr36954.C: New.

From-SVN: r146344
2009-04-19 11:04:13 +00:00
Paolo Carlini
c93c8cf442 2009-04-19 Paolo Carlini <paolo.carlini@oracle.com>
Trim last ChangeLog entry.

From-SVN: r146343
2009-04-19 10:34:40 +00:00
Jan Hubicka
3939adc2d6 Fix changelog entry.
From-SVN: r146342
2009-04-19 10:29:33 +00:00
Jan Hubicka
9225b33903 stdatomic.h (atomic_flag_test_and_set_explicit, [...]): Use _GLIBCXX_NOTHROW.
* c_compatibility/stdatomic.h (atomic_flag_test_and_set_explicit,
	atomic_flag_clear_explicit, __atomic_flag_wait_explicit): Use
	_GLIBCXX_NOTHROW.
	* bits/c++config (_GLIBCXX_NOTHROW): New.

From-SVN: r146341
2009-04-19 09:36:10 +00:00
Eric Botcazou
9db4cdd334 * tree.c (protected_set_expr_location): Fix formatting.
From-SVN: r146340
2009-04-19 08:39:05 +00:00