Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c++ > #67855

Re: An example: code to list exports of a Windows DLL.

From Keith Thompson <kst-u@mib.org>
Newsgroups comp.lang.c++
Subject Re: An example: code to list exports of a Windows DLL.
Date 2019-08-21 12:41 -0700
Organization None to speak of
Message-ID <lnsgpu1f2x.fsf@kst-u.example.com> (permalink)
References (7 earlier) <lno90j33ci.fsf@kst-u.example.com> <qjivda$fb2$1@dont-email.me> <qjj213$814$1@dont-email.me> <ln1rxe3kr6.fsf@kst-u.example.com> <qjj6fo$gg6$1@dont-email.me>

Show all headers | View raw


"Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> writes:
> On 21.08.2019 11:55, Keith Thompson wrote:
>> "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> writes:
>>> On 21.08.2019 10:29, David Brown wrote:
>>>> On 20/08/2019 23:59, Keith Thompson wrote:
>> [...]
>>>>> The effect is the same: a diagnostic is required.  (If the
>>>>> implementation chooses to produce an executable after printing the
>>>>> required diagnostic, I suppose the behavior is undefined by omission.)
>>>
>>> There's no need to print anything. /Not/ blinking the caps lock
>>> indicator for a millisecond is a valid diagnostic. The standard doesn't
>>> specify what a "diagnostic" or a "diagnostic message" is, that it should
>>> involve text at all, or that it should be context-independent...
>>>
>>> That may sound like a silly argument.
>> 
>> Yes, it does.
>> 
>> The standard requires a diagnostic message for certain errors, and
>> defines a "diagnostic message" as "a message belonging to an
>> implementation-defined subset of the implementation's output messages".
>> The phrase "implementation-defined" means the documentation has to
>> document it.
>> 
>> gcc's documentation, for example, says:
>> 
>>     * 'How a diagnostic is identified (C90 3.7, C99 and C11 3.10, C90,
>>       C99 and C11 5.1.1.3).'
>> 
>>       Diagnostics consist of all the output sent to stderr by GCC.
>> 
>> That's for C, but the "C++ Implementation-Defined Behavior" says "Some
>> choices are documented in the corresponding document for the C
>> language."
>> 
>> So no, for gcc/g++ not blinking the caps lock is not a diagnostic.
>
> I'm sorry, that's a simple fallacy.

No, that's what the documentation says.

> That g++ doesn't do that now, has no bearing on what it /can/ do.

How is that relevant?

The language standard requires each implementation to document what a
"diagnostic" is.  The gcc/g++ documentation clearly documents what a
"diagnostic" is, in a way that clearly excludes "non-blinking caps
lock".

A future version could change that, but I'd be willing to bet that it
won't.

By accepting identifiers with "$" without a diagnostic in what is
intended to be a conforming mode, g++ is violating the requirements of
the C++ standard.  If you disagree, what exactly is your argument?

> As far as the formal is concerned g++ can use the non-blinking caps lock 
> as a diagnostic.

The "formal" what?

Yes, the standard permits an implementation to use a non-blinking caps
lock as a diagnostic -- if and only if its documentation defines
"diagnostic" in a way that's consistent with that.  No implementation
does so or is likely to do so in the future.

I thought your argument was based on "common sense".

Here's an idea.  I'll just assume that, at some point in the future, you
might change your argument and agree with me.  Problem solved.

[...]

> For example, I remember `$` being used in the system API in the HP3000. 
> That's long ago, 1980s, but presumably use of `$` in system API function 
> names was part of the reasons why compilers supported it. And continue 
> to support it.

OpenVMS uses $ in identifiers (and C and C++ compilers for OpenVMS have
to allow for that).  Which is why, in my opinion, the standard *should*
allow compilers to accept $ in identifiers.

[...]

-- 
Keith Thompson (The_Other_Keith) kst-u@mib.org  <http://www.ghoti.net/~kst>
Will write code for food.
void Void(void) { Void(); } /* The recursive call of the void */

Back to comp.lang.c++ | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-02 03:36 +0200
  Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-02 11:22 +0200
  Re: An example: code to list exports of a Windows DLL. rick.c.hodgin@gmail.com - 2019-08-02 02:33 -0700
    Re: An example: code to list exports of a Windows DLL. "Chris M. Thomasson" <invalid_chris_thomasson_invalid@invalid.com> - 2019-08-02 16:54 -0700
      Re: An example: code to list exports of a Windows DLL. "Chris M. Thomasson" <invalid_chris_thomasson_invalid@invalid.com> - 2019-08-02 19:09 -0700
  Now on Github; based ordinals in listing (Re: An example: code to list exports of a Windows DLL.) "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-02 20:20 +0200
  Re: An example: code to list exports of a Windows DLL. legalize+jeeves@mail.xmission.com (Richard) - 2019-08-19 19:44 +0000
    Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-20 02:12 +0200
      Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-19 18:31 -0700
        Re: An example: code to list exports of a Windows DLL. David Brown <david.brown@hesbynett.no> - 2019-08-20 08:42 +0200
          Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-20 02:18 -0700
            Re: An example: code to list exports of a Windows DLL. Ian Collins <ian-news@hotmail.com> - 2019-08-20 22:22 +1200
              Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-20 14:21 -0700
            Re: An example: code to list exports of a Windows DLL. David Brown <david.brown@hesbynett.no> - 2019-08-20 13:00 +0200
              Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-20 14:59 -0700
                Re: An example: code to list exports of a Windows DLL. David Brown <david.brown@hesbynett.no> - 2019-08-21 10:29 +0200
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-21 11:14 +0200
                Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-21 02:55 -0700
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-21 12:30 +0200
                Re: An example: code to list exports of a Windows DLL. David Brown <david.brown@hesbynett.no> - 2019-08-21 14:22 +0200
                Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-21 12:41 -0700
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-22 03:38 +0200
                Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-21 19:24 -0700
                Re: An example: code to list exports of a Windows DLL. James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-08-21 23:21 -0400
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-22 06:01 +0200
                Re: An example: code to list exports of a Windows DLL. James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-08-22 00:26 -0400
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-22 07:54 +0200
                Re: An example: code to list exports of a Windows DLL. James Kuyper <jameskuyper@alumni.caltech.edu> - 2019-08-22 09:08 -0400
                Re: An example: code to list exports of a Windows DLL. "Alf P. Steinbach" <alf.p.steinbach+usenet@gmail.com> - 2019-08-22 19:37 +0200
                Re: An example: code to list exports of a Windows DLL. scott@slp53.sl.home (Scott Lurndal) - 2019-08-22 13:17 +0000
                Re: An example: code to list exports of a Windows DLL. David Brown <david.brown@hesbynett.no> - 2019-08-22 16:07 +0200
                Re: An example: code to list exports of a Windows DLL. Keith Thompson <kst-u@mib.org> - 2019-08-21 02:42 -0700
  Re: An example: code to list exports of a Windows DLL. Frederick Gotham <cauldwell.thomas@gmail.com> - 2019-08-20 04:09 -0700
    Re: An example: code to list exports of a Windows DLL. "Chris M. Thomasson" <chris.m.thomasson.1@gmail.com> - 2019-08-20 17:24 -0700

csiph-web