[Issue 23105] `__trait(getMember)` and `mixin()` of the same code as a string behave differently
    d-bugmail at puremagic.com 
    d-bugmail at puremagic.com
       
    Fri May 13 06:49:31 UTC 2022
    
    
  
https://issues.dlang.org/show_bug.cgi?id=23105
Dlang Bot <dlang-bot at dlang.rocks> changed:
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED
--- Comment #4 from Dlang Bot <dlang-bot at dlang.rocks> ---
dlang/dmd pull request #14119 "Fix Issue 23105 - `__trait(getMember)` and
`mixin()` of the same code as a string behave differently" was merged into
master:
- acee742790929cf7fb3ea9817254708baa06f3e1 by Boris Carvajal:
  Fix Issue 23105 - `__trait(getMember)` and `mixin()` of the same code as a
string behave differently
  The fix is to remove the `SCOPE.alias_` dependency when resolving
  TypeTraits on certain conditions, it's not necessary, the trait
  resolves to type or symbol naturally.
  Changes:
  - Remove `SCOPE.alias_` as it is no longer used.
  - Remove a huge `if` with an early error from `TypeTraits` typeSemantic.
  - Cache not only symbols but also types in TypeTraits
  (TypeTraits.sym -> TypeTraits.obj).
  - Move `TypeTraits.typeSemantic` logic to `TypeTraits.resolve` since
  `typeSemantic` should only care about giving a type and `resolve`
  about maybe something else (like TypeMixin logic).
https://github.com/dlang/dmd/pull/14119
--
    
    
More information about the Digitalmars-d-bugs
mailing list