On 02/17/2011 12:54 PM, Kevin Grittner wrote:
Andrew Dunstan<and...@dunslane.net>  wrote:

Ugh. Isn't there some sort of pragma or similar we can use to shut
it up?

If that fails, maybe use some function like the below?  That would
also have the advantage of not relying on assumptions beyond the
documented API, which I tend to feel good about no matter how sure I
am that the implementation details upon which I'm relying won't
change.

No claims that this is good final form, especially when it comes to
using ssize_t, but just trying to get across the general idea:

void
write_completely_ignore_errors(int filedes, const void *buffer,
                                size_t size)
{
     size_t t = 0;
     while (t<  size)
     {
         ssize_t n = write(filedes, buffer, size - t);
         if (n<= 0)
             break;
         t += n;
     }
}


In a very modern gcc, where we seem to be getting the errors from, maybe

   |#pragma GCC diagnostic push
   |#pragma GCC diagnostic ignored "-Wunused-result"
   write( ...);
   #pragma GCC diagnostic pop


would work. See <http://gcc.gnu.org/onlinedocs/gcc/Diagnostic-Pragmas.html#Diagnostic-Pragmas>

cheers

andrew


--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to