Age | Commit message (Collapse) | Author | Files | Lines |
|
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 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 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 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 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
|
|
* 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 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
|
|
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 Thomas Quinot <quinot@adacore.com>
* g-socket.ads (Send_Socket): Fix misleading comment.
From-SVN: r146384
|
|
From-SVN: r146383
|
|
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
|
|
From-SVN: r146381
|
|
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 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
|
|
From-SVN: r146377
|
|
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 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 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 Thomas Quinot <quinot@adacore.com>
* g-socket.ads (Abort_Selector): Clarify documentation.
From-SVN: r146373
|
|
From-SVN: r146372
|
|
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 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 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 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
|
|
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 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
|
|
From-SVN: r146363
|
|
* config/i386/cygwin-stdint.h (INTPTR_TYPE): Remove "long".
(UINTPTR_TYPE): Likewise.
From-SVN: r146360
|
|
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
|
|
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
|
|
* config/mips/mips.h (mips_tune_attr): New macro.
* config/mips/mips.md (cpu): Use it.
From-SVN: r146357
|
|
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
|
|
* 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
|
|
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
|
|
* 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
|
|
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
|
|
* lib/gnat.exp (local_find_gnatmake): Pass --LINK to gnatlink.
Do not pass -B$root after -margs.
From-SVN: r146345
|
|
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
|
|
From-SVN: r146340
|
|
From-SVN: r146339
|
|
PR c/27676
* c-typeck.c (readonly_warning): new.
(build_unary_op, build_modify_expr): Use readonly_warning for
storing into something readonly but not const-qualified.
testsuite:
* gcc.dg/lvalue-5.c: New test.
From-SVN: r146336
|
|
PR c/22367
* c-typeck.c (build_unary_op): Check for taking address of
expression of type void.
testsuite:
* gcc.dg/lvalue-6.c, gcc.dg/lvalue-7.c: New tests.
From-SVN: r146332
|
|
libcpp:
* directives.c (parse_include): Pass true to check_eol.
gcc/testsuite:
* gcc.dg/cpp/include5.c: New test.
From-SVN: r146327
|
|
* cp-tree.h: Remove the prototype for insert_block.
* decl.c (insert_block): Remove.
From-SVN: r146326
|
|
PR c/35210
* c-typeck.c (build_function_call): Check for calling a function
with qualified void return types. Call require_complete_type when
generating a trap.
testsuite:
* gcc.dg/call-diag-2.c: New test.
From-SVN: r146324
|
|
* cgraph.c (cgraph_make_edge, dump_cgraph_node, cgraph_set_call_stmt):
Set nothrow flag.
* cgraph.h (struct function): Reduce loop_nest to 30 bits; add
can_throw_external flag.
* ipa-reference.c (ipa_utils_reduced_inorder): Update call.
* ipa-pure-const.c (ignore_edge): New function.
(propagate): Compute order for NOTHROW computation; set NOTHROWs
only over can_throw_external edges.
(local_pure_const): Add nothrow flag.
* ipa-utils.c (searchc): Add ignore_edge callback.
(ipa_utils_reduced_inorder): Add ignore_edge callback.
* ipa-utils.h (ipa_utils_reduced_inorder): Update prototype.
(set_nothrow_function_flags): Update cgraph.
* tree-cfg.c (verify_stmt): Relax nothrow checking when in IPA mode.
From-SVN: r146322
|
|
libcpp:
PR preprocessor/39646
* include/line-map.h (enum lc_reason): Add LC_RENAME_VERBATIM.
* line-map.c (linemap_add): Handle LC_RENAME_VERBATIM.
* directives.c (do_line, do_linemarker): Use LC_RENAME_VERBATIM in
place of LC_RENAME.
gcc/testsuite:
* gcc.dg/cpp/line8.c: New test.
From-SVN: r146319
|
|
libcpp:
PR preprocessor/39647
* directives.c (check_eol): Add parameter expand.
(do_undef, parse_include, do_line, do_linemarker, do_ident,
do_pragma_once, do_pragma_system_header, do_ifdef, do_ifndef,
do_else, do_endif, do_assert, do_unassert): All callers changed.
Pass true from do_line, false elsewhere.
gcc/testsuite:
* gcc.dg/cpp/line7.c: New test.
From-SVN: r146316
|
|
propagate_necessity, at tree-ssa-dce.c:754)
2009-04-18 Richard Guenther <rguenther@suse.de>
PR middle-end/39804
* tree-ssa-ccp.c (fold_stmt_1): New function factored from ...
(fold_stmt): ... this and ...
(fold_stmt_inplace): ... this.
(fold_stmt_1): Fold references in calls and asms.
* tree-cfg.c (remove_useless_stmts_cond): Use fold_stmt.
* gcc.target/i386/pr39804.c: New testcase.
From-SVN: r146314
|
|
* tree-vrp.c (ssa_name_nonzero_p): Remove.
* tree.h: Remove the prototype for ssa_name_nonzero_p.
From-SVN: r146313
|