Revisions of dmd

buildservice-autocommit accepted request 1172125 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 104)
baserev update by copy to link target
Andrea Manzini's avatar Andrea Manzini (amanzini) accepted request 1172094 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 103)
- 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
buildservice-autocommit accepted request 1164233 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 102)
baserev update by copy to link target
Andrea Manzini's avatar Andrea Manzini (amanzini) accepted request 1164168 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 101)
- 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
buildservice-autocommit accepted request 1158518 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 100)
baserev update by copy to link target
Andrea Manzini's avatar Andrea Manzini (amanzini) accepted request 1158517 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 99)
- Added rdmd run/build tool ( https://dlang.org/rdmd.html )
buildservice-autocommit accepted request 1157302 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 98)
baserev update by copy to link target
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1157298 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 97)
- 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
buildservice-autocommit accepted request 1123116 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 96)
baserev update by copy to link target
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1123006 from Andrea Manzini's avatar Andrea Manzini (amanzini) (revision 95)
- 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
buildservice-autocommit accepted request 1099791 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 94)
baserev update by copy to link target
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1099790 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 93)
- 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
buildservice-autocommit accepted request 1079964 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 92)
baserev update by copy to link target
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1079803 from Bjørn Lie's avatar Bjørn Lie (iznogood) (revision 91)
New upstream release, fixes build in factory
buildservice-autocommit accepted request 1042977 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 90)
baserev update by copy to link target
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1042369 from Fabian Vogt's avatar Fabian Vogt (favogt) (revision 88)
RFC. I submitted this two weeks ago as https://build.opensuse.org/request/show/1039301, but there was no response.

- Bootstrap using gdmd instead of prebuilt binaries
- 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
- 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 typedef’d type is parsed incorrectly
    * ImportC: Lots of errors when compiling tomlc99
    * ImportC: address of member of struct can’t 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.
- 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.
- 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
- 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
- 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.
- 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
- 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
- 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"
-----  --------------------------------------------------------------
- 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
- 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
- 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
- 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.
- 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
- 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.
- 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
- Update to 2.080.0
  See the full changelog here:
  https://dlang.org/changelog/2.080.0.html
- Refresh dmd_use_tarball_bootstrap.diff
- 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
- Enable auto_bootstrap for Tumbleweed to get successful builds
- Run spec-cleaner
- Build only for %ix86 and x86_64 since other arch cannot be boostrapped
- 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.
- Enable auto_bootrap for Leap 15.0
- Add !buildignore gcc-PIE for i586 arch since it will not compile on i586 with PIE enabled
- 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
- 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
    
- 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
- 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
- Enable PIC and set Model=32 for i586 builds
- Disable auto_bootstrap
- Enable auto_bootstrap to make it build on i586. 
- 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. 
- Added missing LICENSE.txt to docs
- Improved the spec file
- 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
- 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
- Rework description
- Update to 2.073.2
- https://en.opensuse.org/SourceUrls
- Update to 2.073.1
- 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
- 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
- Update to 2.070.1
This is a bugfix release, see the changelog for details:
http://dlang.org/changelog/2.070.1.html
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
Update to 2.069.2
This is a bugfix release, see the changelog for details:
http://dlang.org/changelog/2.069.2.html
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
- 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
- update to 2.068.1
- Fixes bugs and regressions in 2.068.0
- update to 2.068.0
Notable changes:
- many rangified phobos functions
- 2 new GC profilers
- a new AA implementation
- countless further improvements and fixes
- update to 2.067.1
- update to 2.067.0
- add a valid dmd.conf file (from upstream)
- recommend phobos-devel
- 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
- update to 2.066.1
- fix license tag, Boost -> BSL-1.0
- add config file for include paths
- update to 2.059
- Parallel build with %_smp_mflags; strip redundant sections/tags
- SPDX license field
- created package (version 2.053)
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 1041658 from Josten's avatar Josten (HenkKalkwater) (revision 87)
- Build using the build.d script, as opposed to the deprecated 
  posix.mak
- Remove dmd_use_tarball_boostrap.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
Matthias Eliasson's avatar Matthias Eliasson (elimat) accepted request 942798 from Josten's avatar Josten (HenkKalkwater) (revision 86)
Upgrade DMD 2.097.0 -> 2.098.1

I haven't used OBS much before, so I'm sorry for the useless commits (I couldn't find a way to amend them) and perhaps other mistakes that I made.
buildservice-autocommit accepted request 898473 from Matthias Eliasson's avatar Matthias Eliasson (elimat) (revision 85)
baserev update by copy to link target
Displaying revisions 1 - 20 of 104
openSUSE Build Service is sponsored by