Files
dmd/dmd.changes
Andrea Manzini 3be25695f1 - Update to version 2.111.0
* Compiler changes
    + Storage classes ref and auto ref can now be applied to local, static, 
      extern, and global variables
    + Keywords auto and ref must be adjacent
    + The align attribute now allows specifying default explicitly
    + Remove delete as a keyword
    + Case fallthough for multivalued cases is an error now
    + An error is now given for constructors when a field's destructor has 
      stricter attributes
    + Initializing a field with itself has been deprecated
    + An error is now given for subtracting pointers of different types
    + An error is now issued for in/out contracts of nothrow functions that may
      throw
    + Typesafe variadic class parameters have been deprecated
    + Integers in debug or version statements have been removed from the 
      language
    + Many error messages have changed
    + The compiler now accepts -extern-std=c++23
    + Build time profiling has been added to DMD
    + New traits getBitfieldOffset and getBitfieldWidth for built-in bitfields
    + Using the compiler flag -i will now properly pick up C source files
    + A pragma for ImportC allows to set nothrow, @nogc or pure
    + Mixin templates can now use assignment syntax
    + Object file extensions .o and .obj are now accepted on all platforms
    + Objective-C selectors are now automatically generated when not specified
      with @selector.
    + New compiler switch -oq for DMD
    + Added Placement New Expression
    + Postfix type qualifier method attributes for -H and -D

OBS-URL: https://build.opensuse.org/package/show/devel:languages:D/dmd?expand=0&rev=111
2025-04-05 13:15:05 +00:00

