Thread overview
[Issue 23701] ImportC: __int64 is not documented as supported Visual C extension
[Issue 23701] compilable/test23214.c:3:26: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘uintptr_t’
Feb 12, 2023
Iain Buclaw
Feb 20, 2023
Walter Bright
Feb 20, 2023
Iain Buclaw
Feb 20, 2023
Iain Buclaw
Feb 21, 2023
Walter Bright
Feb 21, 2023
Iain Buclaw
Feb 27, 2023
Iain Buclaw
Jun 01, 2023
Walter Bright
February 12, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|                            |accepts-invalid, ImportC
           See Also|                            |https://issues.dlang.org/sh
                   |                            |ow_bug.cgi?id=23689
         Depends on|                            |23689


Referenced Issues:

https://issues.dlang.org/show_bug.cgi?id=23689
[Issue 23689] ImportC: C tests in the testsuite are not valid C
--
February 20, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

Walter Bright <bugzilla@digitalmars.com> changed:

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

--- Comment #1 from Walter Bright <bugzilla@digitalmars.com> ---
__int64 is a Microsoft C extension.

--
February 20, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

Iain Buclaw <ibuclaw@gdcproject.org> changed:

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

--- Comment #2 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(In reply to Walter Bright from comment #1)
> __int64 is a Microsoft C extension.
Which needs documenting then https://dlang.org/spec/importc.html#visualc-extensions

--
February 20, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|dmd                         |dlang.org
            Summary|compilable/test23214.c:3:26 |ImportC: __int64 is not
                   |: error: expected ‘=’, ‘,’, |documented as supported
                   |‘;’, ‘asm’ or               |Visual C extension
                   |‘__attribute__’ before      |
                   |‘uintptr_t’                 |

--
February 21, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

--- Comment #3 from Walter Bright <bugzilla@digitalmars.com> ---
I take that back. importc.h has a #define for it:

    #define __int64 long long

--
February 21, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

--- Comment #4 from Iain Buclaw <ibuclaw@gdcproject.org> ---
(In reply to Walter Bright from comment #3)
> I take that back. importc.h has a #define for it:
> 
>     #define __int64 long long
Should we be testing for things defined in `importc.h` then? :-)

At best, they should all be in a clearly named test file so that it's obvious we're not actually testing ImportC, but rather our druntime-defined header.

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

Iain Buclaw <ibuclaw@gdcproject.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P1                          |P2

--
June 01, 2023
https://issues.dlang.org/show_bug.cgi?id=23701

--- Comment #5 from Walter Bright <bugzilla@digitalmars.com> ---
(In reply to Iain Buclaw from comment #4)
> (In reply to Walter Bright from comment #3)
> > I take that back. importc.h has a #define for it:
> > 
> >     #define __int64 long long
> Should we be testing for things defined in `importc.h` then? :-)

We already do, but they are kinda sprinkled in among the .c and .i tests.

Not really sure if they should be documented with the compiler or not.

--
December 14
https://issues.dlang.org/show_bug.cgi?id=23701

Walter Bright <bugzilla@digitalmars.com> changed:

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

--- Comment #6 from Walter Bright <bugzilla@digitalmars.com> ---
I'm not sure we should document macros in importc.h in the specification for ImportC. Other compilers don't do it (leaving a lot of macros undocumented in the various .h system files), and it really isn't part of the compiler.

It's pretty obvious what they do in importc.h, anyway.

So I'm going to mark this WONTFIX for the time being.

--
December 15
https://issues.dlang.org/show_bug.cgi?id=23701
Issue 23701 depends on issue 23689, which changed state.

Issue 23689 Summary: ImportC: C tests in the testsuite are not valid C https://issues.dlang.org/show_bug.cgi?id=23689

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

--