1. 22 Aug, 2011 1 commit
    • gchare's avatar
      Add ability to force lexed tokens' source_locations. · 6ea2c7a3
      gchare authored
      Use it to force BUILTINS_LOCATION when declaring builtins instead of creating a <built-in> entry in the line_table which is wrong.
      
      	* c-opts.c (c_finish_options): Force BUILTINS_LOCATION for tokens
      	defined in cpp_init_builtins and c_cpp_builtins.
      
      	gcc/fortran/ChangeLog
      	* cpp.c (gfc_cpp_init): Force BUILTINS_LOCATION for tokens
      	defined in cpp_define_builtins.
      
      	libcpp/ChangeLog
      	* init.c (cpp_create_reader): Inititalize forced_token_location_p.
      	* internal.h (struct cpp_reader): Add field forced_token_location_p.
      	* lex.c (_cpp_lex_direct): Use forced_token_location_p.
      	(cpp_force_token_locations): New.
      	(cpp_stop_forcing_token_locations): New.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177973 138bc75d-0d04-0410-961f-82ee72b054a4
      6ea2c7a3
  2. 02 Aug, 2011 1 commit
    • jakub's avatar
      Merge from gomp-3_1-branch branch: · 2169f33b
      jakub authored
      2011-08-02  Jakub Jelinek  <jakub@redhat.com>
      
      gcc/
      	* c-parser.c (enum c_parser_prec): New enum, moved from within
      	c_parser_binary_expression.
      	(c_parser_binary_expression): Add PREC argument.  Stop parsing
      	if operator has lower or equal precedence than PREC.
      	(c_parser_conditional_expression, c_parser_omp_for_loop): Adjust
      	callers.
      	(c_parser_omp_atomic): Handle parsing OpenMP 3.1 atomics.
      	Adjust c_finish_omp_atomic caller.
      	(c_parser_omp_taskyield): New function.
      	(c_parser_pragma): Handle PRAGMA_OMP_TASKYIELD.
      	(c_parser_omp_clause_name): Handle final and mergeable clauses.
      	(c_parser_omp_clause_final, c_parser_omp_clause_mergeable): New
      	functions.
      	(c_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_FINAL
      	and PRAGMA_OMP_CLAUSE_MERGEABLE.
      	(OMP_TASK_CLAUSE_MASK): Allow final and mergeable clauses.
      	(c_parser_omp_clause_reduction): Handle min and max.
      	* c-typeck.c (c_finish_omp_clauses): Don't complain about
      	const qualified predetermined vars in firstprivate clause.
      	andle OMP_CLAUSE_FINAL and OMP_CLAUSE_MERGEABLE.
      	Handle MIN_EXPR and MAX_EXPR.
      	* tree-pretty-print.c (dump_omp_clause): Handle OMP_CLAUSE_FINAL
      	and OMP_CLAUSE_MERGEABLE.
      	(dump_generic_node): Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD
      	and OMP_ATOMIC_CAPTURE_NEW.
      	* tree.c (omp_clause_num_ops): Add OMP_CLAUSE_FINAL and
      	OMP_CLAUSE_MERGEABLE.
      	(omp_clause_code_name): Likewise.
      	(walk_tree_1): Handle OMP_CLAUSE_FINAL and OMP_CLAUSE_MERGEABLE.
      	* tree.h (enum omp_clause_code): Add OMP_CLAUSE_FINAL
      	and OMP_CLAUSE_MERGEABLE.
      	(OMP_CLAUSE_FINAL_EXPR): Define.
      	* omp-low.c (scan_sharing_clauses): Handle OMP_CLAUSE_FINAL and
      	OMP_CLAUSE_MERGEABLE.
      	(expand_task_call): Likewise.
      	(expand_omp_atomic_load, expand_omp_atomic_store): New functions.
      	(expand_omp_atomic_fetch_op): Handle cases where old or new
      	value is needed afterwards.
      	(expand_omp_atomic): Call expand_omp_atomic_load resp.
      	expand_omp_atomic_store.
      	* gimplify.c (gimplify_omp_atomic, gimplify_expr): Handle
      	OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and OMP_ATOMIC_CAPTURE_NEW.
      	(gimplify_scan_omp_clauses, gimplify_adjust_omp_clauses): Handle
      	OMP_CLAUSE_FINAL and OMP_CLAUSE_MERGEABLE.
      	* tree-nested.c (convert_nonlocal_omp_clauses,
      	convert_local_omp_clauses): Likewise.
      	* tree.def (OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD,
      	OMP_ATOMIC_CAPTURE_NEW): New.
      	* gimple.h (GF_OMP_ATOMIC_NEED_VALUE): New.
      	(gimple_omp_atomic_need_value_p, gimple_omp_atomic_set_need_value):
      	New inlines.
      	* omp-builtins.def (BUILT_IN_GOMP_TASKYIELD): New builtin.
      	* doc/generic.texi: Mention OMP_CLAUSE_COLLAPSE,
      	OMP_CLAUSE_UNTIED, OMP_CLAUSE_FINAL and OMP_CLAUSE_MERGEABLE.
      gcc/c-family/
      	* c-common.h (c_finish_omp_atomic): Adjust prototype.
      	(c_finish_omp_taskyield): New prototype.
      	* c-omp.c (c_finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
      	arguments. Handle OMP_ATOMIC_READ, OMP_ATOMIC_CAPTURE_OLD and
      	OMP_ATOMIC_CAPTURE_NEW in addition to OMP_ATOMIC.  If LHS1
      	or RHS1 have side-effects, evaluate those too in the right spot,
      	if it is a decl and LHS is also a decl, error out if they
      	aren't the same.
      	(c_finish_omp_taskyield): New function.
      	* c-cppbuiltin.c (c_cpp_builtins): Change _OPENMP to 201107.
      	* c-pragma.c (omp_pragmas): Add taskyield.
      	* c-pragma.h (enum pragma_kind): Add PRAGMA_OMP_TASKYIELD.
      	(enum pragma_omp_clause): Add PRAGMA_OMP_CLAUSE_FINAL and
      	PRAGMA_OMP_CLAUSE_MERGEABLE.
      gcc/cp/
      	* cp-tree.h (finish_omp_atomic): Adjust prototype.
      	(cxx_omp_const_qual_no_mutable): New prototype.
      	(finish_omp_taskyield): New prototype.
      	* parser.c (cp_parser_omp_atomic): (cp_parser_omp_atomic): Handle
      	parsing OpenMP 3.1 atomics.  Adjust finish_omp_atomic caller.
      	(cp_parser_omp_clause_name): Handle final and mergeable clauses.
      	(cp_parser_omp_clause_final, cp_parser_omp_clause_mergeable): New
      	functions.
      	(cp_parser_omp_all_clauses): Handle PRAGMA_OMP_CLAUSE_FINAL
      	and PRAGMA_OMP_CLAUSE_MERGEABLE.
      	(OMP_TASK_CLAUSE_MASK): Allow final and mergeable clauses.
      	(cp_parser_omp_taskyield): New function.
      	(cp_parser_pragma): Handle PRAGMA_OMP_TASKYIELD.
      	(cp_parser_omp_clause_reduction): Handle min and max.
      	* pt.c (tsubst_expr) <case OMP_ATOMIC>: Handle OpenMP 3.1 atomics.
      	(tsubst_omp_clauses): Handle OMP_CLAUSE_FINAL and
      	OMP_CLAUSE_MERGEABLE.
      	* semantics.c (finish_omp_atomic): Add OPCODE, V, LHS1 and RHS1
      	arguments.  Handle OpenMP 3.1 atomics.  Adjust c_finish_omp_atomic
      	caller.
      	(finish_omp_clauses): Don't complain about const qualified
      	predetermined vars and static data members in firstprivate clause.
      	Handle OMP_CLAUSE_FINAL and OMP_CLAUSE_MERGEABLE. Handle MIN_EXPR
      	and MAX_EXPR.
      	(finish_omp_taskyield): New function.
      	* cp-gimplify.c (cxx_omp_const_qual_no_mutable): New function.
      	(cxx_omp_predetermined_sharing): Use it.
      gcc/fortran/
      	PR fortran/46752
      	* cpp.c (cpp_define_builtins): Change _OPENMP to 201107.
      	* openmp.c (gfc_free_omp_clauses): Free also final_expr.
      	(OMP_CLAUSE_FINAL, OMP_CLAUSE_MERGEABLE): Define.
      	(gfc_match_omp_clauses): Handle parsing final and mergeable
      	clauses.
      	(OMP_TASK_CLAUSES): Allow final and mergeable clauses.
      	(gfc_match_omp_taskyield): New function.
      	(resolve_omp_clauses): Resolve final clause.  Allow POINTERs and
      	Cray pointers in clauses other than REDUCTION.
      	(gfc_match_omp_atomic): Match optional
      	read/write/update/capture keywords after !$omp atomic.
      	(resolve_omp_atomic): Handle all OpenMP 3.1 atomic forms.
      	* dump-parse-tree.c (show_omp_node): Handle EXEC_OMP_TASKYIELD,
      	print final and mergeable clauses.
      	(show_code_node): Handle EXEC_OMP_TASKYIELD.
      	* trans-openmp.c (gfc_trans_omp_clauses): Handle final and
      	mergeable clauses.
      	(gfc_trans_omp_taskyield): New function.
      	(gfc_trans_omp_directive): Handle EXEC_OMP_TASKYIELD.
      	(gfc_trans_omp_atomic): Handle all OpenMP 3.1 atomic forms.
      	(gfc_omp_clause_copy_ctor): Handle non-allocated allocatable.
      	(gfc_omp_predetermined_sharing): Adjust comment.
      	* gfortran.h (gfc_statement): Add ST_OMP_TASKYIELD and
      	ST_OMP_END_ATOMIC.
      	(gfc_omp_clauses): Add final_expr and mergeable fields.
      	(gfc_exec_op): Add EXEC_OMP_TASKYIELD.
      	(gfc_omp_atomic_op): New enum typedef.
      	(struct gfc_code): Add ext.omp_atomic.
      	* trans.c (trans_code): Handle EXEC_OMP_TASKYIELD.
      	* frontend-passes.c (gfc_code_walker): Also walk final_expr.
      	* resolve.c (gfc_resolve_blocks, resolve_code): Handle
      	EXEC_OMP_TASKYIELD.
      	* st.c (gfc_free_statement): Likewise.
      	* match.h (gfc_match_omp_taskyield): New prototype.
      	* parse.c (decode_omp_directive): Handle taskyield directive.
      	Handle !$omp end atomic.
      	(case_executable): Add ST_OMP_TASKYIELD case.
      	(gfc_ascii_statement): Handle ST_OMP_TASKYIELD.
      	(parse_omp_atomic): Return gfc_statement instead of void.
      	For !$omp atomic capture parse two assignments instead of
      	just one and require !$omp end atomic afterwards, for
      	other !$omp atomic forms just allow !$omp end atomic at the
      	end.
      	(parse_omp_structured_block, parse_executable): Adjust
      	parse_omp_atomic callers.
      
      2011-08-02  Tobias Burnus  <burnus@net-b.de>
      
      	* intrinsic.c (OMP_LIB): Updated openmp_version's
      	value to 201107.
      	* gfortran.texi (OpenMP): Update ref to OpenMP 3.1.
      	* intrinsic.texi (OpenMP Modules): Update ref to OpenMP 3.1;
      	remove deleted omp_integer_kind and omp_logical_kind constants.
      gcc/testsuite/
      	PR fortran/46752
      	* gcc.dg/gomp/atomic-5.c: Adjust expected diagnostics.
      	* gcc.dg/gomp/atomic-15.c: New test.
      	* g++.dg/gomp/atomic-5.C: Adjust expected diagnostics.
      	* g++.dg/gomp/atomic-15.C: New test.
      	* g++.dg/gomp/private-1.C: New test.
      	* g++.dg/gomp/sharing-2.C: New test.
      	* gfortran.dg/gomp/crayptr1.f90: Don't expect error
      	about Cray pointer in FIRSTPRIVATE/LASTPRIVATE.
      	* gfortran.dg/gomp/omp_atomic2.f90: New test.
      libgomp/
      	PR fortran/42041
      	PR fortran/46752
      	* omp.h.in (omp_in_final): New prototype.
      	* omp_lib.f90.in (omp_in_final): New interface.
      	(omp_integer_kind, omp_logical_kind): Remove
      	and replace all its uses in the module with 4.
      	(openmp_version): Change to 201107.
      	* omp_lib.h.in (omp_sched_static, omp_sched_dynamic,
      	omp_sched_guided, omp_sched_auto): Use omp_sched_kind
      	kind for the parameters.
      	(omp_in_final): New external.
      	(openmp_version): Change to 201107.
      	* task.c (omp_in_final): New function.
      	(gomp_init_task): Initialize final_task.
      	(GOMP_task): Remove unused attribute from flags.  Handle final
      	tasks.
      	(GOMP_taskyield): New function.
      	(omp_in_final): Return true if if (false) or final (true) task
      	or descendant of final (true).
      	* fortran.c (omp_in_final_): New function.
      	* libgomp.map (OMP_3.1): Export omp_in_final and omp_in_final_.
      	(GOMP_3.0): Export GOMP_taskyield.
      	* env.c (gomp_nthreads_var_list, gomp_nthreads_var_list_len): New
      	variables.
      	(parse_unsigned_long_list): New function.
      	(initialize_env): Use it for OMP_NUM_THREADS.  Call parse_boolean
      	with "OMP_PROC_BIND".  If OMP_PROC_BIND=true, call gomp_init_affinity
      	even if parse_affinity returned false.
      	* config/linux/affinity.c (gomp_init_affinity): Handle
      	gomp_cpu_affinity_len == 0.
      	* libgomp_g.h (GOMP_taskyield): New prototype.
      	* libgomp.h (struct gomp_task): Add final_task field.
      	(gomp_nthreads_var_list, gomp_nthreads_var_list_len): New externs.
      	* team.c (gomp_team_start): Override new task's nthreads_var icv
      	if list form OMP_NUM_THREADS has been used and it has value for
      	the new nesting level.
      
      	* testsuite/libgomp.c/atomic-11.c: New test.
      	* testsuite/libgomp.c/atomic-12.c: New test.
      	* testsuite/libgomp.c/atomic-13.c: New test.
      	* testsuite/libgomp.c/atomic-14.c: New test.
      	* testsuite/libgomp.c/reduction-6.c: New test.
      	* testsuite/libgomp.c/task-5.c: New test.
      	* testsuite/libgomp.c++/atomic-2.C: New test.
      	* testsuite/libgomp.c++/atomic-3.C: New test.
      	* testsuite/libgomp.c++/atomic-4.C: New test.
      	* testsuite/libgomp.c++/atomic-5.C: New test.
      	* testsuite/libgomp.c++/atomic-6.C: New test.
      	* testsuite/libgomp.c++/atomic-7.C: New test.
      	* testsuite/libgomp.c++/atomic-8.C: New test.
      	* testsuite/libgomp.c++/atomic-9.C: New test.
      	* testsuite/libgomp.c++/task-8.C: New test.
      	* testsuite/libgomp.c++/reduction-4.C: New test.
      	* testsuite/libgomp.fortran/allocatable7.f90: New test.
      	* testsuite/libgomp.fortran/allocatable8.f90: New test.
      	* testsuite/libgomp.fortran/crayptr3.f90: New test.
      	* testsuite/libgomp.fortran/omp_atomic3.f90: New test.
      	* testsuite/libgomp.fortran/omp_atomic4.f90: New test.
      	* testsuite/libgomp.fortran/pointer1.f90: New test.
      	* testsuite/libgomp.fortran/pointer2.f90: New test.
      	* testsuite/libgomp.fortran/task4.f90: New test.
      
      2011-08-02  Tobias Burnus  <burnus@net-b.de>
      
      	* libgomp.texi: Update OpenMP spec references to 3.1.
      	(omp_in_final,OMP_PROC_BIND): New sections.
      	(OMP_NUM_THREADS): Document that the value can be now a list.
      	(GOMP_STACKSIZE,GOMP_CPU_AFFINITY): Update @ref.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@177194 138bc75d-0d04-0410-961f-82ee72b054a4
      2169f33b
  3. 18 Apr, 2011 1 commit
    • meyering's avatar
      convert each use of gfc_free (p) to free (p) · 434f0922
      meyering authored
      Do that by running this command:
        perl -pi -e    's/\bgfc_free ?\(/free (/' \
          $(git grep -El '\bgfc_free ?\(')
      which also corrects the few uses that lacked a space between
      the function name and the open parenthesis.
      Manually undo the change to the function definition itself
      and its prototype.  They'll be removed next.
      * array.c (gfc_free_array_spec, gfc_set_array_spec): s/gfc_free/free/
      * constructor.c (node_free): Likewise.
      * cpp.c (dump_queued_macros): Likewise.
      * data.c (gfc_assign_data_value): Likewise.
      * decl.c (free_variable, free_value, gfc_free_data): Likewise.
      (gfc_free_data_all, match_old_style_init): Likewise.
      (gfc_set_constant_character_len, gfc_free_enum_history, NUM_DECL):
      Likewise.
      (gfc_match_modproc): Likewise.
      * dependency.c (check_section_vs_section): Likewise.
      * error.c (gfc_pop_error, gfc_free_error): Likewise.
      * expr.c (free_expr0, gfc_free_expr, gfc_free_actual_arglist): Likewise.
      (gfc_free_ref_list, gfc_replace_expr, gfc_copy_ref): Likewise.
      (find_substring_ref, gfc_simplify_expr, gfc_check_assign_symbol):
      Likewise.
      * frontend-passes.c (gfc_run_passes, cfe_expr_0): Likewise.
      (strip_function_call, optimize_comparison): Likewise.
      * interface.c (gfc_free_interface, arginfo, check_interface0): Likewise.
      (CHECK_OS_COMPARISON, gfc_extend_assign, gfc_free_formal_arglist):
      Likewise.
      * intrinsic.c (gfc_intrinsic_done_1, gfc_convert_type_warn): Likewise.
      (gfc_convert_chartype): Likewise.
      * io.c (gfc_free_open, compare_to_allowed_values, gfc_free_close):
      Likewise.
      (gfc_free_filepos, gfc_free_dt, gfc_free_inquire): Likewise.
      * match.c (gfc_free_iterator, gfc_match_associate): Likewise.
      (gfc_free_alloc_list, gfc_free_namelist, gfc_free_equiv_until):
      Likewise.
      (free_case, gfc_free_forall_iterator): Likewise.
      * misc.c: Likewise.
      * module.c (free_pi_tree, resolve_fixups, free_rename): Likewise.
      (free_true_name, peek_atom, mio_allocated_wide_string): Likewise.
      (mio_pool_string, mio_internal_string, mio_gmp_integer): Likewise.
      (mio_gmp_real, mio_expr, mio_typebound_proc): Likewise.
      (mio_full_typebound_tree, skip_list, load_equiv): Likewise.
      (free_written_common, gfc_use_module, gfc_free_use_stmts): Likewise.
      * openmp.c (gfc_free_omp_clauses): Likewise.
      * options.c (gfc_post_options): Likewise.
      * parse.c (select_type_pop, parse_omp_structured_block): Likewise.
      * primary.c (gfc_free_structure_ctor_component): Likewise.
      * resolve.c (resolve_structure_cons, check_host_association): Likewise.
      (gfc_resolve_forall, resolve_equivalence): Likewise.
      * scanner.c (gfc_scanner_done_1, gfc_release_include_path): Likewise.
      (gfc_define_undef_line, preprocessor_line, include_line): Likewise.
      (load_file, gfc_read_orig_filename): Likewise.
      * simplify.c (simplify_transformation_to_array): Likewise.
      (gfc_simplify_ibits, simplify_shift, gfc_simplify_ishftc, STRING):
      Likewise.
      (gfc_simplify_compiler_options): Likewise.
      * st.c (gfc_free_statement, gfc_free_statements): Likewise.
      (gfc_free_association_list): Likewise.
      * symbol.c (free_components, gfc_free_st_label, free_st_labels):
      Likewise.
      (gfc_delete_symtree, gfc_free_symbol, gfc_undo_symbols): Likewise.
      (free_old_symbol, gfc_commit_symbols, free_tb_tree): Likewise.
      (free_common_tree, free_uop_tree, free_sym_tree): Likewise.
      (gfc_free_dt_list, gfc_free_equiv_infos, gfc_free_equiv_lists):
      Likewise.
      (gfc_free_finalizer, gfc_free_charlen, free_entry_list): Likewise.
      (gfc_free_namespace): Likewise.
      * trans-array.c (gfc_free_ss, gfc_trans_array_bound_check): Likewise.
      (gfc_conv_array_ref, gfc_conv_ss_startstride): Likewise.
      (gfc_trans_dummy_array_bias, gfc_conv_array_parameter): Likewise.
      * trans-common.c (get_init_field, create_common): Likewise.
      * trans-const.c (gfc_build_wide_string_const): Likewise.
      (gfc_conv_string_init): Likewise.
      * trans-decl.c (gfc_generate_function_code): Likewise.
      * trans-expr.c (gfc_conv_substring, gfc_free_interface_mapping):
      Likewise.
      (SCALAR_POINTER, gfc_conv_statement_function): Likewise.
      (gfc_trans_subarray_assign): Likewise.
      * trans-intrinsic.c (conv_generic_with_optional_char_arg): Likewise.
      * trans-io.c (gfc_trans_io_runtime_check, set_string): Likewise.
      (transfer_namelist_element, transfer_array_component): Likewise.
      * trans-openmp.c (gfc_trans_omp_array_reduction): Likewise.
      * trans-stmt.c (cleanup_forall_symtrees, gfc_trans_forall_1): Likewise.
      * trans.c (trans_runtime_error_vararg, gfc_restore_backend_locus):
      Likewise.
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@172666 138bc75d-0d04-0410-961f-82ee72b054a4
      434f0922
  4. 10 Nov, 2010 1 commit
    • jsm28's avatar
      * common.opt (flag_excess_precision_cmdline, flag_generate_lto, · 6bd9d862
      jsm28 authored
      	warn_larger_than, larger_than_size, warn_frame_larger_than,
      	frame_larger_than_size, flag_gen_aux_info, flag_shlib,
      	default_visibility, flag_tls_default): New Variable declarations.
      	(aux-info, auxbase, dumpbase, dumpdir, falign-functions=,
      	falign-jumps=, falign-labels=, falign-loops=, o, v): Use Var.
      	(v): Declare as Common and document here.
      	* flags.h (default_visibility, flag_generate_lto,
      	warn_larger_than, larger_than_size, warn_frame_larger_than,
      	frame_larger_than_size, flag_gen_aux_info, flag_pedantic_errors,
      	flag_shlib, flag_excess_precision_cmdline): Remove.
      	(set_Wstrict_aliasing): Update prototype.
      	* gcc.c (verbose_flag): Remove.
      	(driver_handle_option): Add diagnostic_context parameter.  Don't
      	handle OPT_v explicitly here.  Set verbose_flag to 1 rather than
      	incrementing it.
      	* opts-common.c (handle_option): Pass dc to handler.
      	* opts.c (warn_larger_than, larger_than_size,
      	warn_frame_larger_than, frame_larger_than_size,
      	default_visibility): Remove.
      	(common_handle_option): Add diagnostic_context parameter.
      	(set_fast_math_flags, set_unsafe_math_optimizations_flags): Add
      	gcc_options parameters.
      	(lang_handle_option, target_handle_option, read_cmdline_options,
      	decode_options): Add diagnostic_context parameters.
      	(finish_options): Access option state through opts pointer where
      	possible.
      	(common_handle_option): Access option state through opts pointer
      	where possible.  Do not set local static variable verbose.  Do not
      	explicitly handle OPT_v, OPT_Wstrict_aliasing_,
      	OPT_Wstrict_overflow_, OPT_Wunused, OPT_auxbase, OPT_dumpbase,
      	OPT_dumpdir, OPT_falign_functions_, OPT_falign_jumps_,
      	OPT_falign_labels_, OPT_falign_loops_, OPT_fira_verbose_, OPT_o or
      	OPT_fwhopr_.  Do not explicitly set .opt file variables for
      	OPT_aux_info or OPT_pedantic_errors.  Use dc for diagnostic
      	context.
      	(set_Wstrict_aliasing): Add gcc_options parameter.
      	* opts.h (struct cl_option_handler_func): Add diagnostic_context
      	parameter to handler.
      	(decode_options): Add diagnostic_context parameter.
      	* toplev.c (dump_base_name, dump_dir_name, aux_base_name,
      	asm_file_name, flag_generate_lto, flag_gen_aux_info,
      	aux_info_file_name, flag_shlib, flag_tls_default,
      	flag_excess_precision_cmdline, flag_pedantic_errors): Remove.
      	(toplev_main): Pass global_dc to decode_options.
      	* toplev.h (dump_base_name, dump_dir_name, aux_base_name,
      	aux_info_file_name, asm_file_name): Remove.
      	* tree.h (flag_tls_default): Remove.
      
      c-family:
      	* c-common.c (parse_optimize_options): Pass global_dc to
      	decode_options.
      	* c-opts.c (c_common_handle_option): Pass &global_options to
      	set_Wstrict_aliasing.
      	* c.opt (v): Don't mark Common or document here.
      
      fortran:
      	* cpp.c (asm_file_name): Don't declare here.
      
      objc:
      	* objc-act.c (dump_base_name): Don't declare here.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@166565 138bc75d-0d04-0410-961f-82ee72b054a4
      6bd9d862
  5. 06 Oct, 2010 1 commit
  6. 03 Oct, 2010 1 commit
    • fxcoudert's avatar
      gcc/ · 41acdfa4
      fxcoudert authored
      	* cppbuiltin.c: New file.
      	* cppbuiltin.h: New file.
      	* Makefile.in: Take into account cppbuiltin.{h,c}.
      
      gcc/c-family/
      	* c-cppbuiltin.c (define__GNUC__, builtin_define_type_precision):
      	Remove.
      	(c_cpp_builtins): Call functions from cppbuiltin.c instead
      	of duplicating code.
      
      gcc/fortran/
      	* cpp.c (cpp_define_builtins): Call functions from cppbuiltin.c
      	instead of duplicating code.
      	* Make-lang.in: Add dependency on cppbuiltin.h. Don't define
      	BASEVER.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164917 138bc75d-0d04-0410-961f-82ee72b054a4
      41acdfa4
  7. 29 Sep, 2010 1 commit
    • jsm28's avatar
      gcc: · 5ae82d58
      jsm28 authored
      	* optc-gen.awk: Generate global_options initializer instead of
      	individual variables.  Add x_ prefix to names of structure
      	members.
      	* opth-gen.awk: Generate gcc_options structure.  Add x_ prefix to
      	names of structure members.
      	* doc/tm.texi.in (HARD_FRAME_POINTER_IS_FRAME_POINTER,
      	HARD_FRAME_POINTER_IS_ARG_POINTER): Document.
      	* doc/tm.texi: Regenerate.
      	* alias.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
      	* builtins.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER.
      	* c-parser.c (disable_extension_diagnostics,
      	restore_extension_diagnostics): Update names of cpp_options
      	members.
      	* combine.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
      	* common.opt (fcompare-debug-second): Don't use Var.
      	* config/alpha/alpha.h (target_flags): Remove.
      	* config/arm/arm.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
      	HARD_FRAME_POINTER_IS_ARG_POINTER): Define.
      	* config/bfin/bfin.h (target_flags): Remove.
      	* config/cris/cris.h (target_flags): Remove.
      	* config/i386/i386-c.c (ix86_pragma_target_parse): Update names of
      	cl_target_option members.
      	* config/i386/i386.c (ix86_force_align_arg_pointer): Remove.
      	(ix86_function_specific_print, ix86_valid_target_attribute_tree,
      	ix86_can_inline_p): Update names of cl_target_option members.
      	* config/i386/i386.h (ix86_isa_flags): Remove.
      	* config/lm32/lm32.h (target_flags): Remove.
      	* config/mcore/mcore.h (mcore_stack_increment): Remove.
      	* config/mcore/mcore.md (addsi3): Remove extern declaration of
      	flag_omit_frame_pointer.
      	* config/mep/mep.h (target_flags): Remove.
      	* config/mips/mips.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
      	HARD_FRAME_POINTER_IS_ARG_POINTER): Define.
      	* config/mmix/mmix.h (target_flags): Remove.
      	* config/rs6000/rs6000.h (rs6000_xilinx_fpu, flag_pic,
      	flag_expensive_optimizations): Remove.
      	* config/s390/s390.h (flag_pic): Remove.
      	* config/score/score-conv.h (target_flags): Remove.
      	* config/sh/sh.h (sh_fixed_range_str): Remove.
      	* config/spu/spu.h (target_flags, spu_fixed_range_string): Remove.
      	* dbxout.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER
      	* df-scan.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* diagnostic.c (diagnostic_initialize): Update names of
      	diagnostic_context members.
      	* diagnostic.h (diagnostic_context): Rename inhibit_warnings and
      	warn_system_headers.
      	(diagnostic_report_warnings_p): Update for new names.
      	* dwarf2out.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER
      	* emit-rtl.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER and
      	HARD_FRAME_POINTER_IS_ARG_POINTER.
      	* flags.h (flag_compare_debug): Declare.
      	* ira.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
      	* opts.c (flag_compare_debug): Define.
      	(common_handle_option): Update names of diagnostic_context
      	members.  Handle -fcompare-debug-second.
      	(fast_math_flags_struct_set_p): Update names of cl_optimization
      	members.
      	* reginfo.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* regrename.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* reload.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* reload1.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* resource.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER.
      	* rtl.h (HARD_FRAME_POINTER_IS_FRAME_POINTER,
      	HARD_FRAME_POINTER_IS_ARG_POINTER): Define and use.
      	* sel-sched.c: Use HARD_FRAME_POINTER_IS_FRAME_POINTER
      	* stmt.c: Use HARD_FRAME_POINTER_IS_ARG_POINTER.
      
      gcc/c-family:
      	* c-common.c (c_cpp_error): Update names of diagnostic_context
      	members.
      	* c-cppbuiltin.c (c_cpp_builtins_optimize_pragma): Update names of
      	cl_optimization members.
      	* c-opts.c (warning_as_error_callback, c_common_handle_option,
      	sanitize_cpp_opts, finish_options): Update names of cpp_options
      	members.
      
      gcc/fortran:
      	* cpp.c (cpp_define_builtins): Update names of gfc_option_t
      	members.
      	(gfc_cpp_post_options): Update names of cpp_options members.
      	(cb_cpp_error): Update names of diagnostic_context members.
      	* f95-lang.c (gfc_init_builtin_functions): Update names of
      	gfc_option_t members.
      	* gfortran.h (gfc_option_t): Rename warn_conversion and
      	flag_openmp.
      	* intrinsic.c (gfc_convert_type_warn): Update names of
      	gfc_option_t members.
      	* options.c (gfc_init_options, gfc_post_options, set_Wall,
      	gfc_handle_option): Update names of gfc_option_t members.
      	* parse.c (next_free, next_fixed): Update names of gfc_option_t
      	members.
      	* scanner.c (pedantic): Remove extern declaration.
      	(skip_free_comments, skip_fixed_comments, include_line): Update
      	names of gfc_option_t members.
      	* trans-decl.c (gfc_generate_function_code): Update names of
      	gfc_option_t members.
      
      gcc/java:
      	* java-tree.h (flag_filelist_file, flag_assert, flag_jni,
      	flag_force_classes_archive_check, flag_redundant, flag_newer,
      	flag_use_divide_subroutine, flag_use_atomic_builtins,
      	flag_use_boehm_gc, flag_hash_synchronization,
      	flag_check_references, flag_optimize_sci, flag_indirect_classes,
      	flag_indirect_dispatch, flag_store_check,
      	flag_reduced_reflection): Remove.
      	* jcf-dump.c (flag_newer): Remove.
      	* jcf.h (quiet_flag): Remove.
      	* parse.h (quiet_flag): Remove.
      
      libcpp:
      	* include/cpplib.h (cpp_options): Rename warn_deprecated,
      	warn_traditional, warn_long_long and pedantic.
      	* directives.c (directive_diagnostics, _cpp_handle_directive):
      	Update names of cpp_options members.
      	* expr.c (cpp_classify_number, eval_token): Update names of
      	cpp_options members.
      	* init.c (cpp_create_reader, post_options): Update names of
      	cpp_options members.
      	* internal.h (CPP_PEDANTIC, CPP_WTRADITIONAL): Update names of
      	cpp_options members.
      	* macro.c (parse_params): Update names of cpp_options members.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@164723 138bc75d-0d04-0410-961f-82ee72b054a4
      5ae82d58
  8. 16 Aug, 2010 1 commit
    • jsm28's avatar
      * doc/options.texi (NoDriverArg): Document. · 89c69892
      jsm28 authored
      	* gcc.c (cpp_unique_options): Generate -MD and -MMD instead of
      	-MDX and -MMDX.
      	* opt-functions.awk (switch_flags): Handle NoDriverArg.
      	* opts-common.c (decode_cmdline_option): Ignore CL_SEPARATE
      	marking for CL_NO_DRIVER_ARG options when in the driver.
      	* opts.h (CL_NO_DRIVER_ARG): Define.
      	(CL_PARAMS, CL_WARNING, CL_OPTIMIZATION, CL_DRIVER, CL_TARGET,
      	CL_COMMON): Update values.
      
      c-family:
      	* c.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
      	RejectDriver.
      	(MMDX): Change back to MMD.  Mark NoDriverArg instead of
      	RejectDriver.
      	* c-opts.c (c_common_handle_option): Use OPT_MD and OPT_MMD
      	instead of OPT_MDX and OPT_MMDX.
      
      fortran:
      	* lang.opt (MDX): Change back to MD.  Mark NoDriverArg instead of
      	RejectDriver.
      	(MMDX): Change back to MMD.  Mark NoDriverArg instead of
      	RejectDriver.
      	* cpp.c (gfc_cpp_handle_option): Use OPT_MD and OPT_MMD instead of
      	OPT_MDX and OPT_MMDX.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@163280 138bc75d-0d04-0410-961f-82ee72b054a4
      89c69892
  9. 12 Aug, 2010 1 commit
  10. 29 Jul, 2010 1 commit
  11. 27 Jul, 2010 1 commit
    • jsm28's avatar
      * langhooks-def.h (lhd_init_options, LANG_HOOKS_OPTION_LANG_MASK, · e88d34f6
      jsm28 authored
      	LANG_HOOKS_COMPLAIN_WRONG_LANG_P): New.
      	(LANG_HOOKS_INIT_OPTIONS): Update default definition.
      	(LANG_HOOKS_INITIALIZER): Add new hooks.
      	* langhooks.c (lhd_init_options, lhd_complain_wrong_lang_p): New.
      	* langhooks.h (struct lang_hooks): Add new hooks option_lang_mask
      	and complain_wrong_lang_p.  Update init_options prototype.
      	* c-objc-common.c (c_initialize_diagnostics): First call
      	c_common_initialize_diagnostics.
      	* c-objc-common.h (LANG_HOOKS_OPTION_LANG_MASK,
      	LANG_HOOKS_COMPLAIN_WRONG_LANG_P): Define.
      	* coretypes.h (struct cl_option, struct cl_decoded_option):
      	Declare.
      	* hooks.c (hook_uint_uint_constcharptrptr_0): Remove.
      	(hook_uint_void_0): New.
      	* hooks.h (hook_uint_uint_constcharptrptr_0): Remove.
      	(hook_uint_void_0): New.
      	* opts-common.c (decode_cmdline_option,
      	decode_cmdline_options_to_array): Also fill in canonical_option
      	field.
      	* opts.c (complain_wrong_lang): Use langhook to determine whether
      	to complain instead of...
      e88d34f6
  12. 13 Jun, 2010 1 commit
    • dfranke's avatar
      2010-06-13 Daniel Franke <franke.daniel@gmail.com> · d826a69b
      dfranke authored
      	PR fortran/31588
      	PR fortran/43954
      	* gfortranspec.c (lang_specific_driver): Removed deprecation
      	warning for -M.
      	* lang.opt: Add options -M, -MM, -MD, -MMD, -MF, -MG, -MP, -MT, -MQ.
      	* lang-specs.h (CPP_FORWARD_OPTIONS): Add -M* options.
      	* cpp.h (gfc_cpp_makedep): New.
      	(gfc_cpp_add_dep): New.
      	(gfc_cpp_add_target): New.
      	* cpp.c (gfc_cpp_option): Add deps* members.
      	(gfc_cpp_makedep): New.
      	(gfc_cpp_add_dep): New.
      	(gfc_cpp_add_target): New.
      	(gfc_cpp_init_options): Initialize new options.
      	(gfc_cpp_handle_option): Handle new options.
      	(gfc_cpp_post_options): Map new options to libcpp-options.
      	(gfc_cpp_init): Handle deferred -MQ and -MT options.
      	(gfc_cpp_done): If requested, write dependencies to file.
      	* module.c (gfc_dump_module): Add a module filename as target.
      	* scanner.c (open_included_file): New parameter system; add the
      	included file as dependency.
      	(gfc_open_included_file): Add the included file as dependency.
      	(gfc_open_intrinsic_module): Likewise.
      	* invoke.texi: Removed deprecation warning for -M.
      	* gfortran.texi: Removed Makefile-dependencies project.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@160684 138bc75d-0d04-0410-961f-82ee72b054a4
      d826a69b
  13. 28 May, 2010 1 commit
    • jsm28's avatar
      * final.c (rest_of_clean_state): Use %m in errors instead of · 8fb69344
      jsm28 authored
      	strerror (errno).
      	* gengtype.c (read_input_list, close_output_files): Use xstrerror
      	instead of strerror.
      	* toplev.c (process_options): Use %m in errors instead of strerror
      	(errno).
      	* tree-dump.c (dump_begin): Use %m in errors instead of strerror
      	(errno).
      
      fortran:
      	* cpp.c (gfc_cpp_init_0): Use xstrerror instead of strerror.
      	* module.c (write_char, gfc_dump_module, gfc_use_module): Use
      	xstrerror instead of strerror.
      
      lto:
      	* lto-coff.c (coff_errmsg): Remove.
      	(lto_coff_begin_section_with_type, lto_obj_append_data): Use %m in
      	errors instead of coff_errmsg (-1).
      	* lto-macho.c (mach_o_errmsg): Remove.
      	(lto_obj_begin_section, lto_obj_append_data): Use %m in errors
      	instead of mach_o_errmsg (-1).
      	* lto.c (read_cgraph_and_symbols): Use %m in errors instead of
      	xstrerror (errno).
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159969 138bc75d-0d04-0410-961f-82ee72b054a4
      8fb69344
  14. 26 May, 2010 1 commit
    • jsm28's avatar
      * diagnostic.c: Don't include opts.h. · 3c6a9715
      jsm28 authored
      	(permissive_error_option): Define.
      	(diagnostic_initialize): Take n_opts parameter.  Allocate memory
      	for classify_diagnostic.  Don't use memset for
      	classify_diagnostic.  Initialize new and recently added fields.
      	(diagnostic_classify_diagnostic): Use context->n_opts instead of
      	N_OPTS.
      	(diagnostic_report_diagnostic): Pass context parameter to
      	diagnostic_report_warnings_p.  Use option_enabled and option_name
      	hooks from context.
      	(emit_diagnostic): Use permissive_error_option.
      	(permerror): Likewise.
      	* diagnostic.h: Don't include options.h.
      	(struct diagnostic_context): Add n_opts, opt_permissive,
      	inhibit_warnings, warn_system_headers, option_enabled and
      	option_name fields.  Change classify_diagnostic to a pointer.
      	* opts-diagnostic.h: New file.
      	* opts.c: Include opts-diagnostic.h.
      	(common_handle_option): Set global_dc fields for -Wfatal-errors,
      	-Wsystem-headers, -fshow-column, -pedantic-errors and -w.
      	(option_name): New function.
      	* c-opts.c (c_common_init_options): Set global_dc->opt_permissive.
      	(c_common_handle_option): Set global_dc->permissive for
      	-fpermissive.
      	* c-common.c (c_cpp_error): Save and restore
      	global_dc->warn_system_headers, not variable warn_system_headers.
      	* toplev.c: Include opts-diagnostic.h.
      	(general_init): Update call to diagnostic_initialize.  Set
      	global_dc->show_column, global_dc->option_enabled and
      	global_dc->option_name.
      	(process_options): Don't set global_dc fields here.
      	* Makefile.in (DIAGNOSTIC_H): Remove options.h.
      	(diagnostic.o, opts.o, toplev.o): Update dependencies.
      
      fortran:
      	* cpp.c (cb_cpp_error): Save and restore
      	global_dc->warn_system_headers, not variable warn_system_headers.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@159869 138bc75d-0d04-0410-961f-82ee72b054a4
      3c6a9715
  15. 07 Apr, 2010 1 commit
    • simonb's avatar
      * diagnostic.h (diagnostic_override_option_index): New macro to · 3a79f5da
      simonb authored
      	set a diagnostic's option_index.
      	* c-tree.h (c_cpp_error): Add warning reason argument.
      	* opts.c (_warning_as_error_callback): New.
      	(register_warning_as_error_callback): Store callback for
      	warnings enabled via enable_warning_as_error.
      	(enable_warning_as_error): Call callback, minor code tidy.
      	* opts.h (register_warning_as_error_callback): Declare.
      	* c-opts.c (warning_as_error_callback): New, set cpp_opts flag in
      	response to -Werror=.
      	(c_common_init_options): Register warning_as_error_callback in opts.c.
      	* common.opt: Add -Wno-cpp option.
      	* c-common.c (struct reason_option_codes_t): Map cpp warning
      	reason codes to gcc option indexes.
      	* (c_option_controlling_cpp_error): New function, lookup the gcc
      	option index for a cpp warning reason code.
      	* (c_cpp_error): Add warning reason argument, call
      	c_option_controlling_cpp_error for diagnostic_override_option_index.
      	* doc/invoke.texi: Document -Wno-cpp.
      
      	* cpp.c (cb_cpp_error): Add ...
      3a79f5da
  16. 19 Jun, 2009 1 commit
    • ian's avatar
      ./: · 4a76ab2a
      ian authored
      	* c-decl.c (grokdeclarator): If -Wc++-compat, warn about a global
      	variable with an anonymous type.
      fortran/:
      	* cpp.c (struct gfc_cpp_option_data): Give this struct, used for
      	the global variable gfc_cpp_option, a name.
      testsuite/:
      	* gcc.dg/Wcxx-compat-16.c: New testcase.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@148708 138bc75d-0d04-0410-961f-82ee72b054a4
      4a76ab2a
  17. 31 Mar, 2009 1 commit
    • jsm28's avatar
      PR preprocessor/15638 · ff903809
      jsm28 authored
      gcc:
      	* c-common.c (c_cpp_error): Handle CPP_DL_FATAL.
      
      gcc/fortran:
      	* cpp.c (cb_cpp_error): Handle CPP_DL_FATAL.
      
      gcc/testsuite:
      	* gcc.dg/cpp/missing-header-1.c: New test.
      	* gcc.dg/cpp/include2.c: Only test #include <>.  Expect
      	"compilation terminated" message.
      	* gcc.dg/cpp/include2a.c: New test.  Copy of include2.c but only
      	test #include "".
      	* gcc.dg/pch/counter-2.c, gcc.dg/pch/valid-1.c,
      	gcc.dg/pch/valid-2.c, gcc.dg/pch/warn-1.c: Expect "compilation
      	terminated" message.
      
      libcpp:
      	* files.c (_cpp_find_file): Call open_file_failed after diagnosing
      	invalid PCH.
      	(open_file_failed): Make error for missing file fatal.
      	* include/cpplib.h (CPP_DL_FATAL): Define.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145341 138bc75d-0d04-0410-961f-82ee72b054a4
      ff903809
  18. 29 Mar, 2009 1 commit
    • jsm28's avatar
      PR preprocessor/34695 · 7f5f3953
      jsm28 authored
      gcc:
      	* Makefile.in (c-opts.o): Depend on c-tree.h.
      	* c-common.c: Move down include of diagnostic.h.
      	(done_lexing, c_cpp_error): New.
      	* c-common.h (done_lexing): Declare.
      	* c-decl.c (c_write_global_declarations): Don't check cpp_errors
      	(parse_in).
      	* c-opts.c: Include c-tree.h.
      	(c_common_init_options): Set preprocessor error callback.
      	(c_common_handle_option): Do not set preprocessor
      	inhibit_warnings, warnings_are_errors, warn_system_headers,
      	pedantic_errors or inhibit_warnings flags.
      	(c_common_post_options): Do not check cpp_errors (parse_in).
      	(c_common_finish): Do not output dependencies if there were
      	errors.  Do not check return value of cpp_finish.
      	* c-ppoutput.c (pp_file_change): Set input_location.
      	* c-tree.h (c_cpp_error): Declare.
      	* diagnostic.c (diagnostic_set_info_translated): Also initialize
      	override_column.
      	(diagnostic_build_prefix): Check override_column.
      	* diagnostic.h (diagnostic_info): Add override_column field.
      	(diagnostic_override_column): Define.
      
      gcc/cp:
      	* cp-tree.h (cp_cpp_error): Remove.
      	* error.c (cp_cpp_error): Remove.
      	* parser.c (cp_lexer_new_main): Set done_lexing instead of
      	client_diagnostic and error callback.
      
      gcc/fortran:
      	* cpp.c (cb_cpp_error): New.
      	(gfc_cpp_post_options): Don't set cpp_option->inhibit_warnings.
      	Don't check cpp_errors (cpp_in).
      	(gfc_cpp_init_0): Set cb->error.
      
      gcc/testsuite:
      	* gcc.dg/builtin-redefine.c, gcc.dg/cpp/redef2.c,
      	gcc.dg/cpp/redef3.c, gcc.dg/cpp/trad/redef2.c: Use dg-message
      	instead of dg-warning for "previous definition" messages.
      	* gcc.dg/cpp/Wvariadic-1.c, gcc.dg/cpp/Wvariadic-3.c: Expect
      	"warnings being treated as errors" message.
      	* gcc.dg/fltconst-1.c: Use -fshow-column.
      
      libcpp:
      	* makedepend.c: Remove.
      	* Makefile.in (makedepend_OBJS, makedepend$(EXEEXT)): Remove.
      	(all, clean, TAGS_SOURCES, include): Remove makedepend handling.
      	* directives.c (cpp_errors): Remove.
      	* errors.c (print_location, _cpp_begin_message, v_message):
      	Remove.
      	(cpp_error, cpp_error_with_line): Always use error callback.
      	(cpp_error, cpp_error_with_line, cpp_errno): Return bool.
      	* include/cpplib.h (cpp_options): Remove pedantic_errors,
      	inhibit_warnings, warn_system_headers, inhibit_errors,
      	warnings_are_errors, client_diagnostic.
      	(cpp_callbacks): Add extra arguments to error callback; make it
      	return bool.
      	(cpp_finish): Return void.
      	(cpp_destroy): Remove inaccurate comment about return value.
      	(cpp_errors, CPP_DL_EXTRACT, CPP_DL_WARNING_P): Remove.
      	(CPP_DL_NOTE): Define.
      	* include/line-map.h (linemap_print_containing_files): Remove.
      	* init.c (cpp_finish): Do not check for or return number of
      	errors.
      	* internal.h (cpp_reader): Remove errors field.
      	* line-map.c (linemap_print_containing_files): Remove.
      	* macro.c (_cpp_create_definition): Use CPP_DL_NOTE for message
      	about previous definition.  Only emit it if previous diagnostic
      	was emitted.
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@145263 138bc75d-0d04-0410-961f-82ee72b054a4
      7f5f3953
  19. 09 Dec, 2008 1 commit
    • dfranke's avatar
      2008-12-09 Daniel Franke <franke.daniel@gmail.com> · 7d2bb357
      dfranke authored
              PR fortran/36457
              * lang.opt: Added option idirafter.
              * cpp.h (gfc_cpp_add_include_path_after): New prototype.
      	* cpp.c (gfc_cpp_handle_option): Recognize and handle OPT_dirafter.
              (gfc_cpp_add_include_path_after): New, adds user-defined search path
              after any other paths.
              * invoke.texi (idirafter): New.
              (no-range-check): Fixed entry in option-index.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@142607 138bc75d-0d04-0410-961f-82ee72b054a4
      7d2bb357
  20. 03 Nov, 2008 1 commit
    • burnus's avatar
      2008-11-03 Tobias Burnus <burnus@net-b.de> · 55c4c509
      burnus authored
              PR fortran/37821
              * cpp.c (gfc_cpp_add_include_path): Use BRACKET.
              * scanner.c (add_path_to_list): Argument to add at head.
                (gfc_add_include_path): Add new argument.
                (gfc_add_intrinsic_modules_path) Update call.
                (load_file): Print filename/line in the error message.
              * gfortran.h (gfc_add_include_path): Update prototype.
              * options.c (gfc_post_options,gfc_handle_module_path_options,
                gfc_handle_option): Update call.
              * lang-spec.h (F951_OPTIONS): Don't insert include path twice.
      
              * arith.c (arith_error): Add -fno-range-error to the message.
      
      2008-11-03  Tobias Burnus  <burnus@net-b.de>
      
              PR fortran/37821
              * gfortran.dg/include_4.f90: New.
              * gfortran.dg/include_5.f90: New.
              * gfortran.dg/include_4.inc: New.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@141544 138bc75d-0d04-0410-961f-82ee72b054a4
      55c4c509
  21. 29 Jul, 2008 1 commit
    • ghazi's avatar
      * gfortran.h (try): Remove macro. Replace try with gfc_try · f6bb8f4b
      ghazi authored
      	throughout.
      	* array.c: Likewise.
      	* check.c: Likewise.
      	* cpp.c: Likewise.
      	* cpp.h: Likewise.
      	* data.c: Likewise.
      	* data.h: Likewise.
      	* decl.c: Likewise.
      	* error.c: Likewise.
      	* expr.c: Likewise.
      	* interface.c: Likewise.
      	* intrinsic.c: Likewise.
      	* intrinsic.h: Likewise.
      	* io.c: Likewise.
      	* match.h: Likewise.
      	* parse.c: Likewise.
      	* parse.h: Likewise.
      	* resolve.c: Likewise.
      	* scanner.c: Likewise.
      	* simplify.c: Likewise.
      	* symbol.c: Likewise.
      	* trans-openmp.c: Likewise.
      	* trans-types.c: Likewise.
      
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@138226 138bc75d-0d04-0410-961f-82ee72b054a4
      f6bb8f4b
  22. 23 Jun, 2008 1 commit
  23. 11 Jun, 2008 1 commit
  24. 02 Jun, 2008 1 commit
  25. 26 May, 2008 2 commits
  26. 25 May, 2008 1 commit
    • dfranke's avatar
      gcc: · 2ecc6bc5
      dfranke authored
      2008-05-26  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/18428
      	* c.opt: Removed undocumented option '-lang-fortran'.
      	* c-common.h: Removed global variable 'lang_fortran'.
      	* c-opts.c (c_common_handle_option): Removed code to handle
      	option '-lang-fortran'. Updated includes.
      	* c-cppbuiltin.c (c_cpp_builtins): Removed conditional
      	definition of '__GFORTRAN__'.
      	(define__GNUC__): Reimplemented to use BASEVER and
      	cpp_define_formatted.
      	(builtin_define_with_value_n): Removed.
      	* c-incpath.h: Renamed to ...
      	* incpath.h: ... this.
      	* c-incpath.c: Renamed to ...
      	* incpath.c: ... this. Updated includes.
      	* fix-header.c: Updated includes.
      	* Makefile.in: Replaced c-incpath.[ch] by incpath.[ch].
      	(c-cppbuiltin.o): Added dependency on and definition of BASEVER.
      	(OBJ-archive): Added cppdefault.o, incpath.o and prefix.o.
      
      
      gcc/cp:
      2008-05-26  Daniel Franke  <franke.daniel@gmail.com>
      
      	* Makefile.in: Adjusted dependencies on c-incpath.o.
      
      
      gcc/fortran:
      2008-05-26  Daniel Franke  <franke.daniel@gmail.com>
      
      	PR fortran/18428
      	* lang.opt (A, C, CC, D, E, H, P, U, cpp, d, fworking-directory,
      	imultilib, iprefix, iquote, isysroot, isystem, nocpp, nostdinc,
      	o, undef, v): New options.
      	* options.c (gfc_init_options): Also initialize preprocessor
      	options.
      	(gfc_post_options): Also handle post-initialization of preprocessor
      	options.
      	(gfc_handle_option): Check if option is a preprocessor option.
      	If yes, let gfc_cpp_handle_option() handle the option.
      	* lang-specs.h: Reorganized to handle new options.
      	* scanner.c (gfc_new_file): Read temporary file instead of
      	input source if preprocessing is enabled.
      	* f95-lang.c (gfc_init): Initialize preprocessor.
      	(gfc_finish): Clean up preprocessor.
      	* cpp.c: New.
      	* cpp.h: New.
      	* Make-lang.in: Added new objects and dependencies.
      	* gfortran.texi: Updated section "Preprocessing and
      	conditional compilation".
      	* invoke.texi: Added new section "Preprocessing Options",
      	listed and documented the preprocessing options handled by gfortran.
      
      
      
      git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@135882 138bc75d-0d04-0410-961f-82ee72b054a4
      2ecc6bc5