Vincent Celier [Thu, 11 Oct 2001 01:02:03 +0000 (01:02 +0000)]
* make.adb:
(Add_Switches): reflect the changes for the switches attributes
Default_Switches indexed by the programming language,
Switches indexed by the file name.
(Collect_Arguments_And_Compile): Idem.
Reflect the attribute name changes.
* prj-attr.adb:
(Initialisation_Data): Change the names of some packages and
attributes.
(Initialize): process case insensitive associative arrays.
* prj-dect.adb:
(Parse_Attribute_Declaration): For case insensitive associative
arrays, set the index string to lower case.
* prj-env.adb:
Reflect the changes of the project attributes.
* prj-nmsc.adb:
Replace Check_Naming_Scheme by Ada_Check and
Language_Independent_Check.
* prj-nmsc.ads:
Replaced Check_Naming_Scheme by 2 procedures:
Ada_Check and Language_Independent_Check.
* prj-proc.adb:
(Process_Declarative_Items): For case-insensitive associative
arrays, set the index string to lower case.
(Recursive_Check): Call Prj.Nmsc.Ada_Check, instead of
Prj.Nmsc.Check_Naming_Scheme.
* prj-tree.adb:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
* prj-tree.ads:
(Case_Insensitive): New function
(Set_Case_Insensitive): New procedure
(Project_Node_Record): New flag Case_Insensitive.
* prj-util.adb:
(Value_Of): new function to get the string value of a single
string variable or attribute.
* prj-util.ads:
(Value_Of): new function to get the string value of a single
string variable or attribute.
* prj.adb:
(Ada_Default_Spec_Suffix): New function
(Ada_Default_Impl_Suffix): New function
Change definitions of several constants to reflect
new components of record types.
* prj.ads:
(Naming_Data): Change several components to reflect new
elements of naming schemes.
(Project_Data): New flags Sources_Present and
Language_Independent_Checked.
(Ada_Default_Spec_Suffix): New function.
(Ada_Default_Impl_Suffix): New function.
Ed Schonberg [Thu, 11 Oct 2001 00:19:12 +0000 (00:19 +0000)]
sem_prag.adb: (Analyze_Pragma...
* sem_prag.adb: (Analyze_Pragma, case External): If entity is a
constant, do not indicate possible modification, so that gigi can
treat it as a bona fide constant.
Ed Schonberg [Wed, 10 Oct 2001 23:03:17 +0000 (23:03 +0000)]
exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for a dynamic task if...
* exp_ch4.adb (Expand_N_Allocator): Generate meaningful names for
a dynamic task if the allocator appears in an indexed assignment
or selected component assignment.
* exp_util.adb (Build_Task_Array_Image, Build_Task_Record_Image):
For a dynamic task in an assignment statement, use target of
assignment to generate meaningful name.
Ed Schonberg [Wed, 10 Oct 2001 22:46:39 +0000 (22:46 +0000)]
einfo.adb (Write_Field19_Name): Body_Entity is also defined for a generic package.
* einfo.adb (Write_Field19_Name): Body_Entity is also defined for
a generic package.
* einfo.ads: Body_Entity is also defined for generic package.
Documentation change only
* exp_aggr.adb (Build_Array_Aggr_Code): When expanding an
others_choice for a discriminated component initialization,
convert discriminant references into the corresponding discriminals.
* exp_ch3.adb (Get_Simple_Init_Val): Add qualification to aggregate
only if original type is private and expression has to be wrapped
in a conversion.
* checks.adb:
(Apply_Constraint_Check): Do not perform length check
if expression is an aggregate with only an others_choice.
(Length_N_Cond): two references to the same in_parameter
(typically the discriminal in an init_proc) denote the same value.
Two useful optimization uncovered by bugfixes above.
Robert Dewar [Wed, 10 Oct 2001 22:27:31 +0000 (22:27 +0000)]
xeinfo.adb: Change int to char in translation of enumeration types.
* xeinfo.adb: Change int to char in translation of enumeration types.
This fixes a problem in the C representation of component alignment.
Add 2001 to copyright notice
cygwin.h: Avoid adding include files if -nostdinc is used.
* config/i386/cygwin.h: Avoid adding include files if -nostdinc is used.
* config/i386/mingw32.h (WIN32_NO_ABSOLUTE_INST_DIRS): New define.
(Thanks to Chris Faylor for suggesting macro name).
(CPP_PREDEFINES): Define __MINGW32__ but don't set value; add more WIN32
defines.
(STANDARD_INCLUDE_DIR): Remove i386- from directory name.
(STANDARD_INCLUDE_COMPONENT): Change to MINGW.
(MATH_LIBRARY): Undef before definition.
(OUTPUT_QUOTED_STRING): Likewise.
* config/i386/cygwin.h: Use WIN32_NO_ABSOLUTE_INST_DIRS.
unwind-dw2-fde.c (fde_compare_t): Change return type to int.
* unwind-dw2-fde.c (fde_compare_t): Change return type to int.
(fde_unencoded_compare): Likewise. Don't use subtraction to get
a tristate comparison value.
(fde_single_encoding_compare, fde_mixed_encoding_compare): Likewise.
Jason Merrill [Tue, 9 Oct 2001 15:42:44 +0000 (11:42 -0400)]
call.c (standard_conversion): Add bad conversion between integers and pointers.
* call.c (standard_conversion): Add bad conversion between
integers and pointers.
(convert_like_real): Don't use convert_for_initialization for bad
conversions; complain here and use cp_convert.
(build_over_call): Don't handle bad conversions specially.
(perform_implicit_conversion): Allow bad conversions.
(can_convert_arg_bad): New fn.
* cp-tree.h: Declare it.
* typeck.c (convert_for_assignment): Use it.
(ptr_reasonably_similar): Any target type is similar to void.
John Hornkvist [Tue, 9 Oct 2001 05:32:16 +0000 (05:32 +0000)]
Implement Darwin PowerPC ABI.
2001-10-09 John Hornkvist <john@toastedmarshmallow.com>
Implement Darwin PowerPC ABI.
* configure.in: Handle powerpc-*-darwin*.
* Makefile.am: Set source files for POWERPC_DARWIN.
* configure: Rebuilt.
* Makefile.in: Rebuilt.
* include/ffi.h.in: Define FFI_DARWIN and FFI_DEFAULT_ABI for
POWERPC_DARWIN.
* src/powerpc/darwin.S: New file.
* src/powerpc/ffi_darwin.c: New file.
Alexandre Oliva [Mon, 8 Oct 2001 20:54:07 +0000 (20:54 +0000)]
langhooks.h: New file.
* langhooks.h: New file.
* Makefile.in (OBJS): Added langhooks.o.
(c-lang.o): Depend on langhooks.h.
(c-common.o): Don't depend on tree-inline.h.
(tree-inline.o): Depend on toplev.h.
(langhooks.o): New rule.
* c-common.c: Don't include tree-inline.h.
(c_mark_lang_decl): Mark argument c as unused.
(c_common_lang_init): Don't initialize hooks here.
* c-lang.c: Include langhooks.h, then override some macros.
(lang_hooks): Initialize with macros in langhooks.h.
(c_init): Don't initialize hooks here.
* toplev.c (struct lang_hooks_for_tree_inlining): New struct.
(struct lang_hooks): Add tree_inlining. Refer to langhooks.h.
* tree-inline.c: Include toplev.h. Don't define hook variables.
* tree-inline.h: Don't define hook types nor declare hook
variables. Move macros to...
* langhooks.c: ... new file, as functions. Adjust all callers.
Jeffrey A Law [Mon, 8 Oct 2001 20:24:55 +0000 (20:24 +0000)]
sibcall.c (optimize_sibling_and_tail_recursive_calls): Call purge_mem_unchanging_flag on all instructions...
* sibcall.c (optimize_sibling_and_tail_recursive_calls): Call
purge_mem_unchanging_flag on all instructions, not just on those
before NOTE_INSN_FUNCTION_BEG.
DJ Delorie [Mon, 8 Oct 2001 19:44:53 +0000 (15:44 -0400)]
c-decl.c (grokfield): Make sure the only unnamed fields we're allowing are either structs or unions.
* c-decl.c (grokfield): Make sure the only unnamed fields
we're allowing are either structs or unions.
* doc/extend.texi: Add documentation for the unnamed field
extension.
Zack Weinberg [Mon, 8 Oct 2001 17:58:31 +0000 (17:58 +0000)]
aclocal.m4 (gcc_AC_PROG_GNAT): New.
top:
* aclocal.m4 (gcc_AC_PROG_GNAT): New.
* configure.in: Use it.
* configure: Regenerated.
* config/pa/t-linux, config/pa/t-pa, config/pa/t-pa64,
config/pa/t-pro: Set T_ADAFLAGS, not ADA_CFLAGS.
ada:
* Make-lang.in (ADAFLAGS): Add -W -Wall.
(ADA_FLAGS_TO_PASS): Set ADA_CFLAGS=$(CFLAGS) also.
(gnat1): Also depend on attribs.o.
(gnatlib, gnatlib-shared): Set CC and ADAC in recursive make.
* Makefile.in (X_ADAFLAGS, T_ADAFLAGS): New.
(ADAC): Set to @ADAC@ in stage1, $(CC) later.
(ADAFLAGS): Add -W -Wall.
(ALL_ADAFLAGS, MOST_ADAFLAGS): Add X_ADAFLAGS and T_ADAFLAGS;
take out CFLAGS.
(.adb.o, .ads.o, a-numaux.o, a-teioed.o, s-interr.o,
s-taskin.o, sdefault.o, s-tasdeb.o, s-vaflop.o, a-except.o,
s-assert.o, s-stalib.o, s-memory.o, memtrack.o, mlib-tgt.o):
Use $(ADAC), not $(CC), as compilation command.
(gnattools): Depend directly on tools to build, don't use
recursive make.
(gnatlib): Set ADA_CFLAGS=$(GNATLIBCFLAGS) in recursive make.
Neil Booth [Mon, 8 Oct 2001 06:15:14 +0000 (06:15 +0000)]
cppmacro.c (funlike_invocation_p): Move some logic to caller in enter_macro_context.
* cppmacro.c (funlike_invocation_p): Move some logic to caller
in enter_macro_context. Create a padding token in its own context
if necessary when the search for '(' fails.
(enter_macro_context): Update.
Joseph Myers [Sun, 7 Oct 2001 18:02:46 +0000 (19:02 +0100)]
acinclude.m4: Fix spelling error of "separate" as "seperate".
config:
* acinclude.m4: Fix spelling error of "separate" as "seperate".
gcc:
* ChangeLog.2, c-decl.c, config/i386/i386.md, doc/gcc.texi, gcc.c,
genmultilib, toplev.c: Fix spelling errors of "separate" as
"seperate", and corresponding spelling errors of related words.
gcc/ada:
* 5oosinte.adb: Fix spelling error of "separate" as "seperate".
gcc/testsuite:
* gcc.c-torture/unsorted/unsorted.exp, lib/file-format.exp: Fix
spelling errors of "separate" as "seperate".
libffi:
* src/x86/ffi.c: Fix spelling error of "separate" as "seperate".
libjava:
* defineclass.cc, java/awt/image/ColorModel.java,
java/awt/image/SampleModel.java, java/lang/Package.java,
java/security/cert/X509Extension.java: Fix spelling errors of
"separate" as "seperate", and corresponding spelling errors of
related words.
libstdc++-v3:
* docs/html/22_locale/locale.html, docs/html/faq/index.html: Fix
spelling errors of "separate" as "seperate", and corresponding
spelling errors of related words.
* docs/html/faq/index.txt: Regenerate.
Zack Weinberg [Sat, 6 Oct 2001 23:11:27 +0000 (23:11 +0000)]
cpplex.c (enum spell_type): Add SPELL_NUMBER.
* cpplex.c (enum spell_type): Add SPELL_NUMBER.
(cpp_token_len, cpp_spell_token, cpp_output_token,
_cpp_equiv_tokens): Handle it.
* cpplib.h (TTYPE_TABLE): Use SPELL_NUMBER for CPP_NUMBER and
CPP_COMMENT, SPELL_NONE for CPP_PADDING and CPP_EOF.
* cppexp.c (_cpp_parse_expr): Use the correct operator code in
error messages.
Catherine Moore [Fri, 5 Oct 2001 20:33:09 +0000 (20:33 +0000)]
stormy-abi: Document abi changes.
* config/stormy16/stormy-abi: Document abi changes.
* config/stormy16/stormy16.h (REG_ALLOC_ORDER): Redefine.
(ICALL_REGS): New register class.
(NUM_ARGUMENT_REGISTERS): Now 6.
(DEFAULT_PCC_STRUCT_RETURN): Don't try to return structs
in registers.
(REG_CLASS_FROM_LETTER): Map 'z' to ICALL_REGS.
* config/stormy16.md (call_internal, call_value_internal,
indirect_jump): Use new 'z' constraint.