1405 lines
62 KiB
Plaintext
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-------------------------------------------------------------------
Fri Apr 4 09:29:24 UTC 2025 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.111.0
* Compiler changes
+ Storage classes ref and auto ref can now be applied to local, static,
extern, and global variables
+ Keywords auto and ref must be adjacent
+ The align attribute now allows specifying default explicitly
+ Remove delete as a keyword
+ Case fallthough for multivalued cases is an error now
+ An error is now given for constructors when a field's destructor has
stricter attributes
+ Initializing a field with itself has been deprecated
+ An error is now given for subtracting pointers of different types
+ An error is now issued for in/out contracts of nothrow functions that may
throw
+ Typesafe variadic class parameters have been deprecated
+ Integers in debug or version statements have been removed from the
language
+ Many error messages have changed
+ The compiler now accepts -extern-std=c++23
+ Build time profiling has been added to DMD
+ New traits getBitfieldOffset and getBitfieldWidth for built-in bitfields
+ Using the compiler flag -i will now properly pick up C source files
+ A pragma for ImportC allows to set nothrow, @nogc or pure
+ Mixin templates can now use assignment syntax
+ Object file extensions .o and .obj are now accepted on all platforms
+ Objective-C selectors are now automatically generated when not specified
with @selector.
+ New compiler switch -oq for DMD
+ Added Placement New Expression
+ Postfix type qualifier method attributes for -H and -D
+ The folder samples has been removed from DMD installations
+ New keyword __rvalue
+ Add -preview=safer switch for safety checking on unattributed functions
+ Shortened method syntax can now be used in constructors
* Runtime changes
+ Add Windows BCrypt bindings under core.sys.windows.bcrypt
+ Remove criticalRegionLock
+ Adds expect, likely, unlikely, and trap to core.builtins
+ New segfault handler showing backtraces for null access / call stack
overflow on linux
* Library changes
+ Added std.conv.bitCast
+ Extend the functionality of formattedRead to permit a std.file.slurp
like execution.
+ Added fromHexString and fromHexStringAsRange functions to std.digest.
+ ODBC Bindings in etc.c.odbc have been updated to ODBC 4.0.
+ Added popGrapheme function to std.uni.
+ Added readfln and File.readfln to std.stdio
+ Added the SharedAllocatorList, as the thread-safe version of the regular
AllocatorList.
+ New procedural API for std.sumtype
+ std.uni has been upgraded from Unicode 15.1.0 to 16.0.0
-------------------------------------------------------------------
Thu Mar 6 16:47:30 UTC 2025 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.110.0
* Copying from const(void)[] to void[] is disallowed with -preview=fixImmutableConv
* Import expressions are now treated as hex strings
* New trait isCOMClass to detect if a type is a COM class
* bool values other than 0 or 1 are not @safe
* dub.selections.json files are now looked up in parent directories too
for details see https://dlang.org/changelog/2.110.0.html#bugfix-list
-------------------------------------------------------------------
Wed Jul 3 06:44:10 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.109.1
* Compiler change: bool values other than 0 or 1 are not @safe
* fixed Bugzilla 24602: Internal compiler error: failed to detect static
initialization of associative array
* fixed Bugzilla 24566: condition that starts with runtime value and uses
compile time array does not short circuit
* Bugzilla 24596: Rebindable2 corrupts objects
- suggest to install also phobos-devel-static (see bsc#1219521)
-------------------------------------------------------------------
Sun Jun 2 13:54:29 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.109.0
* Compiler changes
+ [next edition] Aliasing a member of a type instance is now an error
+ Add Bitfield Introspection Capability
+ Added __ctfeWrite to write messages from CTFE
+ Deprecation warnings are now also limited by -verrors
+ dtoh generates signatures for extern(Windows) and extern(System) functions.
+ foreach on a dynamic array can have an index type smaller than size_t
+ foreach_reverse on a delegate is now an error
+ Expansion of identifier tables to allow new characters to match C23 have been
added along with CLI configurability
+ ImportC has improved Unicode support
+ Missing symbol errors are made less cryptic
* Runtime changes
+ Add module core.sys.linux.sys.mount.
+ Remove all collectNoStack functions and API from druntime.
+ Mark Thread.sleep as @trusted
* Library changes
+ Add std.process.Config.preExecDelegate
-------------------------------------------------------------------
Mon May 6 07:52:44 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.108.1
* DMD Compiler regression fixes
+ Bugzilla 23657: [REG2.101] Incorrect error escape reference to stack allocated value
+ Bugzilla 24436: a array be overwritten when other array be written
+ Bugzilla 24479: [REG2.104] Error on getAttributes on getOverloads of templates
+ Bugzilla 24505: [REG2.108] ImportC: Function-like macros (newly translated to templates) may collide with regular symbols
+ Bugzilla 24519: compiler segfault on default argument with slice operator []
* DMD Compiler bug fixes
+ Bugzilla 24495: ImportC: Struct initialization expression fails to initialize field
+ Bugzilla 24509: importC cannot handle _stdcall Function Calling Convention with single heading underscore
+ Bugzilla 24511: __stdcall functions from C are extern(C) in D.
* Phobos regression fixes
+ Bugzilla 24481: retro no longer works with types that support assignment but not moving
* Druntime regression fixes
+ Bugzilla 24498: Multidimensional array not scanned by GC
-------------------------------------------------------------------
Tue Apr 2 15:34:52 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.108.0
* Compiler changes
- Added .nameSig field to TypeInfo_Class in object.d
- Keywords like __FILE__ are always evaluated at the call site
- Hex strings now convert to integer arrays
- Add support for Interpolated Expression Sequences
- Named arguments for functions have been implemented and documented
* Library changes
- isForwardRange, isBidirectionalRange, and isRandomAccessRange now take an optional element type
- std.uni has been upgraded from Unicode 15.0.0 to 15.1.0
-------------------------------------------------------------------
Sat Mar 16 15:57:55 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Added rdmd run/build tool ( https://dlang.org/rdmd.html )
-------------------------------------------------------------------
Tue Mar 12 16:41:25 UTC 2024 - Andrea Manzini <andrea.manzini@suse.com>
- Update to version 2.107.1
* DMD Compiler regression fixes
- Bugzilla 20802: [REG2.088.0] Link failure with writefln
- Bugzilla 24371: [REG 2.104] String array concatenation does not respect operator precedence
* DMD Compiler bug fixes
- Bugzilla 20297: ld: warning: no platform load command found for macOS
- Bugzilla 21047: Linker error: GOT load reloc does not point to a movq instruction
- Bugzilla 22556: Invalid GOT load reloc with -O on MacOS
- Bugzilla 23517: dmd with -g flag fails to link on macOS with unaligned pointer
- Bugzilla 24137: Link failure on macOS with symbol count from symbol table and dynamic symbol table differ
- Bugzilla 24365: ICE when printing 'showCtfeContext' error
- Bugzilla 24370: static array values in static AA initialise to dynamic arrays
- Bugzilla 24399: Link failure on MacOS with address=0x0 points to section(2) with no content in config_a68_4c3.o
- Bugzilla 24409: DMD crash for CTFE in stompOverlappedFields
- Bugzilla 24422: ImportC: ICE: Segfault in cparseFunctionDefinition
- Update to version 2.107.0
* Compiler changes
- A string literal as an assert condition is deprecated
- Unrecognized pragmas are no longer an error, but instead simply ignored
- Added @standalone for module constructors
- _d_newarray{mTX,miTX,OpT} are converted to a single template: _d_newarraymTX
* Runtime changes
- Using an invalid MemoryOrder for core.atomic operations are now rejected at compile time
* Library changes
- isForwardRange now takes an optional element type.
- Update to version 2.106.1
* DMD Compiler regression fixes
- Bugzilla 22212: dmd version has -dirty suffix on windows
* DMD Compiler bug fixes
- Bugzilla 22483: DMD generates invalid string sections that work by coincidence
- Bugzilla 24281: Segfault with missing field after named argument
- Bugzilla 24283: [SIMD][CODEGEN] Bad codegen with and not + AVX2 registers
- Update to version 2.106.0
* 2.106.0 comes with 17 major changes and 65 fixed Bugzilla issues. For
full changelog see https://dlang.org/changelog/2.106.0.html
-------------------------------------------------------------------
Fri Nov 3 07:20:28 UTC 2023 - Andrea Manzini <andrea.manzini@suse.com>
- Update to versione 2.105.3
* DMD Compiler regression fixes:
- Bugzilla 24171: [REG 2.100] Segfault compiling an empty ddoc file
- Bugzilla 24188: ICE (Illegal instruction) with missing imported symbol
* DMD Compiler bug fixes:
- Bugzilla 23686: template instance reused with default alias arg
- Bugzilla 23865: duplicate alias not detected
- Changes from version 2.105.2:
* DMD Compiler regression fixes
- Bugzilla 24109: [REG2.103] 'need this' when invoking outer method from inner method
- Bugzilla 24110: [REG2.104] Array comparison lowering apparently not handled properly in __traits(compiles)
- Bugzilla 24118: ICE / regression from 2.103.1 - segfault on CTFE only code in 2.104.2 and 2.105.0
- Bugzilla 24144: [REG2.105] Silent file name index overflow
* DMD Compiler bug fixes
- Bugzilla 24139: 'this' corruption in extern(C++) dtor when destructing via TypeInfo_Struct
* Phobos bug fixes
- Bugzilla 24140: Int128.opBinary [+-*/%&|^] with negative long arguments gives wrong answers
- Changes from version 2.105.1:
* A function with enum storage class is now deprecated, not an error
* for detail and bugfixes see https://dlang.org/changelog/2.105.1.html#bugfix-list
- Changes from version 2.105.0:
* Compiler changes
- Assignment-style syntax is now allowed for alias this
- Catch clause must take only const or mutable exceptions
- Functions can no longer have enum storage class
- Overloading extern(C) functions is now an error
- Deprecation phase ended for access to private method when overloaded with public method.
- Added predefined version identifier VisionOS
* Runtime changes
- Linux input header translations were added to druntime
- Integration with the Valgrind memcheck tool has been added to the garbage collector
* Library changes
- Better static assert messages for std.algorithm.iteration.permutations
- Added std.system.instructionSetArchitecture and std.system.ISA
* Dub changes
- Exposed --d-versions CLI flag
* for details see https://dlang.org/changelog/2.105.0.html#bugfix-list
-------------------------------------------------------------------
Thu Jul 20 20:05:43 UTC 2023 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.104.2
* DMD Compiler regression fixes:
- [REG2.102] Cannot use traits(getAttributes) with overloaded template
- ImportC: ICE on nested C initializer 2
* DMD Compiler bug fixes:
- Segmentation fault on mixin template + using unknown type
- "alias this" not properly dereferenced when the object being looked up is a field of a type
- error: instantiated from here: maxElement!("a.a", A[])
* Druntime regression fixes:
- "Warning: cannot inline function" in core.lifetime
- Changes from version 2.204.1
* DMD Compiler regression fixes:
- [REG2.101.0] Appending deprecated structs in deprecated function causes deprecation message
- [REG 2.103.0] ICE: dip1021 memory corruption
- ICE on failed alias this attempt on pointer expression
- [REG 2.103.0] address of a __traits(getOverloads) item is not converted to a delegate anymore
* DMD Compiler bug fixes:
- Segfault for function contract -preview=dip1021
- ICE: Invalid array access for invalid interface definition
- ImportC: ICE on nested C initializer
- segfault when printing scope inference failure
- ICE: dip1021 asserts on typeof(null) parameter
* Phobos regression fixes:
- std.range.slide fails in dmd-2.104.0
- std.algorithm.maxElement no longer works with array of BigInt
- Changes from version 2.104.0
* Compiler changes:
- Better error message when attribute inference fails down the call stack
- Using ; as an empty statement has been turned into an error
- Using in parameters with non extern(D)/extern(C++) functions is deprecated
- in ref on parameters has been deprecated in favor of -preview=in
- Throwing qualified objects is now deprecated
- User Defined Attributes now parse Template Arguments
* Library changes:
- Better static assert messages for std.algorithm.comparison.clamp
- std.typecons.Rebindable now supports all types
* Tools changes:
- rdmd supports -shared
* Dub changes:
- Add new properties 'cSourcePaths' and 'cImportPaths' to SDL/JSON
- The way packages are stored internally has changed
- Changes from version 2.103.1
* Compiler changes:
- Deprecate invalid special token sequences inside token strings
* DMD Compiler regression fixes:
- Header generation wrongfully outputs constructor bodies
- Typing invalid mnemonic in asm{} block segfault
* DMD Compiler bug fixes:
- Segmentation fault in CppMangleVisitor.headOfType
- Assertion failure in CppMangleVisitor.template_args
- Segfault for malformed static if in imported template
* Druntime regression fixes:
- [REG 2.103] Throwing while in a deep callstack causes memory corruption
-------------------------------------------------------------------
Sun Apr 16 17:15:51 UTC 2023 - Bjørn Lie <bjorn.lie@gmail.com>
- Update to version 2.103.0
* Compiler changes:
- Add __check(assign-expression) to ImportC
- Alias this for classes is deprecated
- -preview=dip25 has been enabled by default
- export int a; now generates dllexport instead of dllimport
- Deprecate traits(isVirtualFunction) and
traits(getVirtualFunctions)
* Library changes:
- Unicode grapheme walking updated to conform to Unicode
version 15
- Better static assert messages for
std.algorithm.iteration.joiner
- Better static assert messages for std.algorithm.sorting.sort
* Dub changes: The --color argument now accepts values auto,
never, always
- Changes from version 2.102.2:
* 6 fixed Bugzilla issues.
- Changes from version 2.102.1:
* Dub changes:
- Reverted v1.31.0 working directory change when using dub run
--root=<value>
- Path dependencies of path-based sub-packages have been fixed
- Changes from version 2.102.0:
* Compiler changes:
- A missed case of conflicting extern (D) @system function
definitions has been deprecated
- Deprecate the ability to call __traits(getAttributes) on
overload sets
- Deprecate non-empty for statement Increment clause with no
effect
- Array literals assigned to scope array variables can now be
allocated on the stack
- static assert now supports multiple message arguments
- -preview=systemVariables has been added
* Runtime changes: The default Throwable.TraceInfo generation now
is @nogc.
* Library changes:
- Single- and double-precision implementations for log function
families
- The Unicode property "C" aka "Other" has had the wrong
properties associated with it
- Unicode table generator is now in Phobos, tables are updated
to version 15
- std.typecons.Unique now calls destroy on struct types
* Installer changes:
- Update the bundled VisualD package
- Prefer 64 bit over 32 bit DMD on Windows 64 bit.
* Dub changes:
- Binary output will now be in a central cache
- DUB API breaking change: Package.metadataCache setter and
getter have been removed
- Changes from version 2.101.2:
* 16 fixed Bugzilla issues.
- Changes from version 2.101.1:
* 11 fixed Bugzilla issues.
-------------------------------------------------------------------
Thu Dec 1 11:03:47 UTC 2022 - Fabian Vogt <fvogt@suse.com>
- Bootstrap using gdmd instead of prebuilt binaries
-------------------------------------------------------------------
Wed Nov 16 16:55:52 UTC 2022 - Chris Josten <chris+suse@netsoj.nl>
- Build using the build.d script, as opposed to the deprecated
posix.mak
- Remove dmd_use_tarball_bootstrap.diff patch as it is no longer
needed
- Update to version 2.101.0
* Compiler changes
* Add bit fields to D
* Added __traits(classInstanceAlignment)
* Relaxed pragma(crt_constructor) / pragma(crt_destructor)
linkage check
* Add predefined version D_Optimized when compiling with -O
* Throwing from contracts of nothrow functions has been
deprecated
* Using integers for version or debug conditions has been
deprecated
* Print deprecations for scope pointer errors
* Improvements for the C++ header generation
* -preview=fixImmmutableConv has been added
* Returning a discarded void value from a function is now
deprecated
* ImportC now recognizes the typeof(...) operator
* Removed the -transition=markdown and -revert=markdown
switches
* new can now allocate an associative array
* -preview=in can now be used with extern(C++), disabled for
other non-D linkage
* The shortened method syntax is now available by default.
* Source files may no longer contain Unicode directionality
overrides
* Runtime changes
* Added avx512f detection to core.cpuid
* --DRT-oncycle=deprecate is removed
* Posix (excl. Darwin): Switch default GC signals from
SIGUSR1/2 to SIGRTMIN/SIGRTMIN+1
* Library changes
* Added SafeRefCounted, that can be used in @safe with
-preview=dip1000.
* Move logger out of experimental.
* remove std.experimental.logger's capability to set the minimal
LogLevel at compile time
* Change std.experimental.logger.core.sharedLog to return
shared(Logger)
* std.experimental.typecons has been removed
* std.digest.digest has been removed
* std.xml has been removed
* std.socket.Socket methods now accept only scope arrays.
* Add custom fill value to std.outbuffer.OutBuffer class
- Update to version 2.100.2
* Compiler changes
* scope(failure) blocks that contain return statements are
now deprecated
- Update to version 2.100.1
* Compiler changes
* scope(failure) blocks that contain return statements are
now deprecated
- Update to version 2.100.0
* Compiler changes
* End deprecation period for using alias this for partial
assignment.
* The deprecation period for D1-style operators has ended.
* scope as a type constraint on class, struct, and enum
declarations is deprecated.
* The deprecation period of unannotated asm blocks has been
ended.
* The deprecation period of the delete keyword has been ended.
* Improvements for the C++ header generation
* The deprecation period for scope as a type constraint on
interface declarations has ended.
* The inout attribute no longer implies the return attribute
* Support contract invariant version identifier.
* Implement DIP 1038: @mustuse
* Added .tupleof property for static arrays
* Usage of this and super as types has been removed
* A missed case of switch case fallthrough has been deprecated
* Library changes
* New function bind in std.functional
* Nullable in std.typecons can now act as a range
* Zlib updated to 1.2.12
* Tools changes
* rdmd now supports specifying the D compiler using the RDMD_DMD
environment variable
- Update to version 2.099.1
* Compiler changes
* Special case for __traits(parameters) in foreach loops
was removed
* Library changes
* std.experimental.logger default level changed to info instead
of warning
- Update to version 2.099.0
* Compiler changes
* When ref scope return attributes are used on a parameter,
and return scope appears, the return applies to the scope,
not the ref.
* __traits(parameters) has been added to the compiler.
* Add ability to import modules to ImportC
* Casting between compatible sequences
* New command line switch -vasm which outputs assembler code
per function
* The '-preview=intpromote' switch is now set by default.
* -m32 now produces MS Coff objects when targeting windows
* Ignore unittests in non-root modules
* main can now return type noreturn and supports return inference
* Falling through switch cases is now an error
* Throw expression as proposed by DIP 1034 have been implemented
* Added __traits(initSymbol) to obtain aggregate initializers
* Runtime changes
* Add support for @safe class opEquals
* Library changes
* Move checkedint out of experimental.
* chunkBy @safe with forward ranges and splitWhen fully @safe
* std.csv can now optionally handle csv files with variable
number of columns.
* Change default log level for std.experimental.logger to
LogLevel.warning
* std.conv.to accepts std.typecons tuples
-------------------------------------------------------------------
Mon Dec 27 15:03:23 UTC 2021 - Chris Josten <chris+suse@netsoj.nl>
- Update to version 2.098.1
* DMD Compiler regression fixes
* [REG2.084.0] Bogus slice assignment in recursive CTFE call
* spurious deprecation warnings on function calls within with(X)
blocks while X has a deprecated alias this target
* OpDispatch does not work for structs with constructor and
destructor
* error in static struct initialization causes wrong position for
subsequent members, producing extra errors
* alias this returns 'null' for ref types when put into array
initializer
* Rebindable does not work when class has alias this to inout
property
* A case of compiler crash when using auto ref
* Spurious "non-constant expression" error with immutable
constructors
* Compiler segfault on static array in a struct at CTFE
* [REG2.097] Error: mismatched function return type inference of
void and noreturn
* Compiler crash when attempting to assign to function
* [REG 2.098-rc.2] -checkaction=context of a shared type with an
opCast fails to compile
* CTFE fails to iterate over associative array previously indexed
with implicit conversion to enum base type
* [REG2.094] function with tuple parameter with default argument
fails if there's a qualifier
* [REG2.098] Apparent CTFE regression wrt. alias this
* Invalid error message for void return from non-void functions
* importC: incomplete array type must have initializer
* Invalid duplicate case error when the switched value has errors
* Segfault for function literal in struct initializer with
previous errors
* wrong deprecation about empty statement
* [REG 2.098] Error: function 'core.stdc.stdio.vfprintf'
'pragma(printf)' functions must be
'extern(C) int vfprintf([parameters...], const(char)*, va_list)'
* more arguments than fields allowed in struct constructor
* importC: Error: undefined reference to 'parameter' when no
parameter names in forward declaration
* importC: Error: variable 'var' extern symbols cannot have
initializers
* importC: Segmentation fault indexing global array at run-time
* ICE on overloaded constructors
* DMD Compiler bug fixes
* ReturnStatement[CallExp(DotVarExp)]: Corrupted runtime on missed
manifest constant propagation
* Wrong cast of float constant to bool
* 'export' keyword on OSX/Linux globals causing segfaults
* [ICE] AssertError@dmd/optimize.d(691): Assertion failure
* Internal compiler assertion
* ICE (illegal instruction) with bad code
* cod1: Assertion failure for noreturn parameter
* ice for global / tls variable of type noreturn
* ice when dmd computes the alignment of an union containing a
noreturn
* importC: Parser accepts arrays with incomplete element types
* ImportC: #pragma pack is not implemented
* Link error for virtual destructor of C++ class in DLL
* ImportC: error parsing compound literal with more than one value
at function scope.
* importC: Error: C non-array initializer not supported yet
* importC: Error: cannot use non-constant CTFE pointer in an
initializer
* Wrong overload selected for @safe delegate
* noreturn functions are allowed to return normally
* importC: Error: unknown, when compiling source with non-constant
initializer.
* importC: Error: static variable cannot be read at compile time
* importC: Error: unknown, when compiling source with typedef'd
initializer
* importC: Error: can't subtract '__tag2[1]' from pointer
* importC: Error: cannot pass argument '0' of type 'int' to
parameter 'const(char)*'
* importC: Error: cannot modify 'const' expression '(*s).field'
* importC: Error: 'switch' statement without a 'default'; use
'final switch' or add 'default: assert(0);' or add
'default: break;'
* importC: Error: cannot implicitly convert expression of type
'extern (C) int(int a)' to 'const(extern (C) int function(int))'
* importC: [ICE] Error: struct no size because of forward reference
* importC: Error: cannot implicitly convert expression of type
'const(char*)' to 'char*'
* importC: Error: array index 0 is out of bounds
* ImportC: parse gnu attributes after a function parameter
* importC: static variables/functions emit global symbols
* ImportC: casting result of postfix operator on a parenthesized
expression to a typedefd type is parsed incorrectly
* ImportC: Lots of errors when compiling tomlc99
* ImportC: address of member of struct cant be taken at compile
time.
* [REG 2.093][ICE] Bus error at dmd/lexer.d:398
* Explicit cast between classes incorrectly goes through
'alias this' inside CTFE
* importC: D name mangling applied to forward declaration of
function inside function
* ImportC: const pointer (not pointer to const) is treated as
transitive const
* importC: function 'func' conflicts with function 'func' when
using static in forward declaration
* importC: float literal should support leading zero
* ImportC: extra semicolon not allowed outside of functions
* DMD compiler errors on Illumos/Solaris
* ImportC: cannot implicitly convert expression S(0) of type S to
int in an S array
* ImportC: decay of function to typedef'd const function pointer
causes ICE.
* importC: Error: undefined reference to '__builtin_va_start' and
'__builtin_va_end'
* importC: Debug information for C sources have DW_AT_language set
to D.
* importC: Segmentation fault initializing va_list with
__builtin_va_start
* importC: Error: cannot convert string literal to 'void*'
* Phobos regression fixes
* [REG2.069] TaskPool.reduce fails to compile "cannot get frame
pointer to D main"
* Phobos bug fixes
* OpenBSD: Add OpenBSD to std/system.d OS list
* Array!T.init.data crashes
* Phobos enhancements
* data should work with const/immutable Array's
* Nullable is not copyable when templated type has elaborate copy
ctor
* std.traits.fqnType is missing support for typeof(null)
* Druntime regression fixes
* [REG2.091] Wrong file read during exception stringification
leads to SIGBUS
* std.meta.allSatisfy in mutual recursion classes cannot be
compiled
* core.demangle does not support noreturn
* Druntime bug fixes
* Unify polyImpl implementations
* Remove useless conditional assignment of DISABLED_TESTS in
posix.mak
* Druntime enhancements
* Explicitly cast backtrace results to int
- Update to version 2.098.0
* Compiler changes
* Add Alias Assignment
* Accessing C Declarations From D Via ImportC Compiler
* Using the syntax (args) => {} now triggers a deprecation message
* Improvements for the C++ header generation
* -preview=dtorfields is now enabled by default
* Add .min, .max, etc. properties for vector types
* Using a mutable variable as a switch case now triggers an error
* Out of bounds array access now gives a better error message
* Class allocators have been removed from the language
* Initialization of immutable global data from static this now
triggers an error
* Add -target=<triple> for operating system, c, and c++ runtime
cross compilation
* Default initialization of union field that isn't the first member
now triggers an error
* Runtime changes
* TypeInfo names for aggregates are fully qualified and hence
unique now
* A concurrent GC for Posix systems
* Improve POSIX imports
* Library changes
* New function isValidCharacter in std.utf
* Dub changes
* Added support for environment variables to use compilation and
run (or test) option to the dub settings file and
dub.json/dub.sdl.
-------------------------------------------------------------------
Tue Jun 8 14:17:54 UTC 2021 - Ferdinand Thiessen <rpm@fthiessen.de>
- Update to version 2.097.0
* Compiler changes
* Deprecation period for ambiguous ternary expressions has ended
* Usage of the body keyword has been deprecated
* Deprecate a case of using fully-qualified names to bypass imports
* Explicit package visibility attribute is now always applied to
new scopes
* pragma(mangle) can now be applied to aggregates
* Complex and imaginary types are now deprecated
* while (auto n = expression) is now supported
* Library changes
* Centering formatted output.
* AllImplicitConversionTargets replaces ImplicitConversionTargets
* Formatting integers with %e, %f, %g and %a is now possible.
* Implementation of pow(f, -2) and f ^^ -2 changed
* Deprecate std.format : enforceValidFormatSpec
* Deprecate std.format : formatElement
* Deprecate std.format : unformatElement
* FieldnameTuple now returns an empty tuple for interfaces
* Fields (formerly FieldTypeTuple) now returns an empty
tuple for interfaces
* Floating point numbers can be formatted at compile time
* Formatting floating point numbers don't allocate with the
GC anymore.
* Some reals will be downcast to double when used with
std.format.
* std.typecons.Nullable: Remove deprecated alias get this.
* Documentation of std.format has been completely reworked.
* Module std.format has been split into smaller modules
* Module std.math has been split into smaller modules
* splitWhen added to std.algorithm.iteration
* The old benchmarking functionality in std.datetime has been
removed.
* std.exception.enforceEx has been removed.
* New module: std.sumtype
* std.range.Transposed: Remove deprecated member save
* Dub changes
* Added support for low memory compilation option to the dub
settings file.
-------------------------------------------------------------------
Mon May 17 14:32:19 UTC 2021 - Ferdinand Thiessen <rpm@fthiessen.de>
- Update to version 2.096.1
* Runtime changes:
* Variables suspendSignalNumber and resumeSignalNumber are now
private
* The druntime option callStructDtorsDuringGC has been removed
* Experimental llvm-libunwind based backtrace printing was added
* Library changes
* Return the number of characters consumed by std.conv.parse
* Deprecate std.stdio.getdelim and std.stdio.getline
* Add integer conversions in JSONValue.get
* Deprecate std.math : approxEqual
* Compiler changes
* Deprecate bypassing of symbol visibility when doing overload
resolution
* Deprecation triggered inside of templates now show instantiation
trace
* Improvements for the C++ header generation
* Diagnostics for conflicting function definitions within a module
* extern(Pascal) has been removed
* The compiler now accepts -extern-std=c++20
* C++ compability standard now c++11 by default
* Add -preview=inclusiveincontracts: in contracts must be an
explicit superset of the parent in contracts.
* Add support for Objective-C protocols
* Allow any compile-time argument in pragma(inline)
* Add __traits(getCppNamespaces, symbol) to retrieve the C++
namespaces a symbol resides in.
* DMD Compiler regressions / bugs:
* printf check does not recognize GNU extensions
* Function alias reported as conflicting function
* Slice assignment segmentation fault
* ssignment inside assert accepted if -checkaction=context
is given
* Struct dtor is called twice if struct is created inside
ternary operator
* Mangling problem wrt. backrefs and function types
* build.d install fails, can't find dmd.conf
* Constructor flow analysis doesn't understand unions
* Confusing error message for CTFE pointer in static initializer
* checkaction=context creates temporary of type void
* Overload selection ignores slice
* -preview=rvaluerefparam does not work with template deduction
* CTFE doesn't call base class destructor for extern(D) classes
* Wrong ParameterStorageClass when -preview=in is used
* Phobos enhancements / regression fixes:
* std.process.browse does not work with URLs 256 characters
or longer
* std.regex performance regression (additional GC allocation)
* Specifying null as bitfields variable name now fails
* avoid quadratic template expansion in constraints of multiple
search term versions of std.algorithm.searching.startsWith & endsWith
* casting std.BigInts to built-in floating point types
doesn't work without -preview=dip1000
* std.algorithm.mutation.copy fails on overlapping arrays if
the source array's pointer is less than the destination
array's pointer
* std.experimental.checkedint opBinaryRight with integer
left-hand side does not compile for any operators
* std.typecons.ReplaceType does not work for in parameters
* Deprecated Nullable.get warning with Appenders
* Druntime bugs / regression fixes:
* std.conv.emplace not usable in betterC - 2.096
* casWeak is not implemented
* joining a detached thread results in segfault.
* core.atomic.atomicFetchSub for pointers incorrectly calls
wrong function from core.internal.atomic
-------------------------------------------------------------------
Sun Dec 27 21:29:54 UTC 2020 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.094.2
- Runtime changes:
* Support time64 changes for CRuntime_Musl
- DMD Compiler regressions:
* Delegate covariance broken between 2.092 and 2.094 (git master).
* False deprecation raised for templated overloaded struct method
- DMD Compiler bugs:
* Calling __traits(getUnitTests) on a template causes compiler segfault
* __traits(getUnitTests) should include unittests from anonymous mixins
* 'With()' statement ignores symbol visibility in some cases.
* Name clash between import and method triggers a segfault
- Phobos bugs:
* Segfault with Appender!string.init.toString()
* join can iterates ranges multiple times
* std.random.uniform!T(urng) when T is dchar disregards urng and always uses a thread-local random
* std.random.uniform!T() and std.random.uniform!T(urng) when T is dchar with any qualifiers can exceed dchar.max
- Druntime bugs:
* core.stdcpp.string.basic_string does not implement opEquals
* core.stdcpp.vector.vector does not implement opEquals
* TypeInfo.swap must not allow reachable memory to be freed if interrupted by a garbage collection pass
- refresh dmd_use_tarball_bootstrap.diff patch
-------------------------------------------------------------------
Wed Aug 14 13:12:57 UTC 2019 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.087.1
- Runtime changes:
* Add all missing symbols to core.sys.darwin.mach.loader
- DMD Compiler regressions:
* ICE when taking address of member function passed as template parameter
* [REG] modification of member of a manifest constant that's also a struct is allowed
* POSIX: extern(C++, namespace) does not apply namespace to enum
* DMD Segfault in 2.087
* compiler segfaults on passing templates expression to lazy val
* [REG2.086] foreach no longer works on range with alias front
- DMD Compiler bugs:
* Templates inside templates used as mixins
* DMD segfault with circular template constraints
* [ICE] Internal error: ddmd/backend/cgcs.c 352 - CTFE appending to an array on a struct from a template
* Unable to remove a tuple from associative array.
* Can't use __traits(getAttributes, ...)[...] as a type
* access violation at compile time, possibly via template constraint and alias interaction
* Symbol not found: _dyld_enumerate_tlv_storage on macOS 10.15
* alias this combined with a copy constructor seems to lead to undefined behaviour.
* [ICE] Segmentation fault in ExpressionPrettyPrintVisitor::visit(IntegerExp*) at dmd/hdrgen.d:1775
* ICE from double template instantiation with getMember of overload of class and template function
* __vector CTFE crashes the compiler
* Compiler crash when using an opaque struct as template parameter
* bogus error: "integer constant expression expected instead of (uint).sizeof"
* [Windows] Program segfaults when running tests
* ICE in func literal used in __traits(compiles)
* SIMD 32 bytes causes obscure segfault
* [2.087.0] Mixin templates: no property somevar for type some.Type, did you mean some.Type.__anonymous.somevar
- DMD Compiler enhancements:
* Empty AliasSeq can't be used to form compiletime array literal
- Phobos bugs:
* std.variant.VariantN does not work with a class that inherits from a template instantiation
* ReplaceType replaces type with the type forwarding using alias this
* ReplaceType fails to compile for self-referential inheritance chains
* someAllocator.make!T doesn't compile if T is a shared value type
* [2.087.0] std.conv.toImpl matches two functions when using static arrays as inout( T )
- Phobos enhancements:
* RefCounted fails to instantiate due to pureness of moveEmplace
* Tuple.rename doesn't work with const
- Druntime bugs:
* retrying while pthread_cond_signal/pthread_cond_broadcast return EAGAIN
* object.destroy doesn't propagate attributes
- Add missing provides/obsoletes to the versioned phobos shared library package.
-------------------------------------------------------------------
Sat Apr 13 10:01:13 UTC 2019 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.085.1
- DMD Compiler regressions:
* DMD generates wrong code for some circular dependencies
* D compiler fails to resolve circular module dependency when modules are compiled separately
* D compiler fails to resolve circular module dependency when modules are compiled together
* ICE on null default value for struct parameter in constructor
* DMD 2.085 changes to gsroa make DCD crashing
* Regression: wrong order of linker arguments, again: -L-l before -L--start-group
* if (auto x) {} isn't properly rejected
* DMD fails to compile some circular dependencies spiced with is (T == super) condition
* [Reg v2.070.2] DMD fails with some circular module refs with Template/Mixin instances
- DMD Compiler bugs:
* wrong codegen for destructor call of unnamed struct instance on 64 bit environments
* case of undetected circular reference in function parameter
* ICE with multiple mixin templates containing conflicting ctor declarations
* Segfault when types are used in array literals
* DMD crash due to circular reference in function return type
* -checkaction=context not working with attributes
* [2.085.0-beta.2] Obj-C wrong code overloading selectors and extern(D)
* case of segfault due to undetected forward reference
* Compiler crash
* crash on invalid initializer at CTFE
* ICE on invalid code
- Phobos regressions:
* VariantN has unittests that are compiled into user modules
- Phobos bugs:
* std.algorithm.searching.findAmong doesn't save like it should
- Druntime bugs:
* wrong time values in GC.profileStats
-------------------------------------------------------------------
Sun Mar 17 15:50:10 UTC 2019 - Matthias Eliasson <elimat@opensuse.org>
- Update to version 2.085.0
- Compiler changes:
* Add support for Objective-C classes
* Add support for Objective-C instance variable
* Add support for Objective-C super calls
* Deprecate Objective-C interfaces
* Context-aware assertion error messages
* Avoid calling the struct constructor from const-casts
* dmd now supports expressive diagnostic error messages with -verrors=context
* memcmp() compares are no longer performed for struct equality tests, memberwise comparisons are done instead, per the spec
* OSX 32-bit is no longer supported
* -preview and -revert command line switches have been introduced
* Transition to C++11 character types
- Runtime changes:
* Added GC.profileStats() to core.memory
* Added core.stdcpp.new_
* Added core.sys.linux.sched.CPU_COUNT.
* Added core.sys.linux.sched.CPU_ISSET.
* Moved std.conv.emplace, std.algorithm.mutation.move, std.algorithm.mutation.moveEmplace, and std.functional.forward to core/lifetime.d
* GC cleanup can now be configured as a DRT GC option
* A garbage collector with precise heap scanning can now be selected
* GC.realloc is now more consistent and robust
* User supplied garbage collectors can now be linked with the runtime
* Added core.stdcpp.allocator
* char/wchar fields in most D runtime (core.* and rt.*) structs are now zero-initialized
-------------------------------------------------------------------
Sat Feb 16 19:19:18 UTC 2019 - Matthias Eliasson <matthias.eliasson@gmail.com>
- Update to version 2.084.1
- Compiler bugs
* -check=in=off doesn't work
* corrupt ELF library when using pragma(crt_constructor)
- Compiler enhancements
* Shared object "libstdc++.so.6" not found, required by "dmd"
----- --------------------------------------------------------------
Sat Jan 5 18:56:40 UTC 2019 - Matthias Eliasson <matthias.eliasson@gmail.com>
- Update to version 2.084.0
- Compiler changes
* Aliases can be created directly from a __trait.
* Added -check switch to turn on and off each category of runtime checks.
* Add -checkaction=D|C|halt compiler switch.
* -color and -color=on will now always output colorized console output
* The code generated by mixin statements can now be saved with -mixin
* Deprecate invalid binary literals
* Deprecated extern(Pascal) linkage
* The deprecation phase for fully qualified names that bypassed private imports is finished
* Templates are now mangled correctly on POSIX
* Added __c_wchar_t as a correct mangling type for C's wchar_t
- Runtime changes
* Added core.stdcpp.array.
* Add D header file core.sys.darwin.crt_externs for libc/crt_externs.h on Darwin.
* Added initialize template argument to object.destroy().
* Added core.stdcpp.string_view.
- Library changes
* Add overload std.random.unpredictableSeed!UIntType
-------------------------------------------------------------------
Wed Dec 5 21:38:53 UTC 2018 - Matthias Eliasson <matthias.eliasson@gmail.com>
- Update to version 2.083.0
- Compiler changes
* Add CppRuntime_* version identifiers
* Deprecated CLI switch -gc have been removed
* Expose __traits(isZeroInit, T)
* Implement new C++ mangling syntax
* Add pragma(linkerDirective), to emit linker directives into object files
* fix Issue 14246 - RAII - proper destruction of partially constructed objects
* Add __traits(getTargetInfo, "key") to query details about the compilation target
- Library changes
* std.algorithm.iteration.each is now capable of early-stopping
* toHash function has been added to std.experimental.checkedint.Checked
-------------------------------------------------------------------
Sun Oct 14 14:14:28 UTC 2018 - Matthias Eliasson <matthias.eliasson@gmail.com>
- Update to 2.082.1
- DMD Compiler regressions
* Could not CTFE with std.math.exp from 2.082.0
* [REG 2.081] Can no longer override pragma(lib) with -L switch
* Some source files names are no longer accepted
- Phobos regressions
* Templated format with variable width allocates 2GB of RAM per call.
- Phobos bugs
* std.net.curl.post cannot be used with !ubyte
* std.algorithm.subsitute wrong results for single subrange substitution
-------------------------------------------------------------------
Sun Sep 9 14:42:27 UTC 2018 - Matthias Eliasson <matthias.eliasson@gmail.com>
- Update to 2.082.0
- Compiler changes
* Support for comparing arrays of unsigned byte-sized types and structs has been added to -betterC
* Added D_ModuleInfo, D_Exceptions, and D_TypeInfo version identifiers
* Deprecate conditional expression followed by an assign expression
* Unsafe code can now be used in debug blocks
* Deprecate usage of opDot
* D now supports deprecated, @disable and user-defined attributes on enum members
* Deprecated C-style array declarations will now result in a compilation error
* Mangling of extern(C++) template on Windows now correctly mangles const non-pointer template parameters.
* .offsetof and .tupleof for fields of Objective-C classes have now been disabled
* 64-bit OS X: Revert C++ mangling of long to pre-2.079 to restore size_t interop
* UDAs on function parameters are now supported
- Runtime changes
* Exception trapping can now be disabled via --DRT-trapExceptions=0
* Additional functions for associative arrays
* TypeInfo.getHash now uses core.internal.hash.hashOf functions for hash computing
* core.sys.posix.utsname.update renamed to version_
- Library changes
* Single- and double-precision implementations for (a)tan and exp function families
* std.algorithm.iteration.each is now capable of early-stopping
* std.algorithm.iteration.joiner can now be used for bidirectional ranges
* std.algorithm.searching.skipOver can now handle variadic arguments
* Added staticArray to construct a static array from array / input range. Includes a length-inferring compile-time variant.
* Deprecated functions for getting the timezone have been removed.
-------------------------------------------------------------------
Sat Aug 18 21:58:23 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.081.2
- DMD Compiler regressions
* [REG 2.080] SIGSEGV in el_ptr (s=0x15) at dmd/backend/el.c:1760
* dmd 2.081 crashed by getVirtualFunctions for a interface extended interface
- DMD Compiler bugs
* Associative array opIn with static array key fails with dynamic array
- Phobos bugs
* Cannot inline "...Slides.numberOfFullFrames", "...Slides.gap"
- Druntime bugs
* __delete doesn't work with immutable
- Changes in 2.081.1
- DMD Compiler regressions
* [REG2.081] getOverloads traits returns empty tuples for void functions
* [REG 2.080.1] Error: const(Object) is used as a type with structs that have symbol named Object
-------------------------------------------------------------------
Sat Jul 7 11:29:06 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.081.0
- Compiler changes
* Deprecate allowing a constructor declaration in a static block
* Deprecate usage of this and super as types
* Implement DIP 1009 - Add Expression-Based Contract Syntax
* extern (C++) construction, destruction, operators and other mangling improvements
* Support for iterating template overloads
* __traits(getLinkage, ...) now works on structs, classes, and interfaces.
* Implicit catch statements will now result in an error
* Implicit comparison of different enums will now result in an error
* Implicit string concatenation will now result in an error
* IRETQ is now supported in inline assembler.
* Interfaces and classes can be used without the runtime if only static fields are utilized
* Specifying redundant storage classes will now result in a compiler error
- Runtime changes
* Filenames and line numbers have been added to stacktraces on macOS
* object.destroy() supports extern(C++) classes.
* Add missing declarations to core.sys.darwin.mach.getsect
- Library changes
* The deprecated std.c package has been removed.
* The performance of std.algorithm.iteration.joiner has been improved
* std.algorithm.mutation.remove now only accepts integral values or pair of integral values as offset
* Changed semantics of std.math.{fmin,fmax} wrt. NaNs.
- Use same auto_bootstrap define for all builds.
-------------------------------------------------------------------
Fri Jun 8 18:58:38 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.080.1
- DMD Compiler regressions
* [REG 2.073] object initializer omitted when it should be included.
* [REG2.078-b1] case where && is not shortcut anymore in CTFE
* DMD segfault when doing unsafe operation outside of any function
- DMD Compiler bugs
* static foreach segfaults on __traits(allMembers)
* Access violation when generating JSON on static foreach
* DMD compilation crash
* -lib crashes on static libraries in the command line
- Phobos regressions
* [REG 2.080.0] Compiling byGrapheme Fails
* DMD "illegal hardware instruction" crash
* getSymbolsByUDA fails on AliasSeq members
- Druntime bugs
* core.internal.string has issues with radix
-------------------------------------------------------------------
Mon May 7 21:57:22 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.080.0
See the full changelog here:
https://dlang.org/changelog/2.080.0.html
- Refresh dmd_use_tarball_bootstrap.diff
-------------------------------------------------------------------
Mon Apr 16 19:59:33 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.079.1
- DMD Compiler regressions
* [REG 2.073] [DIP1000] Error on bad interplay of 'auto ref' and 'return' attribute deduction.
* DMD segmentation fault
- DMD Compiler bugs
* Enums are evaluated differently in global scope
* compiler segfault if new on a union type with dip1000
- DMD Compiler enhancements
* Use of delete should be allowed without a deprecation in a deprecated scope
- Phobos regressions
* std.regex Captures opAssign returns void since v2.079.0
* getSymbolsByUDA produces wrong result if one of the symbols having the UDA is a function
* assigning a std.regex.Captures with 3 or more groups causes double free
- Phobos bugs
* [2.079] std.format ignores templated toString if another toString is not a template
- Phobos enhancements
* Document the type of std.stdio.stdin and friends
- Druntime regressions
* [Reg 2.079] src/rt/tracegc.d(43): Deprecation: The delete keyword has been deprecated
-------------------------------------------------------------------
Tue Apr 10 18:44:15 UTC 2018 - matthias.eliasson@gmail.com
- Enable auto_bootstrap for Tumbleweed to get successful builds
- Run spec-cleaner
-------------------------------------------------------------------
Fri Mar 30 11:45:28 UTC 2018 - guillaume.gardet@opensuse.org
- Build only for %ix86 and x86_64 since other arch cannot be boostrapped
-------------------------------------------------------------------
Mon Mar 5 21:07:47 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.079.0
* Full changelog: https://dlang.org/changelog/2.079.0.html
- spec-cleaner was run
- use %config(noreplace) for dmd.conf
Make sure we don't replace if users modify this config.
-------------------------------------------------------------------
Thu Mar 1 22:10:30 UTC 2018 - matthias.eliasson@gmail.com
- Enable auto_bootrap for Leap 15.0
- Add !buildignore gcc-PIE for i586 arch since it will not compile on i586 with PIE enabled
-------------------------------------------------------------------
Sun Feb 18 19:26:49 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.078.3
- DMD Compiler regressions
* [REG2.078.2] Access violation when dmd tries to print highlighted code
- DMD Compiler bugs
* Switch skips over declaration issued for explicitly uninitialized variables
-------------------------------------------------------------------
Sun Feb 11 15:03:55 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.078.2
- DMD Compiler regressions
* [REG 2.078] dmd can't generate 64-bit binaries on Windows 10 with VS 2015
* [Reg 2.078] Building fails with VC 2015 Build Tools
- DMD Compiler bugs
* wrong code for int.min > 0
- Druntime regressions
* [Reg 2.078] comparison of arrays of associative arrays no longer compiles
-------------------------------------------------------------------
Wed Jan 24 20:19:25 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.078.1
- DMD Compiler regressions
* [REG2.060] DMD hang in semantic3 on alias this
- DMD Compiler bugs
* undefined reference to __coverage
* unittests get different names depending on how the files are passed to dmd
* building with -m64 doesn't work with sc.ini from the zip distribution and VS2017
- Phobos bugs
* std.array.replace throws a range violation if the from range is longer than the array
* Generic functions in std.math cannot be overloaded
- Druntime regressions
* module config is in file 'rt/config.d' which cannot be read
-------------------------------------------------------------------
Sat Jan 13 22:45:17 UTC 2018 - matthias.eliasson@gmail.com
- Update to 2.078.0
- Update auto_bootstrap version to 2.078.0
- Remove bootrap option for ldc since we have working bootstraping with dmd
- Did some more clean-up in spec of build flags that was wrong and redundant
- Update default dmd.conf with more accurate includes
-------------------------------------------------------------------
Mon Jan 1 22:24:59 UTC 2018 - matthias.eliasson@gmail.com
- Enable PIC and set Model=32 for i586 builds
- Disable auto_bootstrap
-------------------------------------------------------------------
Tue Dec 12 21:39:28 UTC 2017 - matthias.eliasson@gmail.com
- Enable auto_bootstrap to make it build on i586.
-------------------------------------------------------------------
Sat Dec 9 22:57:27 UTC 2017 - matthias.eliasson@gmail.com
- Update to 2.077.1
* [REG2.068] compile-time string concatenation fails with CTFE and char[] literal involved
* compiler segfault in DsymbolSemanticVisitor::visit(UnittestDeclaration*)
* [REG 2.077.0] dmd 2.077.0 crashes when computing mangling symbol for simple program
* [Reg 2.077] don't build libphobos2.a with PIC for i386
* [Reg 2.075] Fibers guard page uses a lot more memory mappings
- Add "-fPIC" to DFLAGS in dmd.conf for 32bit so we can compile D programs for i586.
-------------------------------------------------------------------
Fri Nov 17 15:05:32 UTC 2017 - joop.boonen@opensuse.org
- Added missing LICENSE.txt to docs
- Improved the spec file
-------------------------------------------------------------------
Sun Nov 5 23:26:15 UTC 2017 - matthias.eliasson@gmail.com
- Update to 2.077.0
* Mangled Symbols now back reference types and identifiers
* Removed prelude assert for constructors & destructors
* DMD builds are now reproducible
* core.atomic.atomicLoad's returns types have changed for aggregate types that have indirections
* Vectorized array operations are now templated
- Build with AUTO_BOOTSTRAP disabled
- Run spec-cleaner
-------------------------------------------------------------------
Thu Oct 26 11:52:06 UTC 2017 - joop.boonen@opensuse.org
- Update to 2.076.1
* fix Issue 16997 - Integral promotion rules not being followed for unary + - ~ operators
* Mangled Symbols now back reference types and identifiers.
* Removed prelude assert for constructors & destructors
* DMD builds are now reproducible
- Build with AUTO_BOOTSTRAP
-------------------------------------------------------------------
Fri Jun 9 08:57:27 UTC 2017 - jengelh@inai.de
- Rework description
-------------------------------------------------------------------
Fri May 26 19:50:14 UTC 2017 - mailaender@opensuse.org
- Update to 2.073.2
- https://en.opensuse.org/SourceUrls
-------------------------------------------------------------------
Sat Mar 11 08:33:31 UTC 2017 - matthias.eliasson@gmail.com
- Update to 2.073.1
-------------------------------------------------------------------
Thu Apr 7 10:44:55 UTC 2016 - schuetzm@gmx.net
- Update to 2.071.0
Compiler Changes
- Import access checks for fully qualified names were fixed.
- Protection for selective and renamed imports were fixed.
Language Changes
- Imports no longer hide locals declared in outer scopes.
- Private symbols are no longer visible in other modules.
- Manifest constant can now be used for deprecation message.
Library Changes
- A clear method has been added to associative arrays to remove all elements.
- The GC now uses a spinlock instead of a recursive mutex.
- Calls to GC.free are now ignored during finalization instead of throwing an InvalidMemoryOperationError, see Bugzilla 15353.
- GC.addRoot and GC.addRange now use a separate lock.
- GCAllocator.goodAllocSize was added.
- High-level API of std.net.curl now uses Appender for received content. Which generally makes all calls slightly faster. Up to 200ms for large amounts of data.
- Repeat was added to obtain a repeating AliasSeq consisting of template arguments.
- fold was added as an alternative to reduce with argument order swapped.
- Added nextPow2 and truncPow2 to std.math.
- bsf, bsr, and popcnt now work with ulongs on 32 bit systems.
- topN is now 5% - 7% faster.
- Unary overloads of startsWith and endsWith were added.
- maxCount and maxPos were added.
- Range support for the convenience wrapper redBlackTree was added.
See the full changelog here:
http://dlang.org/changelog/2.071.0.html
-------------------------------------------------------------------
Fri Mar 4 13:36:02 UTC 2016 - schuetzm@gmx.net
- Update to 2.070.2
This is a bugfix release, please refer to the changelog for details:
http://dlang.org/changelog/2.070.2.html
-------------------------------------------------------------------
Sun Feb 28 12:59:37 UTC 2016 - schuetzm@gmx.net
- Update to 2.070.1
This is a bugfix release, see the changelog for details:
http://dlang.org/changelog/2.070.1.html
-------------------------------------------------------------------
Thu Jan 28 18:58:37 UTC 2016 - schuetzm@gmx.net
Update to 2.070.0
Language Changes
- Add syntactic support to make an alias to a function literal.
Library Changes
- The package std.experimental.ndslice was added. It is also available as part of the Mir library.
- The core.sys.windows package has been greatly expanded.
- TypeInfo.init has been renamed to TypeInfo.initializer.
- std.json encodes string control characters.
- Default LogLevel of FileLogger was changed to LogLevel.all.
- Access to the internal ptr and len fields of BitArray was deprecated.
See the full changelog here:
http://dlang.org/changelog/2.070.0.html
-------------------------------------------------------------------
Thu Dec 3 12:31:48 UTC 2015 - schuetzm@gmx.net
Update to 2.069.2
This is a bugfix release, see the changelog for details:
http://dlang.org/changelog/2.069.2.html
-------------------------------------------------------------------
Thu Nov 5 10:02:51 UTC 2015 - schuetzm@gmx.net
Update to 2.069
This is the first release with a self-hosted dmd compiler and comes
with even more rangified phobos functions,
std.experimental.allocator, and many other improvements.
See the changelog for more details.
http://dlang.org/changelog/2.069.0.html
-------------------------------------------------------------------
Thu Sep 24 11:09:55 UTC 2015 - schuetzm@gmx.net
- update 2.068.2
- This point release fixes a few regressions 2.068.1, see the
changelog for more details:
http://dlang.org/changelog/2.068.2.html
-------------------------------------------------------------------
Mon Sep 7 17:28:50 UTC 2015 - schuetzm@gmx.net
- update to 2.068.1
- Fixes bugs and regressions in 2.068.0
-------------------------------------------------------------------
Mon Aug 10 13:10:13 UTC 2015 - schuetzm@gmx.net
- update to 2.068.0
Notable changes:
- many rangified phobos functions
- 2 new GC profilers
- a new AA implementation
- countless further improvements and fixes
-------------------------------------------------------------------
Sun Jun 7 12:41:55 UTC 2015 - schuetzm@gmx.net
- update to 2.067.1
-------------------------------------------------------------------
Wed Mar 25 12:47:15 UTC 2015 - schuetzm@gmx.net
- update to 2.067.0
-------------------------------------------------------------------
Tue Nov 25 14:53:57 UTC 2014 - pastas4@gmail.com
- add a valid dmd.conf file (from upstream)
- recommend phobos-devel
-------------------------------------------------------------------
Sun Nov 16 09:49:39 UTC 2014 - mailaender@opensuse.org
- use https://en.opensuse.org/SourceUrls
- new project URL
- split libphobos as discussed in bos#905648
- add Artistic license
- deprecate dmd-fix-build.patch
- deprecate dmd-rpmlintrc
-------------------------------------------------------------------
Sun Nov 16 07:45:00 UTC 2014 - pastas4@gmail.com
- update to 2.066.1
-------------------------------------------------------------------
Sun Jun 30 15:15:43 UTC 2013 - seife+obs@b1-systems.com
- fix license tag, Boost -> BSL-1.0
-------------------------------------------------------------------
Sat May 19 20:34:56 UTC 2012 - opensuse@dstoecker.de
- add config file for include paths
- update to 2.059
-------------------------------------------------------------------
Fri Mar 23 01:47:21 UTC 2012 - jengelh@medozas.de
- Parallel build with %_smp_mflags; strip redundant sections/tags
- SPDX license field
-------------------------------------------------------------------
Thu May 19 13:28:37 UTC 2011 - prusnak@opensuse.org
- created package (version 2.053)