Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
ch-lang.c (chill_printstr chill_printchar) c-valprint.c (c_val_print)
ch-valprint.c (chill_val_print) expprint.c (print_subexp) f-lang.c
(f_printstr f_printchar emit_char) f-valprint.c (f_val_print) jv-lang.c
(java_printchar java_emit_char) jv-valprint.c (java_value_print
java_val_print) language.c (unk_lang_printchar unk_lang_printstr
unk_lang_emit_char) language.h (struct language_defn LA_PRINT_STRING
LA_EMIT_CHAR) m2-lang.c (m2_printstr m2_printchar emit_char) printcmd.c
(print_formatted) scm-lang.c (scm_printstr) valprint.c
(val_print_string) value.h (val_print_string): Add emit_char routines
to language_desc struct to allow finer control over language specific
character output issues. Add character width arg to printstr routines
to allow handling of wchar_t/Unicode strings. Fix c_printstr to handle
wide characters. Supply width argument to LA_PRINT_STRING and
val_print_string.
* jv-lang.c (java_object_type dynamics_objfile java_link_class_type
get_dynamics_objfile get_java_object_type) jv-lang.h
(get_java_object_type): Make lots of things static.
* expprint.c (dump_prefix_expression dump_subexp): Move opcode name
printing to common routine (op_name).
* (dump_subexp): Add support for OP_SCOPE.
|
|
C, else it's `const'.
* c-lang.c c-lang.h ch-lang.c f-lang.c language.c m2-lang.c
scm-lang.c: Microsoft C can't hack const pointers. Use CONST_PTR
macro instead.
* configure configure.in defs.h: Use AC_C_CONST to figure out if
the compiler supports const. Gets rid of some cruft in defs.h.
* dwarf2read.c: <string.h> -> "gdb_string.h"
* remote-sim.c: Add prototypes. Fix call to gdbsim_kill.
* sparcl-tdep.c (download): Add prototypes to write_routine and
start_routine args.
* mswin/gdbwin.c: Don't include both varargs.h AND stdarg.h. Get
rid of varargs.h Include string.h.
* (gdbwin_update gdbwin_fputs regs_changed_f bpt_changed_f
update): Fix prototypes, fix calls.
* (update): Return value for catch_errors.
* (run_execute_command togdb_command_from_tty togdb_command):
Cleanup catching of errors from calls to execute_command. Also,
dup command string to avoid modifying const strings.
* (togdb_breakinfo_i_init togdb_breakinfo_i_next): Use 0 instead
of NULL when see if b->address isn't set.
* (bi_disable_bpt bi_enable_bpt bi_delete_all
bi_delete_breakpoint): Add arg to calls to update.
* (gui_command): Add prototype.
* (mswin_query): Fix prototype.
* (_initialize_gdbwin): Dup string to avoid modifying const.
* (info_path togdb_get_info_path): Remove const from decls cuz
this can't be const (it points at malloc'ed memory).
* (togdb_searchpath): Remove const from path. Dup string to
avoid modifying const strings.
* rindex -> strrchr.
* (gdbwin_list_symbols): Regexp param is const.
* Fix lots of refs to psymtabs to deref correct pointers.
* (togdb_set_breakpoint_sal): Call set_breakpoint_sal with sal,
not &sal.
* mswin/gdbwin.h (togdb_searchpath togdb_get_info_path
toget_set_info_path): Fix prototypes to match reality.
* mswin/gui.cpp: Define _beginthreadex and _endthreadex routines
with proper prototypes.
* mswin/iface.cpp (gdbwin_fputs): Define with correct number of args.
* mswin/ser-win32s.c: Fix defs of min and max.
* mswin/serdll32.c (OpenComm16): Make cbInQueue and cbOutQueue be
USHORT.
* (WriteComm16): Change lpBug from LPVOID to LPCSTR.
* mswin/serdll32.h: Fix prototypes for OpenComm16 and WriteComm16.
|
|
* configure: Regenerate with autoconf.
* acconfig.h: Add CC_HAS_LONG_LONG
* config.in: Regenerate with autoheader.
* config/mips/tm-mips64.h (FORCE_LONG_LONG): Remove
* config/sparc/tm-sp64.h (CC_HAS_LONG_LONG): Remove.
* config/mips/tm-vr4300el.h (CC_HAS_LONG_LONG): Remove.
* config/mips/tm-vr4300.h (CC_HAS_LONG_LONG): Remove.
* config/mips/xm-irix5.h (CC_HAS_LONG_LONG): Remove
(PRINTF_HAS_LONG_LONG): Remove.
(FORCE_LONG_LONG): Remove.
* config/powerpc/xm-aix.h (UINT_MAX): Undef and use gdb's version.
* config/convex/xm-convex.h (CC_HAS_LONG_LONG): Remove
(PRINTF_HAS_LONG_LONG): Remove.
* config/xm-nbsd.h (CC_HAS_LONG_LONG): Remove.
(PRINTF_HAS_LONG_LONG): Remove.
* config/pa/tm-hppa.h (GET_FIELD): Put parens around
subtraction inside shift. Put parens around subtraction
in operand of bitwise and.
(struct frame_info): Forward declare
if __STDC__ defined.
(frame_saved_regs): Ditto.
(struct value): Ditto.
(struct type): Ditto.
(struct inferior_status): Ditto.
(init_extra_frame_info): Add prototype.
(skip_prologue): Ditto.
(frameless_function_invocation): Ditto.
(frame_chain): Ditto.
(frame_chain_valid): Ditto.
(saved_pc_after_call): Ditto.
(hppa_fix_call_dummy): Ditto.
(hppa_push_arguments): Ditto.
(pa_do_registers_info): Ditto.
(in_solib_call_trampoline): Ditto.
(in_solib_return_trampoline): Ditto.
(push_dummy_frame): Ditto.
* convex-tdep.c (decout): Use print_longest rather than
fprintf_filtered.
* defs.h: Remove use of FORCE_LONG_LONG and __GNUC__ to set
CC_HAS_LONG_LONG.
(INT_MIN): Fix so it works correctly when assigned to a long long.
* valprint.c (longest_to_int): Rewrite to remove dependence
on INT_MIN and INT_MAX.
(print_longest): Rewrite the code that falls back to synthesized
hex output when LONGEST value is not representable as in a long and
printf doesn't support printing long longs.
* ch-valprint.c (chill_val_print): Cast 2nd arg of
chill_print_type_scalar to LONGEST.
chill_print_type_scalar): Make static and add prototype.
* hppa-tdep.c (get_field): Ifdef out unused function.
(set_field): Ditto.
(extract_3): Ditto.
(extract_5_store): Ditto.
(extract_11): Ditto.
(extract_12): Ditto.
(deposit_17): Ditto.
(extract_14): Convert to static and add prototype.
(deposit_14): Ditto.
(extract_21): Ditto.
(deposit_21): Ditto.
(extract_17): Ditto.
(extract_5r_store): Ditto.
(extract_5R_store): Ditto.
(extract_5_load): Ditto.
(find_proc_framesize): Ditto.
(find_dummy_frame_regs): Ditto.
(sign_extend): Ditto.
(find_unwind_entry): Add prototype.
(find_return_regnum): Ditto.
(unwind_command): Ditto.
(find_dummy_frame_regs): Add parens around subtraction in operand
of bitwise-and.
(skip_prologue): Add parens around operands of logical-and inside
operand of logical-or.
(sign_extend): Add parens around operands of subtraction inside
operand of shift.
(low_sign_extend): Ditto.
* top.c (filename_completer): Convert old style decl of
filename_completion_function into prototype.
* f-lang.c (patch_common_entries): Ifdef out unused function.
* stabsread.c (read_cfront_baseclasses): Remove unused local
variable "msg_noterm".
(resolve_cfront_continuation): Remove unused local variable "fip".
(read_type): Remove unused variable xtypenums.
(read_cfront_static_fields): Remove unused variable "i".
(read_cfront_static_fields): Remove unused variable "nfields".
(read_cfront_member_functions): Add missing comment terminator.
(read_cfront_static_fields): Return 1 rather than random value.
(read_cfront_baseclasses): Ditto.
(read_cfront_baseclasses): Ditto.
(read_cfront_baseclasses): Ditto.
* somsolib.c (som_solib_create_inferior_hook): Remove unused
variable "u".
(som_solib_create_inferior_hook): Remove unused variable
shadow_contents.
(language.h): Add for needed prototypes.
(som_solib_sharedlibrary_command): Add prototype.
* hpread.c: (hpread_read_array_type): Add prototype.
* somread.c (hpread_build_pysmtabs): Add prototype.
(hpread_symfile_finish): Ditto.
(hpread_symfile_init): Ditto.
* hppah-nat.c (fetch_register): Convert old style decl
to prototype.
(gdbcore.h): Include for needed prototypes.
(fetch_register): Remove unused variable "mess".
* remote-pa.c (get_offsets): Ifdef out unused function.
(remote_start_remote): Remove unused variable "timeout".
(boot_board): Add prototype.
(reaad_frame): Add prototype.
(getpkt): Remove unused variable "bp".
(remote_kill): Add prototype.
(remote_mourn): Add prototype.
(remote_insert_breakpoint): Add prototype.
(remote_remove_breakpoint): Add prototype.
* valops.c (value_push): Only use if PUSH_ARGUMENTS is not defined.
* infcmd.c (do_registers_info): Only need prototype if
DO_REGISTERS_INFO is not defined.
(breakpoint_auto_delete_contents): Only need if
CALL_DUMMY_BREAKPOINT_OFFSET is defined.
|
|
Thu Jul 25 19:41:31 1996 Fred Fish <fnf@cygnus.com>
for a rather huge set of changes. I was going to put them here, but it
made cvs dump core. :-(
|
|
before testing against reg_ptr.
* eval.c (evaluate_subexp_standard): Cast type of
TYPE_FN_FIELD_VOFFSET to int.
* findvar.c (extract_signed_integer, extract_unsigned_integer,
extract_long_unsigned_integer): Cast type of sizeof to int.
* values.c (unpack_field_as_long, modify_field): Ditto.
* valops.c (value_assign, call_function_by_hand): Ditto.
* infcmd.c (do_registers_info): Ditto.
* ser-tcp.c (tcp_open): Ditto
* remote.c (putpkt): Ditto.
* dcache.c (dcache_peek): Ditto.
* dcache.c (dcache_poke): Ditto.
* m2-exp.y (yylex): Ditto.
* gnu-regex.c (re_match_2): Ditto.
* f-lang.c (ADD_BF_SYMNUM, saved_bf_list_end, tmp_bf_ptr): Ifdef
out unused macro definition and variables.
* inftarg.c (proc_wait): Move from main.c to here, and make static.
* valprint.c (val_print_string): Change bufsize from int to unsigned.
* main.c (wait.h): Include
* top.c (command_line_input): Remove unused variable "c".
* f-typeprint.c (f_type_print_varspec_prefix): Add missing enum
value TYPE_CODE_TYPEDEF to switch statement.
(f_type_print_varspec_suffix): Add missing enum value
TYPE_CODE_TYPEDEF to switch statement.
* ch-exp.c (parse_primval): Add remaining enumeration values to
switch statement, with no specific action.
(ch_lex): Add LOC_UNRESOLVED in switch statement.
(pushback_token): Ifdef out, since code using it is ifdef'd out.
* stabsread.c (cleanup_undefined_types): Remove unused label
"badtype".
* objfiles.h (print_symbol_bcache_statistics): Add prototype.
* maint.c (objfiles.h): Include.
(maintenance_print_statistics): Remove unused variable "temp".
* minsyms.c (lookup_minimal_symbol_solib_trampoline): Remove
unused variable "found_file_symbol".
* m2-exp.y (yylex): Add LOC_UNRESOLVED case to switch.
* language.c (lang_bool_type): Use existing function local type
variable rather than create block local variables.
* solib.c (disable_break): Enclose in ifndef SVR4_SHARED_LIBS.
* infptrace.c (wait.h, command.h): Include.
* ser-tcp.c (gdb_string.h): Include
* i386-tdep.c (codestream_seek): Change "place" to CORE_ADDR.
(i386_get_frame_setup): Change "pc" from int to CORE_ADDR.
* command.c (complete_on_enum): Make assignment used as truth value
explictly check against NULL.
(wait.h): Include.
* infrun.c (wait_for_inferior): Ifdef out prologue_pc since code
that uses it is ifdef'd out.
* parser-defs.h: Add prototype for write_dollar_variable.
* infrun.c: Add prototype for write_pc_pid.
* breakpoint.h: Add prototype for re_enable_breakpoints_in_shlibs.
* symmisc.c (bcache.h): Include.
* bcache.h: Add prototype for print_bcache_statistics.
* symfile.c: Include <time.h>.
* printcmd.c (print_scalar_formatted): Change len to unsigned int.
* valarith.c (value_equal): Cast result of TYPE_LENGTH to int.
* valarith.c (value_binop): Change result_len, promoted_len1,
and promoted_len2 to unsigned int.
* valarith.c (value_subscripted_rvalue): Change elt_offs and
elt_size to unsigned int.
* valops.c (value_array): Change typelength to unsigned int.
(destructor_name_p): Change len to unsigned int.
* scm-lang.h (scm_parse): Add prototype for scm_unpack.
* symfile.c (decrement_reading_symtab): Change return type to void.
* valarith.c (value_subscript): Remove unused variable "word".
(value_subscript): Remove unused variable "tint".
* valops.c (auto_abandon): Ifdef out, since code using it is also
ifdef'd out.
* eval.c (init_array_element): Remove unused variable "val".
* Makefile.in (values.o): Depends on scm-lang.h.
(command.o): Depends upon wait_h.
(ser-tcp.o): Depends upon gdb_string.h.
(infptrace.o): Depends upon wait_h and command_h.
(maint.o): Depends on objfiles.h and symfile.h.
* values.c (allocate_repeat_value): Remove unused variable
"element_type".
(scm-lang.h): Include.
* breakpoint.c (create_longjmp_breakpoint): Enclose in
GET_LONGJMP_TARGET define, unused otherwise.
* config/i386/nm-linux.h: Add prototypes for i386_insert_watchpoint,
i386_remove_watchpoint and i386_stopped_by_watchpoint.
|
|
allocate_saved_f77_common_node, allocate_common_entry_node,
add_common_block): Use xmalloc rather than malloc, some of which
were unchecked.
* gnu-regex.c: At same point as other gdb specific changes
#undef malloc and then #define it to xmalloc.
* ch-exp.c (growbuf_by_size): Use xmalloc/xrealloc rather than
bare unchecked calls to malloc/realloc.
* stabsread.c (dbx_lookup_type): Use xmalloc rather than bare
unchecked call to malloc.
|
|
|
|
strings.h, and memory.h.
* configure: Regenerated.
* gdb_stat.h: New file, "portable" <sys/stat.h>.
* gdb_string.h: New file, "portable" <string.h>.
* altos-xdep.c, arm-tdep.c, arm-xdep.c, convex-tdep.c,
convex-xdep.c, coredep.c, cxux-nat.c, dbxread.c, exec.c,
gould-xdep.c, hppa-tdep.c, i386aix-nat.c, i386b-nat.c,
i386mach-nat.c, i386v-nat.c, infptrace.c, m88k-nat.c, main.c,
mdebugread.c, objfiles.c, os9kread.c, procfs.c, pyr-xdep.c,
rs6000-nat.c, source.c, standalone.c, stuff.c, sun386-nat.c,
symfile.c, symm-nat.c, symm-tdep.c, symtab.c, top.c, ultra3-nat.c,
ultra3-xdep.c, umax-xdep.c, xcoffread.c: Include "gdb_stat.h"
instead of <sys/stat.h>.
* alpha-tdep.c, breakpoint.c, buildsym.c, c-typeprint.c,
ch-typeprint.c, coffread.c, command.c, core-sol2.c, core-svr4.c,
core.c, corelow.c, cp-valprint.c, dbxread.c, dcache.c, demangle.c,
dpx2-nat.c, dstread.c, dwarfread.c, elfread.c, environ.c, eval.c,
exec.c, f-lang.c, f-typeprint.c, f-valprint.c, findvar.c,
fork-child.c, gdbtypes.c, hpread.c, i386-tdep.c, infcmd.c,
inflow.c, infptrace.c, infrun.c, irix5-nat.c, language.c,
m2-typeprint.c, main.c, mdebugread.c, minsyms.c, mipsread.c,
monitor.c, nlmread.c, objfiles.c, os9kread.c, osfsolib.c, parse.c,
printcmd.c, procfs.c, regex.c, remote-adapt.c, remote-arc.c,
remote-array.c, remote-bug.c, remote-e7000.c, remote-eb.c,
remote-es.c, remote-hms.c, remote-mm.c, remote-os9k.c,
remote-pa.c, remote-sim.c, remote-st.c, remote-udi.c,
remote-utils.c, remote-vx.c, remote-vx29k.c, remote-vx68.c,
remote-vx960.c, remote-vxmips.c, remote-vxsparc.c, remote.c,
solib.c, somread.c, source.c, stabsread.c, stack.c, symfile.c,
symmisc.c, symtab.c, target.c, top.c, typeprint.c, utils.c,
valarith.c, valops.c, valprint.c, values.c, xcoffread.c: Include
"gdb_string.h" instead of <string.h>.
* gdbtk.c: Likewise.
* config/xm-sysv4.h, i386/xm-ptx.h, m68k/xm-sun3os4.h,
sparc/xm-sun4os4.h (HAVE_MMAP): Removed.
* config/xm-lynx.h, config/i386/xm-ptx.h,
config/m68k/nm-apollo68b.h, config/m68k/xm-hp300hpux.h,
config/mips/xm-irix3.h, config/mips/xm-mips.h,
config/mips/xm-news-mips.h, config/mips/xm-riscos.h,
config/pa/hppah.h, config/rs6000/xm-rs6000.h,
config/sparc/xm-sun4os4.h, config/sparc/xm-sun4sol2.h,
config/vax/xm-vaxbsd.h, config/vax/xm-vaxult.h,
config/vax/xm-vaxult2.h (MEM_FNS_DECLARED): Removed.
* config/mips/xm-irix3.h, config/mips/xm-mips.h,
config/pa/xm-hppah.h (memcpy, memset): Removed declarations.
|
|
to char, since everything passed in and out of dcache is char or casted
to appropriate type anyway.
(dcache_alloc): Move assignment of db out of test and combine separate
tests into if-else.
(dcache_peek_byte): Change ptr from unsigned char* to char*.
(dcache_peek_byte): Remove now unnecessary cast in read_memory call.
(dcache_peek): Change cast of incoming data arg.
(dcache_poke): Change cast of addr of incoming data arg.
(dcache_info): Mask data passed to printf_filtered to lsbyte only.
(dcache_info): Change printf_filtered arg from "% 2x" to " %2x".
* target.c (debug_to_thread_alive): Change return type to int and
return zero, for type compatibility with other *_thread_alive funcs.
(cleanup_target): Change cast of ignore function to match type of the
to_thread_alive member.
* defs.h (error_hook): Add ATTR_NORETURN.
* defs.h (NORETURN, ATTR_NORETURN): Switch from volatile to
__attribute__ method with gcc 2.7, to avoid gcc 2.6.3 bug.
* remote.c (remote_wait): Cast first arg to strtol, strchr, and strncmp
to "const char *" from "unsigned char *".
(remote_wait): Cast arg to putpkt and strcpy from "unsigned char *" to
"char *".
(remote_wait): Change printf format for long arg from "%d" to "%ld".
(getpkt): Remove unused variable "bp".
(remote_fetch_word, remote_store_word): Ifdef out apparently unused
functions.
* breakpoint.c (watchpoint_check): Removed unused variables
"saved_level" and "saved_frame".
* valops.c (value_arg_coerce): Add other enum TYPE_CODE_* and
default cases to switch for completeness.
* infrun.c (wait_for_inferior): Enclose "have_waited" label
in #ifdef that matches the one in which it is referenced.
* ser-unix.c (hardwire_noflush_set_tty_state): Enclose otherwise
unused variable "state" in #ifdef that matches one in which it is
referenced.
* eval.c (evaluate_subexp_standard): Remove unused variable "var".
* eval.c (evaluate_subexp_standard): Remove unused variable "tmp_symbol".
* valarith.c (value_subscript): Remove unused variable "lowerbound",
which is redeclared in a nested scope prior to use.
* printcmd.c (print_frame_nameless_args): Use "%ld" to print long
arg, not "%d".
* {mem-break.c, remote-pa.c, remote.c, saber.suppress}:
Remove unused static var "check_break_insn_size".
* buildsym.c (finish_block): Add other enum LOC_* and default
cases to switch for completeness.
ch-lang.c (type_lower_upper): Removed unused label "retry".
Add other enum TYPE_* and default cases to switch for completeness.
* f-typeprint.c (f_type_print_args): Ifdef out unused function
that may be used someday when Fortran support is complete.
* ch-valprint.c (chill_print_type_scalar): Add other enum
TYPE_* and default cases to switch for completeness.
(chill_val_print): Remove unused local var "high_bound" that
is redeclared in a nested scope prior to use.
(chill_var_print): Use "%ld" to print long arg, not "%d".
* regex.c (re_compile_fastmap, re_match_2): Add remaining enum types
and default to switches for completeness.
* minsyms.c (lookup_minimal_symbol_text): Delete unused variable
"trampoline_symbol".
(prim_record_minimal_symbol_and_info): Return NULL rather than trash.
* elfread.c (elf_symtab_read): Don't dereference NULL returns from
record_minimal_symbol_and_info.
* f-lang.c (saved_function_list_end): Ifdef out unused variable
that may be used someday.
* f-valprint.c (f_val_print): Remove unused local variable "straddr".
|
|
* c-lang.c (c_language_defn, cplus_language_defn, asm_langauge_defn),
f-lang.c (f_language_defn), language.c (unknown_language_defn,
auto_language_defn, local_language_defn), m2-lang.c (m2_language_defn):
Set evaluate_exp to evaluate_subexp_standard.
* ch-lang.c (evaluate_subexp_chill): New function. Chill-specific
support for MULTI_SUBSCRIPT.
(chill_language_defn): Set evaluate_exp to evaluate_subexp_chill.
* eval.c (enum noside): Move from here ....
* expression.h (enum noside): ... to here.
(evaluate_subexp_standard): New prototype.
* eval.c (evaluate_subexp): Renamed to evaluate_subexp_standard.
Removed lo-longer-needed test for chill_varying_type.
(evaluate_subexp): New. Calls exp->language_defn->evaluate_exp.
|
|
OP_UNDETERMINED_ARGLIST (no backtracking, more general).
* f-valprint.c (f_val_print): Print TYPE_CODE_STRING using
LA_PRINT_STRING, and not val_print_string (which reads from inferior).
* ch-lang.c (chill_is_varying_struct), ch-lang.h: Remve function
duplicate function made redundant by chill_varying_type.
Re-write of f77 string and complex number support:
* language.h (struct language_defn): New fields string_lower_bound
and string_char_type.
* c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn),
language.c (unknown_language_defn, auto_language_defn,
local_language_defn), m2-lang.c (m2_language_defn), f-lang.c
(f_language_defn), ch-lang.c (chill_language_defn): Set new fields.
* gdbtypes.c (create_string_type): Use new string_char_type field.
* valops.c (value_string): Use new string_lower_bound field.
* defs.h (TARGET_COMPLEX_BIT, TARGET_DOUBLE_COMPLEX_BIT): Removed.
* f-lang.c (f_create_fundamental_type, _initialize_f_language),
m2-lang.c (m2_create_fundamental_type),
gdbtypes.c (_initialize_gdbtypes): Set TYPE_TARGET_TYPE of complex
types. Set their TYPE_CODEs to TYPE_CODE_COMPLEX.
* mdebugread.c (mdebug_type_complex, mdebug_type_double_complex):
Removed. Use builtin_type_complex and builtin_type_double_complex.
* gdbtypes.h (enum type_code): Removed TYPE_CODE_LITERAL_STRING
and TYPE_CODE_LITERAL_COMPLEX.
* c-typeprint.c, f-typeprint.c, f-valprint.c, eval.c: Removed uses of
TYPE_CODE_LITERAL_STRING and TYPE_CODE_LITERAL_COMPLEX.
* gdbtypes.c, gdbtypes.h (f77_create_literal_complex_type,
f77_create_literal_string_type): Removed.
* value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_MEMADDR,
VALUE_SUBSTRING_MYADDR): Removed.
* expression.h (enum exp_opcode): Rename OP_F77_LITERAL_COMPLEX to
OP_COMPLEX.
* parse.c: Update accordingly.
* f-valprint.c (f77_print_cmplx): Removed.
(f_val_print case TYPE_CODE_COMPLEX): Re-write to use print_floating.
* f-exp.y (STRING_LITERAL): Use OP_STRING instead of OP_ARRAY.
* eval.c (evaluate_subexp): For case OP_ARRAY, don't call
f77_value_literal_string.
* valops.c, value.h (f77_value_literal_string, f77_value_substring,
f77_assign_from_literal_string, f77_assign_from_literal_complex):
Removed.
(value_assign): No longer need to handle literal types.
* valops.c (f77_value_literal_complex), value.h: Re-written and
renamed to value_literal_complex. Last arg is now a (complex) type.
* valops.c (f77_cast_into_complex): Re-written and renamed to
cast_into_complex.
* eval.c (evaluate_subexp): Update accordingly.
|
|
* language.c (unknown_language_defn, auto_language_defn,
local_language_defn), c-lang.c (c_language_defn, cplus_language_defn,
asm_language_defn): Set c_style_arrays to true.
* m2-lang.c (m2_language_defn), ch-lang.c (chill_language_defn),
f-lang.c (f_language_defn): Set c_style_arrays to false.
* valops.c (value_string): If c_style_array is not set,
allocate string in gdb (not inferior) using allocate_value.
* value.h (COERCE_ARRAY), valops.c (value_addr, value_arg_coerce):
Only call value_coerce_array if current_language->c_style_arrays.
* values.c: Add #include "language.h". (Needed for COERCE_ARRAY.)
* valops.c (chill_varying_type): New predicate.
* valops.c (value_cast): Support assigning a fixed string or array
to a variable string/array structure.
* valarith.c (value_subscripted_rvalue): Extra parameter lowerbound.
Check index>=lowerbound, and then add lowerbound to index here,
instead of in caller. Generalize to arbitrary lval_types.
(value_subscript): Use enhanced value_subscripted_rvalue if
c_style_arrays is false (and index is in range).
|
|
builtin_type_f_integer, and only include it in the f_builtin_types
once.
* somread.c (som_symfile_read): Just assign to objfile->obj_private,
not OBJ_UNWIND_INFO. Assigning to a cast is a GCC-ism which
the HP compiler doesn't like.
|
|
c_type_print_varspec_suffix): Add cases for Fortran type codes.
* eval.c (evaluate_subexp): For OP_ARRAY expressions in Fortran,
call f77_value_literal_string instead.
* f_exp.y: Include <string.h>, move include of parser-defs.h.
(parse_number): Translate 'd' floats to 'e' so atof() works.
(yylex): Remove unused variables.
* f-lang.c: Include <string.h>.
(get_bf_for_fcn): Remove unused variable.
* f-typeprint.c (f_type_print_varspec_prefix,
f_type_print_varspec_suffix): Remove unused
variables, add cases to switch statements.
(f_type_print_base): Remove unused variables.
* f-valprint.c (gdbcore.h, command.h): Include.
(f77_get_dynamic_lowerbound, f77_get_dynamic_upperbound):
Call read_memory_integer with correct number of arguments.
(f77_get_dynamic_upperbound): Call f77_get_dynamic_lowerbound
with correct argument type.
(f77_print_array): Removed unused array array_size_array.
(f_val_print): Don't use a CORE_ADDR as a char *.
* valops.c (value_cast): Handle COMPLEX and BOOL types.
(value_assign): Handle Fortran literal string and complex values.
(f77_cast_into_complex, f77_assign_from_literal_string,
f77_assign_from_literal_complex): New functions.
|
|
(fmbutt@engage.sps.mot.com).
* Makefile.in: Add Fortran-related files and dependencies.
* defs.h (language_fortran): New language enum.
* language.h (_LANG_fortran): Define.
(MAX_FORTRAN_DIMS): Define.
* expression.h: Reformat to standard.
(MULTI_F77_SUBSCRIPT, OP_F77_UNDETERMINED_ARGLIST,
OP_F77_LITERAL_COMPLEX, OP_F77_SUBSTR): New expression opcodes.
* gdbtypes.h (TYPE_CODE_COMPLEX, TYPE_CODE_LITERAL_COMPLEX,
TYPE_CODE_LITERAL_STRING): New type codes.
(type): New fields upper_bound_type and lower_bound_type.
(TYPE_ARRAY_UPPER_BOUND_TYPE, TYPE_ARRAY_LOWER_BOUND_TYPE,
TYPE_ARRAY_UPPER_BOUND_VALUE, TYPE_ARRAY_LOWER_BOUND_VALUE): New
macros.
(builtin_type_f_character, etc): Declare.
* value.h (VALUE_LITERAL_DATA, VALUE_SUBSTRING_START): Define.
* f-exp.y: New file, Fortran expression grammar.
* f-lang.c: New file, Fortran language support functions.
* f-lang.h: New file, Fortran language support declarations.
* f-typeprint.c: New file, Fortran type printing.
* f-valprint.c: New file, Fortran value printing.
* eval.c (evaluate_subexp): Add code for new expression opcodes,
fix wording of error message.
* gdbtypes.c (f77_create_literal_complex_type,
f77_create_literal_string_type): New functions.
* language.c (set_language_command): Add Fortran info.
(calc_f77_array_dims): New function.
* parse.c (length_of_subexp, prefixify_subexp): Add cases for new
expression opcodes.
* symfile.c (deduce_language_from_filename): Recognize .f and .F
as Fortran source files.
* valops.c (f77_value_literal_string, f77_value_substring,
f77_value_literal_complex): New functions.
|