645 lines
21 KiB
Plaintext
645 lines
21 KiB
Plaintext
2018-11-24 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
PR d/87866
|
||
* d-incpath.cc (add_globalpaths): Use lrealpath to get canonical name.
|
||
(add_filepaths): Likewise.
|
||
|
||
2018-11-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
PR d/87824
|
||
* d-target.cc (Target::alignsize): Return min_align_of_type.
|
||
|
||
2018-11-05 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
PR d/87865
|
||
* d-system.h: New file.
|
||
|
||
2018-11-01 Jakub Jelinek <jakub@redhat.com>
|
||
|
||
PR d/87824
|
||
* lang.opt (Wpsabi): New option.
|
||
|
||
2018-10-31 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
PR d/87825
|
||
* Make-lang.in (d/idgen) Link with BUILD_LINKERFLAGS.
|
||
(d/impcvgen): Likewise.
|
||
|
||
2018-10-26 Eugene Wissner <belka@caraus.de>
|
||
|
||
* Make-lang.in (selftest-d): New.
|
||
* d-diagnostic.cc (vwarning): Fix warning emitting.
|
||
|
||
2018-10-22 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-spec.cc (lang_specific_driver): Always link against phobos if any
|
||
input file is given.
|
||
|
||
2018-10-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_get_alias_set): Always return zero.
|
||
|
||
2018-10-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (maybe_set_intrinsic): Don't set built-in flag on
|
||
unsupported pow() overloads.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::binop_assignment): Call stabilize_reference on
|
||
LHS construct if it has side effects.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (clear_intrinsic_flag): Remove function.
|
||
(maybe_expand_intrinsic): Remove clear_intrinsic_flag call.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (expand_intrinsic_copysign): Use mathfn_built_in to
|
||
determine correct built-in to call.
|
||
(expand_intrinsic_pow): Likewise.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (expand_intrinsic_sqrt): Remove implicit int to double
|
||
conversion.
|
||
(expand_intrinsic_pow): Likewise.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (get_frame_for_symbol): Use error_at.
|
||
(build_frame_type): Likewise.
|
||
(get_framedecl): Likewise.
|
||
* d-lang.cc (d_parse_file): Likewise.
|
||
* decl.cc (DeclVisitor::visit(StructDeclaration)): Likewise.
|
||
(DeclVisitor::finish_vtable): Likewise.
|
||
(DeclVisitor::visit(ClassDeclaration)): Likewise.
|
||
(DeclVisitor::visit(InterfaceDeclaration)): Likewise.
|
||
(DeclVisitor::visit(EnumDeclaration)): Likewise.
|
||
(DeclVisitor::visit(VarDeclaration)): Likewise.
|
||
* toir.cc (IRVisitor::check_goto): Likewise.
|
||
(IRVisitor::check_previous_goto): Likewise.
|
||
(IRVisitor::visit(ThrowStatement)): Likewise.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (get_array_length): Use quoted format flag in message.
|
||
(d_build_call): Likewise.
|
||
* d-lang.cc (d_handle_option): Likewise.
|
||
* decl.cc (DeclVisitor::finish_vtable): Likewise.
|
||
* expr.cc (ExprVisitor::visit(ArrayLengthExp)): Likewise.
|
||
(ExprVisitor::visit(DeleteExp)): Likewise.
|
||
(ExprVisitor::visit(RemoveExp)): Likewise.
|
||
(ExprVisitor::visit(RemoveExp)): Likewise.
|
||
(ExprVisitor::visit(CallExp)): Likewise.
|
||
(ExprVisitor::visit(DotVarExp)): Likewise.
|
||
(ExprVisitor::visit(VarExp)): Likewise.
|
||
(ExprVisitor::visit(ScopeExp)): Likewise.
|
||
(ExprVisitor::visit(TypeExp)): Likewise.
|
||
(build_expr): Likewise.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-diagnostic.cc (d_diagnostic_report_diagnostic): Skip translation
|
||
by instead calling diagnostic_set_info_translated.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-tree.h (bool_type_node): Rename to d_bool_type.
|
||
(byte_type_node): Rename to d_byte_type.
|
||
(ubyte_type_node): Rename to d_ubyte_type.
|
||
(short_type_node): Rename to d_short_type.
|
||
(ushort_type_node): Rename to d_ushort_type.
|
||
(int_type_node): Rename to d_int_type.
|
||
(uint_type_node): Rename to d_uint_type.
|
||
(long_type_node): Rename to d_long_type.
|
||
(ulong_type_node): Rename to d_ulong_type.
|
||
(cent_type_node): Rename to d_cent_type.
|
||
(ucent_type_node): Rename to d_ucent_type.
|
||
|
||
2018-10-20 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::visit(PowExp)): Remove function.
|
||
|
||
2018-10-19 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-attribs.c: Rename to d-attribs.cc.
|
||
* d-spec.c: Rename to d-spec.cc.
|
||
|
||
2018-10-19 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_gimplify_expr): Don't handle TREE_THIS_VOLATILE.
|
||
|
||
2018-10-19 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-diagnostic.cc (vwarning): Update to use Diagnostic enum.
|
||
(vdeprecation): Likewise.
|
||
(vdeprecationSupplemental): Likewise.
|
||
* d-lang.cc (d_init_options): Explicitly set warnings and deprecations
|
||
as DIAGNOSTICoff.
|
||
(d_handle_option): Update to use Diagnostic enum.
|
||
(d_post_options): Likewise.
|
||
|
||
2018-10-18 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-diagnostic.cc (expand_format): Rename to expand_d_format.
|
||
Updated all callers.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (get_linemap): Rename function to make_location_t.
|
||
Updated all callers.
|
||
* d-tree.h (get_linemap): Rename declaration to make_location_t.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::binary_op): Use POINTER_DIFF_EXPR.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (expand_intrinsic_bsf): Assert that built-in function
|
||
code is not END_BUILTINS.
|
||
(expand_intrinsic_bsr): Likewise.
|
||
(expand_intrinsic_bswap): Likewise.
|
||
(expand_intrinsic_popcnt): Likewise.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* config-lang.in (gtfiles): Add modules.cc.
|
||
* modules.cc: Include gt-d-modules.h.
|
||
(module_info): Mark with GTY.
|
||
(static_ctor_list): Likewise.
|
||
(static_dtor_list): Likewise.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-spec.c (lang_specific_driver): Use strrchr and strcmp to check
|
||
input file suffix.
|
||
|
||
2018-10-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-spec.c (phobos_action): New enum.
|
||
(library): Rename to phobos_library.
|
||
(lang_specific_driver): Update to use phobos_library.
|
||
(lang_specific_pre_link): Likewise.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-frontend.cc (Port::writelongLE): Remove function.
|
||
(Port::writelongBE): Remove function.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-convert.cc (convert): Remove goto maybe_fold.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (warn_for_null_address): New function.
|
||
(build_boolop): Warn about comparing address of decl to null.
|
||
* d-convert.cc (decl_with_nonnull_addr_p): New function.
|
||
(d_truthvalue_conversion): Warn about evaluating address as boolean.
|
||
* d-tree.h (decl_with_nonnull_addr_p): Add declaration.
|
||
* lang.opt (Waddress): New option.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (d_array_length): Assert that argument type is a
|
||
dynamic array.
|
||
(d_array_ptr): Likewise.
|
||
(d_array_value): Likewise.
|
||
(delegate_method): Assert that argument type is a delegate.
|
||
(delegate_object): Likewise.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-attribs.c (handle_malloc_attribute): Use gcc_assert instead of
|
||
gcc_unreachable.
|
||
(handle_pure_attribute): Likewise.
|
||
(handle_nothrow_attribute): Likewise.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in: Rename compiler proper to d21.
|
||
* config-lang.in (compilers): Rename compiler to d21.
|
||
* d-spec.c (lang_specific_driver): Update comments.
|
||
* lang-specs.h: Rename compiler to d21.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* lang.opt: Add missing periods to the ends of sentences.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_handle_option): Remove handling of -fdeps.
|
||
(d_parse_file): Don't generate module dependencies.
|
||
* lang.opt (fdeps, fdeps=): Remove options.
|
||
(fintfc, fintfc-dir=, fintfc-file=): Remove options.
|
||
(ftransition=safe): Remove option.
|
||
|
||
2018-10-16 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_init_ts): Remove handling of IASM_EXPR.
|
||
(d_gimplify_expr): Likewise.
|
||
* d-tree.def (IASM_EXPR): Remove tree code.
|
||
|
||
2018-10-15 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-attrib.c (attr_noreturn_exclusions): Attribute not mutually
|
||
exclusive with self.
|
||
* typeinfo.cc (TypeInfoVisitor::layout_interfaces): Assert that
|
||
base class vtable is found in interface.
|
||
|
||
2018-10-08 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (DeclVisitor): Add using Visitor::visit.
|
||
* expr.cc (ExprVisitor): Likewise.
|
||
* imports.cc (ImportVisitor): Likewise.
|
||
* toir.cc (IRVisitor): Likewise.
|
||
* typeinfo.cc (TypeInfoVisitor): Likewise.
|
||
(TypeInfoDeclVisitor): Likewise.
|
||
(SpeculativeTypeVisitor): Likewise.
|
||
* types.cc (TypeVisitor): Likewise.
|
||
|
||
2018-10-01 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-frontend.cc: Include compiler.h, errors.h, expression.h.
|
||
(genCmain): Rename function to Compiler::genCmain.
|
||
(Compiler::paintAsType): New function.
|
||
(Compiler::loadModule): New function.
|
||
(getTypeInfoType): Call error function directly.
|
||
* d-lang.cc (deps_write): Use hash_set for dependency tracking.
|
||
(d_parse_file): Call Compiler::loadModule.
|
||
* d-target.cc: Remove include identifier.h, module.h.
|
||
(Target::paintAsType): Remove function.
|
||
(Target::loadModule): Remove function.
|
||
(Target::getTargetInfo): New function.
|
||
|
||
2018-10-01 Eugene Wissner <belka@caraus.de>
|
||
|
||
* decl.cc (finish_thunk): Adjust call to cgraph_node::create_thunk.
|
||
|
||
2018-09-25 Eugene Wissner <belka@caraus.de>
|
||
|
||
* d-codegen.cc (d_assert_call): Don't make STRING_CSTs larger than they
|
||
are.
|
||
* expr.cc (ExprVisitor::visit(StringExp)): Likewise.
|
||
* typeinfo.cc (TypeInfoVisitor::layout_string): Likewise.
|
||
|
||
2018-09-24 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-builtins.cc: Include expression.h, identifier.h.
|
||
* d-codegen.cc: Include identifier.h.
|
||
* d-convert.cc: Include declaration.h.
|
||
* d-frontend.cc: Include identifier.h.
|
||
* d-lang.cc: Include declaration.h, expression.h, identifier.h.
|
||
(d_parse_file): Call moduleToBuffer to get string dump of contents.
|
||
* d-target.cc: Include declaration.h, expression.h, identifier.h.
|
||
* expr.cc: Include identifier.h.
|
||
* imports.cc: Include identifier.h.
|
||
* intrinsics.cc: Include identifier.h.
|
||
* modules.cc: Include identifier.h.
|
||
* toir.cc: Include expression.h, identifier.h.
|
||
* typeinfo.cc: Include expression.h, identifier.h.
|
||
* types.cc: Include expression.h, identifier.h.
|
||
|
||
2018-09-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in (D_INCLUDES): Rename dfrontend to dmd.
|
||
(d/%.o): Likewise.
|
||
(d/%.dmdgen.o): Likewise.
|
||
* verstr.h: Update to 2.076.1
|
||
|
||
2018-09-10 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* intrinsics.cc (maybe_expand_intrinsic): Handle INTRINSIC_EXP.
|
||
* intrinsics.def (EXP): Add CTFE intrinsic.
|
||
|
||
2018-09-07 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc: Include errors.h, mars.h.
|
||
* decl.cc: Include errors.h.
|
||
* typeinfo.cc: Include globals.h, errors.h.
|
||
|
||
2018-09-05 Eugene Wissner <belka@caraus.de>
|
||
|
||
* d-frontend.cc (eval_builtin): Replace DECL_BUILT_IN with
|
||
fndecl_built_in_p.
|
||
|
||
2018-08-29 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-target.cc (Target::prefixName): Remove function.
|
||
(Target::cppParameterType): New function.
|
||
|
||
2018-08-25 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in (D_FRONTEND_OBJS): Add iasm.o, iasmgcc.o
|
||
* lang.opt (fproperty): Remove option.
|
||
* d-lang.cc (d_handle_option): Remove case for OPT_fproperty.
|
||
* toir.cc (IRVisitor::visit(ExtAsmStatement)): Rename override to
|
||
GccAsmStatement.
|
||
|
||
2018-07-23 Eugene Wissner <belka@caraus.de>
|
||
|
||
* d-lang.cc (d_handle_option): Change function argument to HOST_WIDE_INT.
|
||
* lang.opt (Walloca-larger-than=, Wno-alloca-larger-than): New options.
|
||
* opt.texi (Walloca-larger-than=, Wno-alloca-larger-than): Likewise.
|
||
|
||
2018-07-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (get_symbol_decl): Set all generated static symbols as
|
||
DECL_EXTERNAL. Move logic for determining TREE_STATIC ...
|
||
(start_function): ... here.
|
||
(d_finish_decl): Update TLS model after finishing variable linkage.
|
||
|
||
2018-07-14 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in (d.tags): Rename dfrontend to dmd.
|
||
* d-attribs.c: Rename dfrontend includes to dmd.
|
||
* d-builtins.cc: Likewise.
|
||
* d-codegen.cc: Likewise.
|
||
* d-convert.cc: Likewise.
|
||
* d-diagnostic.cc: Likewise.
|
||
* d-frontend.cc: Likewise.
|
||
* d-incpath.cc: Likewise.
|
||
* d-lang.cc: Likewise.
|
||
* d-longdouble.cc: Likewise.
|
||
* d-target.cc: Likewise.
|
||
* decl.cc: Likewise.
|
||
* expr.cc: Likewise.
|
||
* imports.cc: Likewise.
|
||
* intrinsics.cc: Likewise.
|
||
* modules.cc: Likewise.
|
||
* runtime.cc: Likewise.
|
||
* toir.cc: Likewise.
|
||
* typeinfo.cc: Likewise.
|
||
* types.cc: Likewise.
|
||
|
||
2018-07-14 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* types.cc (same_type_p): Check type codes match before checking
|
||
equivalence.
|
||
|
||
2018-07-09 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Makefile.in (d/verstr.h): Remove recipe.
|
||
(d.mostlyclean): Remove cleanup of verstr.h.
|
||
* verstr.h: New file.
|
||
|
||
2018-07-06 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (lower_struct_comparison): Evaluate side effects of
|
||
empty struct.
|
||
(build_struct_comparison): Likewise.
|
||
|
||
2018-07-06 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* typeinfo.cc (TypeInfoVisitor::layout_interfaces): Only generate an
|
||
interface vtable for classes.
|
||
(TypeInfoVisitor::visit(TypeInfoClassDeclaration)): Likewise.
|
||
|
||
2018-07-05 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (deps_write): Ignore __main module.
|
||
(d_handle_option): Handle -fmain option.
|
||
(d_parse_file): Generate D main function if requested.
|
||
* lang.opt (fmain): New option.
|
||
|
||
2018-07-04 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-builtins.cc (d_build_builtins_module): Export __builtin_clonglong
|
||
and __builtin_culonglong to gcc builtins module.
|
||
|
||
2018-07-04 Eugene Wissner <belka@caraus.de>
|
||
|
||
* d-spec.c: Include opt-suggestions.h containing option_proposer used by
|
||
gcc.h.
|
||
|
||
2018-07-01 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (get_symbol_decl): Implicitly convert return type of 'void'
|
||
main to 'int' for both C and D entry functions.
|
||
* toir.cc (IRVisitor::visit(ReturnStatement)): Likewise.
|
||
|
||
2018-06-30 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::visit(FuncExp)): Don't error about nested
|
||
delegate literals.
|
||
|
||
2018-06-29 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-frontend.cc (eval_builtin): Allow both gcc and frontend builtins.
|
||
* intrinsics.cc (call_builtin_fn): Use convert.
|
||
(expand_intrinsic_sqrt): Use fold_convert.
|
||
(expand_intrinsic_copysign): New function.
|
||
(expand_intrinsic_pow): New function.
|
||
(maybe_expand_intrinsic): Handle many math intrinsics.
|
||
* intrinsics.def (EXPM1, EXP2, LOG, LOG2, LOG10, ROUND, FLOORF),
|
||
(FLOOR, FLOORL, CEILF, CEIL, CEILL, TRUNC, FMIN, FMAX, COPYSIGN),
|
||
(POW, FMA): Add math intrinsics.
|
||
|
||
2018-06-27 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (find_aggregate_field): Move to decl.cc
|
||
(build_class_instance): Move to decl.cc, make static.
|
||
* d-tree.h (build_class_instance): Remove declaration.
|
||
* decl.cc (DeclVisitor::finish_vtable): New function.
|
||
|
||
2018-06-26 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* types.cc (TypeVisitor::visit(TypeClass)): Handle get_symbol_decl
|
||
returning an error_mark_node.
|
||
|
||
2018-06-22 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (DeclVisitor::visit(FuncDeclaration)): Move function
|
||
unnesting to...
|
||
(get_symbol_decl): ... here.
|
||
|
||
2018-06-22 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_post_options): Set global showColumns parameter.
|
||
|
||
2018-06-22 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-diagnostic.cc (expand_format): Handle whitespace format specifier.
|
||
(d_diagnostic_report_diagnostic): Change signature, updated all
|
||
callers. Handle writing messages verbatim.
|
||
(vmessage): New function.
|
||
* d-lang.cc (d_parse_file): Use message to emit verbose diagnostics.
|
||
* decl.cc (DeclVisitor::visit(FuncDeclaration)): Likewise.
|
||
(get_symbol_decl): Likewise.
|
||
|
||
2018-06-22 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-builtins.cc (build_frontend_type): Use Type::merge2 to merge
|
||
generated front-end types.
|
||
* d-codegen.cc (declaration_type): Likewise.
|
||
(type_passed_as): Likewise.
|
||
* d-convert.cc (convert_expr): Use ClassDeclaration::isCPPclass.
|
||
* d-lang.cc (d_build_eh_runtime_type): Likewise.
|
||
* toir.cc (IRVisitor::visit): Use ClassDecalration::isCPPclass.
|
||
* typeinfo.cc (TypeInfoVisitor::visit): Use Type::merge2 to merge
|
||
generated front-end types.
|
||
* types.cc (layout_aggregate_type): Use ClassDeclaration::isCPPclass.
|
||
|
||
2018-05-28 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::visit(StringExp)): Copy string literal from
|
||
the frontend to a null terminated string.
|
||
|
||
2018-05-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::binary_op): Don't do complex conversions if
|
||
already handling excess precision.
|
||
|
||
2018-04-02 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (doing_semantic_analysis_p): New variable.
|
||
(d_parse_file): Set when in semantic pass.
|
||
* d-tree.h (doing_semantic_analysis_p): Add declaration.
|
||
* intrinsics.cc (maybe_expand_intrinsic): Test for
|
||
doing_semantic_analysis_p.
|
||
|
||
2018-03-18 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (stabilize_expr): Move modify expression rewrite...
|
||
* expr.cc (ExprVisitor::binop_assignment): ... here.
|
||
|
||
2018-03-11 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::visit(StringExp)): Include null terminator
|
||
in length when calling build_String. Generate static array string
|
||
literals as array constructors.
|
||
|
||
2018-03-04 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_handle_option): Rename OPT_fintfc cases to OPT_H.
|
||
* gdc.texi (Code Generation): Rename -fintfc options to -H.
|
||
* lang-specs.h: Add H, Hd, and Hf options.
|
||
* lang.opt (H, Hd, Hf): New options.
|
||
(fintfc, fintfc-dir=, fintfc-file=): Deprecate and alias new options.
|
||
|
||
2018-03-04 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* lang.opt (fdeps, fdeps=): Deprecate options.
|
||
* gdc.texi (Code Generation): Remove deprecated fdeps options.
|
||
|
||
2018-02-25 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in (D_FRONTEND_OBJS): Remove inline.o and inlinecost.o.
|
||
|
||
2018-02-24 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-frontend.cc (CTFloat::fabs): Assign result to real_t directly.
|
||
(CTFloat::ldexp): Likewise.
|
||
* d-longdouble.cc (longdouble::from_int): Remove function.
|
||
(longdouble::from_uint): Likewise.
|
||
(longdouble::to_int): Update Signature.
|
||
(longdouble::to_uint): Likewise.
|
||
(longdouble::operator): Likewise.
|
||
(longdouble::add): New function, move operator overload headers.
|
||
(longdouble::sub, longdouble::mul, longdouble::div): Likewise.
|
||
(longdouble::mod, longdouble::neg): Likewise.
|
||
(longdouble::cmp, longdouble::equals): Likewise.
|
||
* d-target.cc (Target::_init): Construct assignment into real_t
|
||
directly.
|
||
|
||
2018-02-19 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* Make-lang.in (DMD_WARN_CXXFLAGS): Only filter out
|
||
-Wmissing-format-attribute from WARN_CXXFLAGS.
|
||
|
||
2018-02-18 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-builtins.cc (build_frontend_type): Set alignment of structs in
|
||
frontend.
|
||
|
||
2018-02-17 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-incpath.cc (add_environment_paths): Remove function.
|
||
* gdc.texi (Environment Variables): Remove section.
|
||
|
||
2018-02-10 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* expr.cc (ExprVisitor::AssertExp): Use builtin expect to mark assert
|
||
condition as being likely true.
|
||
|
||
2018-02-11 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* lang.opt (fd-vgc, fd-verbose, fd-vtls): Remove options.
|
||
(femit-moduleinfo, femit-templates): Likewise.
|
||
(fmake-deps, fmake-mdeps): Likewise.
|
||
(fin, fout, fXf): Likewise.
|
||
|
||
2018-01-28 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* gdc.texi (Runtime Options): Remove deprecated -fproperty option.
|
||
|
||
2018-01-27 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_gimplify_expr): Gimplify all CALL_EXPR_ARGS_ORDERED
|
||
call arguments, not just non-constant.
|
||
|
||
2018-01-27 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (DeclVisitor::visit(VarDeclaration)): Don't reuse existing
|
||
temporary for TARGET_EXPR.
|
||
(declare_local_var): Push all variables to current binding level.
|
||
|
||
2018-01-27 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* toir.cc (build_function_body): Set input_location.
|
||
|
||
2018-01-23 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-codegen.cc (build_frame_type): Don't add chain field for
|
||
functions without context pointer.
|
||
(build_closure): Don't set chain field for functions without context
|
||
pointer.
|
||
|
||
2018-01-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decl.cc (DeclVisitor::visit(StructDeclaration)): Mark compiler
|
||
generated symbols as DECL_ONE_ONLY instead of DECL_COMDAT.
|
||
(DeclVisitor::visit(ClassDeclaration)): Likewise.
|
||
(DeclVisitor::visit(InterfaceDeclaration)): Likewise.
|
||
(DeclVisitor::visit(EnumDeclaration)): Likewise.
|
||
(get_symbol_decl): Mark template instantiations as DECL_ONE_ONLY
|
||
instead of DECL_COMDAT. Don't call mark_needed.
|
||
(declare_extern_var): Don't call mark_needed.
|
||
(d_finish_decl): Remove zero initializer for common symbols.
|
||
(finish_thunk): Don't call d_comdat_linkage on generic thunk.
|
||
(d_comdat_linkage): Don't set DECL_DECLARED_INLINE on functions.
|
||
* typeinfo.cc (TypeInfoDeclVisitor::visit(TypeInfoDeclaration)): Mark
|
||
built-in typeinfo symbols as DECL_ONE_ONLY instead of DECL_COMDAT.
|
||
|
||
2018-01-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* d-lang.cc (d_init): Disable flag_weak if not supported.
|
||
* decl.cc (d_comdat_linkage): Use flag_weak to guard setting
|
||
DECL_ONE_ONLY on decls.
|
||
(d_linkonce_linkage): New function.
|
||
* gdc.texi (Runtime Options): Document -fweak.
|
||
* lang.opt (fweak): Declare.
|
||
|
||
2018-01-21 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
* decls.cc (get_symbol_decl): Use attribute to mark naked functions.
|
||
|
||
2018-01-08 Eugene Wissner <belka@caraus.de>
|
||
|
||
* d-builtins.cc (d_eval_constant_expression): Handle polynomial
|
||
VECTOR_CST_NELTS.
|
||
(build_frontend_type): Handle polynomial TYPE_VECTOR_SUBPARTS.
|
||
|
||
2018-01-08 Iain Buclaw <ibuclaw@gdcproject.org>
|
||
|
||
Update copyright years.
|
||
|
||
Copyright (C) 2018 Free Software Foundation, Inc.
|
||
|
||
Copying and distribution of this file, with or without modification,
|
||
are permitted in any medium without royalty provided the copyright
|
||
notice and this notice are preserved.
|