Thread overview
[Issue 21938] importC: Support __attribute__ specifiers that could be mapped to D attributes
May 20, 2021
Iain Buclaw
May 24, 2021
Iain Buclaw
Feb 10, 2022
Walter Bright
Dec 17, 2022
Iain Buclaw
Apr 09, 2023
Walter Bright
Apr 27, 2023
Walter Bright
Dec 15, 2023
Walter Bright
May 20, 2021
https://issues.dlang.org/show_bug.cgi?id=21938

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ibuclaw@gdcproject.org

--- Comment #1 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(In reply to Iain Buclaw from comment #0)
> To name a few potential __attribute__ candidates.
>
Of course, forgetting an obvious one:

- deprecated

--
May 24, 2021
https://issues.dlang.org/show_bug.cgi?id=21938

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |ImportC

--
February 10, 2022
https://issues.dlang.org/show_bug.cgi?id=21938

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |bugzilla@digitalmars.com

--- Comment #2 from Walter Bright <bugzilla@digitalmars.com> ---
- aligned
- aligned (alignment)

Now there are 3 ways to align in gcc:

#pragma pack
_Alignas
__attribute___

--
December 17, 2022
https://issues.dlang.org/show_bug.cgi?id=21938

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P3

--
April 09, 2023
https://issues.dlang.org/show_bug.cgi?id=21938

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
Some of them:

https://github.com/dlang/dmd/pull/15048

https://github.com/dlang/dmd/pull/15047

--
April 27, 2023
https://issues.dlang.org/show_bug.cgi?id=21938

--- Comment #4 from Walter Bright <bugzilla@digitalmars.com> ---
For always_inline:

https://github.com/dlang/dmd/pull/15134

--
December 15, 2023
https://issues.dlang.org/show_bug.cgi?id=21938

Walter Bright <bugzilla@digitalmars.com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |RESOLVED
         Resolution|---                         |FIXED

--- Comment #5 from Walter Bright <bugzilla@digitalmars.com> ---
Currently doing all but `access`. The access modes are read_only, read_write, write_only, or none.

https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html

None of those access modes are supported in detail by D semantics, the best we can do without adding more D semantics is to simply ignore them, which is done today.

I.e. there isn't much value in implementing `access`. I'm going to write the rest as "FIXED" and `access` as WONTFIX.

--