2008-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_One_Call): Handle complex overloading of a
procedure call whose prefix
is a parameterless function call that returns an access_to_procedure.
From-SVN: r138491
2008-08-01 Gary Dismukes <dismukes@adacore.com>
* exp_ch6.adb (Expand_Call): Remove ugly special-case code that resets
Orig_Prev to Prev in the case where the actual is N_Function_Call or
N_Identifier. This was interfering with other cases that are rewritten
as N_Identifier, such as allocators, resulting in passing of the wrong
accessibility level, and based on testing this code is apparently no
longer needed at all.
From-SVN: r138490
* sem_prag.adb:
(Check_Precondition_Postcondition): If not generating code, analyze the
expression in a postcondition that appears in a subprogram body, so that
it is properly decorated for ASIS use.
From-SVN: r138489
* mlib-utl.adb:
(Adalib_Path): New variable to store the path of the adalib directory
when procedure Specify_Adalib_Dir is called.
(Lib_Directory): If Adalib_Path is not null, return its value
(Specify_Adalib_Dir): New procedure
* mlib-utl.ads (Specify_Adalib_Dir): New procedure
From-SVN: r138488
2008-08-01 Vincent Celier <celier@adacore.com>
* prj-attr.adb: New attribute Compiler'Name_Syntax (<lang>)
* prj-nmsc.adb (Process_Compiler): Recognize attribute Name_Syntax
* prj.adb (Object_Exist_For): Use Object_Generated, not
Objects_Generated that is removed and was never modified anyway.
* prj.ads:
(Path_Syntax_Kind): New enumeration type
(Language_Config): New component Path_Syntax, defaulted to Host.
Components PIC_Option and Objects_Generated removed, as they are not
used.
* snames.adb: New standard name Path_Syntax
* snames.ads: New standard name Path_Syntax
From-SVN: r138487
2008-08-01 Ed Schonberg <schonberg@adacore.com>
* checks.adb (Apply_Float_Conversion_Check): If the expression to be
converted is a real literal and the target type has static bounds,
perform the conversion exactly to prevent floating-point anomalies on
some targets.
From-SVN: r138486
2008-08-01 Jerome Lambourg <lambourg@adacore.com>
* s-os_lib.adb (Normalize_Pathname): Take care of double-quotes in
paths, which are authorized by Windows but can lead to errors when used
elsewhere.
From-SVN: r138484
2008-08-01 Jose Ruiz <ruiz@adacore.com>
* adaint.c (__gnat_tmp_name): Refine the generation of temporary names
for RTX. Adding a suffix that is incremented at each iteration.
From-SVN: r138482
2008-08-01 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.ads (Need_Subprogram_Instance_Body): new function, to create
a pending instantiation for the body of a subprogram that is to be
inlined.
* sem_ch12.adb:
(Analyze_Subprogram_Instantiation): use Need_Subprogram_Instance_Body.
* sem_prag.adb (Make_Inline): If the pragma applies to an instance,
create a pending instance for its body, so that calls to the subprogram
can be inlined by the back-end.
From-SVN: r138480
gcc:
2008-08-01 Paolo Bonzini <bonzini@gnu.org>
* configure.ac: Do not generate libada-mk. Do not subst
host_cc_for_libada.
* libada-mk.in: Remove.
* Makefile.in: Pass TARGET_LIBGCC2_CFLAGS to libgcc.mvars.
* configure: Regenerate.
libada:
2008-08-01 Paolo Bonzini <bonzini@gnu.org>
* configure.ac (warn_cflags): Substitute.
* configure: Regenerate.
* Makefile.in (libdir, WARN_CFLAGS): Substitute.
(GCC_WARN_CFLAGS): Remove NOCOMMON_FLAG.
(ADA_CFLAGS, T_ADA_CFLAGS, X_ADA_CFLAGS, ALL_ADA_CFLAGS): Remove,
they were unused.
(libada-mk): Do not include. Include libgcc.mvars instead.
(tmake_file): Remove, do not include.
(FLAGS_TO_PASS): Pass dummy values for exeext and CC.
* configure: Regenerate.
gnattools:
2008-08-01 Paolo Bonzini <bonzini@gnu.org>
* configure.ac (warn_cflags): Substitute.
* configure: Regenerate.
* Makefile.in (libdir, exeext, WARN_CFLAGS): Substitute.
(GCC_WARN_CFLAGS): Remove NOCOMMON_FLAG.
(ADA_INCLUDE_DIR, ADA_RTL_OBJ_DIR): Remove as they were unused.
(libsubdir): Remove.
(libada-mk): Do not include. Include libgcc.mvars instead.
(xmake_file): Remove, do not include.
From-SVN: r138479
2008-08-01 Jose Ruiz <ruiz@adacore.com>
* adaint.c (__gnat_tmp_name): RTSS applications do not support tempnam
nor tmpnam, so we always use c:\WINDOWS\Temp\gnat-XXXXXX as temporary
name.
From-SVN: r138474
2008-08-01 Ed Schonberg <schonberg@adacore.com>
* exp_disp.adb (Expand_Interface_Conversion): If the target type is a
tagged synchronized type, use corresponding record type.
From-SVN: r138463
2008-08-01 Jose Ruiz <ruiz@adacore.com>
* cstreams.c (__gnat_full_name): RTSS applications cannot ask for the
current directory so only fully qualified names are allowed.
From-SVN: r138460
2008-08-01 Robert Dewar <dewar@adacore.com>
* snames.ads:
Minor comment fixes, some pragmas were not properly
categorized in the comments, documentation change only
From-SVN: r138458
2008-08-01 Basile Starynkevitch <basile@starynkevitch>
* gcc/tree-pass.h: Added comment about not dumping passes with name
starting with star in struct opt_pass.
* gcc/passes.c (register_dump_files_1): Don't do dump for a pass with
name starting with star.
* gcc/doc/passes.texi (Pass manager): Mention pass names and special
meaning of star prefix to avoid dump.
From-SVN: r138450
2008-07-31 Chris Fairles <chris.fairles@gmail.com>
* include/std/chrono (duration): Use explicitly defaulted ctor, cctor,
dtor and assignment. Add diagnostics as per 20.8.3 paragraphs 2, 3
and 4 in WD. Other minor tweaks.
* testsuite/20_util/duration/cons/1_neg.cc: Adjust line numbers.
* testsuite/20_util/duration/requirements/typedefs_neg1.cc: New.
* testsuite/20_util/duration/requirements/typedefs_neg2.cc: Likewise.
* testsuite/20_util/duration/requirements/typedefs_neg3.cc: Likewise.
From-SVN: r138434
PR preprocessor/36649
* files.c (struct report_missing_guard_data): New type.
(report_missing_guard): Put paths into an array instead of printing
them right away. Return 1 rather than 0.
(report_missing_guard_cmp): New function.
(_cpp_report_missing_guards): Sort and print paths gathered by
report_missing_guard callback.
* gcc.dg/pch/cpp-3.hs: Add include guards.
* gcc.dg/pch/cpp-3a.h: Likewise.
* gcc.dg/pch/cpp-3b.h: Likewise.
* gcc.dg/cpp/mi8.c: New test.
* gcc.dg/cpp/mi8a.h: New file.
* gcc.dg/cpp/mi8b.h: New file.
* gcc.dg/cpp/mi8c.h: New file.
* gcc.dg/cpp/mi8d.h: New file.
From-SVN: r138432
* mkstemps.c (mkstemps): If open failed with errno other than
EEXIST, return immediately.
* make-temp-file.c: Include errno.h.
(make_temp_file): If mkstemps failed, print an error message
before aborting.
From-SVN: r138429
2008-07-31 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/lib/libstdc++.exp (libstdc++_init): Set v3-libgomp.
(check_v3_target_parallel_mode): Robustify, just follow the
structure of testsuite/Makefile.am.
From-SVN: r138428
PR rtl-optimization/36419
* dwarf2out.c (barrier_args_size): New variable.
(compute_barrier_args_size, compute_barrier_args_size_1): New
functions.
(dwarf2out_stack_adjust): For BARRIERs call compute_barrier_args_size
if not called yet in the current function, use barrier_args_size
array to find the new args_size value.
(dwarf2out_frame_debug): Free and clear barrier_args_size.
* g++.dg/eh/async-unwind2.C: New test.
From-SVN: r138427
PR c++/36405
* rtti.c (get_tinfo_decl_dynamic, get_typeid): Call
complete_type_or_else even for UNKNOWN_TYPE to get diagnostics.
* g++.dg/rtti/typeid8.C: New test.
From-SVN: r138426