bug-ddrescue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-ddrescue] [PATCH 3/5] io: Add missing prototype


From: Antonio Diaz Diaz
Subject: Re: [Bug-ddrescue] [PATCH 3/5] io: Add missing prototype
Date: Mon, 05 Aug 2019 20:08:53 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i586; en-US; rv:1.9.1.19) Gecko/20110420 SeaMonkey/2.0.14

Rosen Penev wrote:
+extern "C" void sighandler( int signum );
   extern "C" void sighandler( int signum )
     { if( signum_ == 0&&   signum>   0 ) signum_ = signum; }

There is nothing missing here. A function definition is a function
declaration in which the body of the function is presented. Therefore
there is no need to declare the function twice.

My understanding here is that this function needs to be static or
declared separately. static cannot be used with extern so I went for
the other option.

Why does it need to be static or declared separately? I can see nothing in the C++ standard requiring that. AFAICT, all that is required is that the function is declared before being used, and a definition is also a declaration.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]