Walter Bright
001893d99c
size_t was wrong, sign extension omitted ( #21093 )
2025-03-27 16:20:38 +08:00
Walter Bright
653658faad
neglected to generate code for cdeq() ( #21090 )
2025-03-27 07:20:05 +08:00
Abul Hossain Khan
ce91ddca22
Optimize Loc Lookups ( #21088 )
2025-03-27 03:32:01 +08:00
Nick Treleaven
13b0745e33
Fix error when struct initializer isn't accepted ( #21086 )
...
* Fix error when struct initializer isn't accepted
* Rename StructDeclaration.hasRegularCtor parameter to ignoreDisabled
checkDisabled detected disabled ctors when it was false, which was
confusing!
* Update tests
2025-03-26 11:28:07 +01:00
Dennis
3142290b6f
Improve 'no property' error suggestions for pointers ( #21087 )
2025-03-26 15:43:36 +08:00
Samrendra Pratap Singh
c26b03fba2
Fix dlang#18262 - Fix expected error message for enum auto-increment ( #21067 )
...
* Fix dlang#18262 - Resolved special enum case and other conflicts
* Fix dlang#18262 - Resolved Special Enum case and failing test.
* Fix dlang#18262 - Resolved special enum case and other failing tests
2025-03-25 18:25:34 +08:00
Martin Kinkelin
b390c7ec13
[druntime] core.int128: Add 64-bit mul() overload and optimize via inline asm on x86_64
2025-03-25 16:12:24 +08:00
Walter Bright
6c160b78d5
fix cdpost()
2025-03-25 16:12:03 +08:00
Walter Bright
2c8d214650
AArch64 cannot compare shorts directly
2025-03-25 16:11:13 +08:00
Walter Bright
8c4a95f083
add has to be in addition to fixup
2025-03-24 16:27:16 +08:00
Martin Kinkelin
6b7bbdd330
[druntime] core.int128: Optimize new udivmod overload via inline asm on x86_64
2025-03-24 14:43:17 +08:00
Martin Kinkelin
3a661c1f8c
[druntime] core.int128: Extract nested udivmod128_64 as udivmod overload
2025-03-24 14:43:17 +08:00
Martin Kinkelin
ea4b1e9607
[druntime] core.int128: Don't support/test invalid shift-by values >= 128
...
This enables using (LLVM/gcc) intrinsics for shifts, for which such
inputs are undefined behavior, as for builtin types.
2025-03-24 14:43:17 +08:00
Walter Bright
f4da0efbd2
add target.isAArch64 to e2ir.d ( #21074 )
2025-03-24 14:42:27 +08:00
Walter Bright
63152e453c
AArch64 doesn't have LEA instruction, so use pointers instead of Effective Address ( #21072 )
2025-03-24 13:46:53 +08:00
Abhay Pratap
2036516c17
Refactored memcpy calls to D slices ( #21062 )
...
* Refactored memcpy calls to D slices
* Added .DS_Store to .gitignore
2025-03-24 07:12:13 +08:00
Nick Treleaven
e896b5c98d
Fix hidden base constructor supplemental message ( #21069 )
...
Fixes #21068 .
Also say base class *constructor* in supplemental message.
2025-03-24 05:47:29 +08:00
Walter Bright
c4d45a1a49
AArch64 does not have LEA, fake it ( #21064 )
2025-03-23 12:25:05 +08:00
Dennis
0ae065db22
Fix #20901 : can escape stack pointer through indexed array literal ( #21063 )
2025-03-23 08:35:43 +08:00
Dennis
53024b9fc5
Don't raise "cannot return non-void" on Terror ( #21028 )
2025-03-23 07:40:57 +08:00
Dennis
90e1a584b5
Refactor checkGC ( #21058 )
2025-03-23 06:08:04 +08:00
Dennis
7fb4d613af
Use errorSupplemental for long errors with 2 sentences ( #21060 )
2025-03-23 06:03:20 +08:00
Dennis
31bfe613b0
Require adjacent auto ref return as well ( #21061 )
2025-03-23 05:59:00 +08:00
Dennis
8a96c4745c
Fix #21054 - No location for array literal sliced from init symbol ( #21055 )
2025-03-22 16:26:49 +08:00
Walter Bright
14874cffd8
more common subexpression bugs ( #21056 )
2025-03-22 16:26:00 +08:00
Dennis
dce0ebac9b
Fix #21052 - Missing @nogc check for enum variable initialization ( #21053 )
2025-03-22 07:40:34 +08:00
Dennis
649223bff5
Remove redundant GC allocation for _d_newarraymTX.dims ( #21051 )
2025-03-22 06:36:00 +08:00
Walter Bright
8d7c4d6227
bug in cddivass() ( #21050 )
2025-03-21 14:15:57 -07:00
Dennis
d5db322fce
Merge stable ( #21048 )
...
* bump VERSION to v2.110.0
* purge changelog
* bump VERSION to v2.111.0-beta.1
* Accept __rvalue attribute on ref functions; which will force the result to be treated as __rvalue. (#20946 )
This is essential to implement `move`, `forward`, etc.
* memoryerror.d: Fix AnySupported version condition (#20983 )
* Fix #20982 - wrong line number in iasmgcc (#20993 )
* Move genCfunc to cxxfrontend (#20992 )
* druntime: Fix compilation of rt.cover on Android (#21015 )
* Expose SourceLoc to C++ interface (#20980 )
* [stable] C++ header fixes for declaration, expression, and typinf (#21016 )
Seen either from compilation errors or missing symbols at link time.
* C++ headers: Add 3 Declaration bitfield setters/getters required by LDC
* druntime: Add module declaration to rt.invariant, to prevent conflicts with user-provided invariant.d (#21017 )
* Fix #21020 - Indexing a *cast* AA yields no lvalue anymore (#21029 )
* Add C++23 to CppStdRevision enum (#21043 )
* Improve UFCS/property error message (#21046 )
---------
Co-authored-by: Manu Evans <turkeyman@gmail.com>
Co-authored-by: Martin Kinkelin <kinke@users.noreply.github.com>
Co-authored-by: Iain Buclaw <ibuclaw@gdcproject.org>
Co-authored-by: Martin Kinkelin <noone@nowhere.com>
2025-03-21 15:48:21 +01:00
Walter Bright
803a44a347
2 more detail bugs ( #21044 )
2025-03-21 16:49:42 +08:00
Abul Hossain Khan
dafb58bc77
Fix: Prevent ICE on final switch forward referencing its enum ( #21001 )
...
* Fix: Prevent ICE on final switch forward referencing its enum
* more simpler approach
* moved the enum member analysis
* Move enum number analysis to sementic2
* WhiteSpace Remove
* Remove Redundant Code in enumsem
2025-03-20 16:43:37 +01:00
Walter Bright
49a7c10bdf
arguments swapped for loadFromEA() ( #21040 )
2025-03-20 16:07:57 +08:00
Walter Bright
996de2ad3a
wrong register mask for cssave() ( #21037 )
2025-03-20 16:03:47 +08:00
Nayaab Zameer
cfefcdd657
Remove Unused RTLSYMs from DMD ( #21032 )
...
* Remove RTLSYM for Translation PR #15819 : Removed NEWARRAYMITX, NEWARRAYMITX, TRACENEWARRAYMTX and TRACENEWARRAYMITX
* Remove RTLSYM for Translation PR #15299 : Removed NEWARRAYT, NEWARRAYIT, TRACENEWARRAYT and TRACENEWARRAYIT
* Remove RTLSYM for Translation PR #14837 : Removed NEWCLASS, TRACENEWCLASS
* Remove RTLSYM for Translation PR #14664 : Removed NEWITEMT, NEWITEMIT, TRACENEWITEMT and TRACENEWITEMIT
* Remove RTLSYM for Translation PR #14550 : Removed ARRAYCATNTX, ARRAYCATT, TRACEARRAYCATNTX and TRACEARRAYCATT
* Remove RTLSYM for Translation PR #14382 : Removed ARRAYSETASSIGN
* Remove RTLSYM for Translation PR #14310 : Removed ARRAYASSIGN
* Remove RTLSYM for Translation PR #13495 : Removed ARRAYAPPENDT, ARRAYAPPENDCTX, TRACEARRAYAPPENDT and TRACEARRAYAPPENDCTX
2025-03-19 14:03:09 +08:00
Dennis
62a48a55e3
Move ImportC enum semantic to importc.d ( #21027 )
...
Co-authored-by: Dennis Korpel <dennis@sarc.nl>
2025-03-18 21:54:40 +08:00
Shivang Shukla
a7e2b2e17b
Refactor: Remove Unused Hooks in dinterpret.d ( #21022 )
...
- Removed references to _d_arrayappendcTX, _d_newThrowable, and _d_arrayappendT.
- Ensured test cases pass after deletion.
- Left _d_arrayctor and _d_arraysetctor untouched for future semantic phase changes.
2025-03-18 16:39:32 +08:00
Walter Bright
5caf886afb
flags not set by complement instruction ( #21026 )
2025-03-18 16:06:37 +08:00
Abul Hossain Khan
8663b6dcdc
Fix : Improved error message on override mismatch ( #21023 )
2025-03-18 08:28:57 +08:00
Walter Bright
49198f2983
overlooked necessary sign extension ( #21021 )
2025-03-18 07:15:32 +08:00
Nayaab Zameer
a4cbc08f5b
Remove unused RTLSYM.NEWARRAYMTX ( #21011 )
2025-03-17 17:04:02 +08:00
Walter Bright
0312e82726
it is IFL1 not IFL2 ( #21010 )
2025-03-16 23:43:33 -07:00
Paul Backus
7c95446800
Don't parse lambda as UDA without parentheses ( #21009 )
...
This brings the compiler's behavior in line with the language spec.
Fixes dlang/dlang.org#4137
2025-03-17 08:31:39 +08:00
Walter Bright
726c50e5bd
load sign extended bytes ( #21004 )
...
* carith() function in exe1.c tests
* load sign extended bytes
2025-03-16 09:33:19 -07:00
Abul Hossain Khan
cf2674f689
Fix #20075 - Improve error message for immutable constructor type mismatch ( #20990 )
2025-03-16 08:00:27 +08:00
Dennis
92f9f997ba
Improve Fix #20318 Compiler should explain why implicit conversion to mutable fails ( #21003 )
2025-03-16 07:57:51 +08:00
Walter Bright
7d3293c45d
carith and more branch logic ( #21002 )
...
* carith() function in exe1.c tests
* more branch logic
2025-03-15 15:33:30 -07:00
Walter Bright
142d509af2
get branches to block working ( #20996 )
...
* carith() function in exe1.c tests
* get branches to blocks working
2025-03-15 16:27:52 +08:00
Dennis
2408ac30e9
Reset global Loc table in initDMD ( #20995 )
2025-03-15 16:23:37 +08:00
Abul Hossain Khan
6476cebd44
Fix #20318 Compiler should explain why implicit conversion to mutable fails ( #20984 )
2025-03-14 19:09:40 +08:00
Walter Bright
49dc576b9d
more common subexpression implementation ( #20988 )
2025-03-14 15:15:48 +08:00