public inbox for libc-hacker@sourceware.org
 help / color / mirror / Atom feed
From: Jakub Jelinek <jakub@redhat.com>
To: drepper@redhat.com
Cc: libc-hacker@sourceware.cygnus.com, teg@redhat.com
Subject: [PATCH] sys/stat.h fix
Date: Fri, 30 Jun 2000 14:17:00 -0000	[thread overview]
Message-ID: <20000630231946.P6821@sunsite.ms.mff.cuni.cz> (raw)

Hi!

With current sys/stat.h it is impossible to compile a C++ program which
includes it and is compiled with -D_FILE_OFFSET_BITS=64
-D_LARGEFILE64_SOURCE. The reason is that C++ puts extern inlines into
linkonce section, but as e.g. both fstat and fstat64 have the same assembly
name (fstat64), it dies because there are two identical symbols in one
section. While fixing that, I've noticed that if __REDIRECT is not defined,
then it will die because there will be two inlines with the same name
(redefinition of `fstat64' will happen).

2000-06-30  Jakub Jelinek  <jakub@redhat.com>

	* io/sys/stat.h (stat64, lstat64, fstat64): Don't define inlines
	if redirecting and either redirection is done using defines or
	not optimizing.

--- libc/io/sys/stat.h.jj	Fri Jun 30 22:58:46 2000
+++ libc/io/sys/stat.h	Fri Jun 30 22:59:43 2000
@@ -360,7 +360,9 @@ extern __inline__ int mknod (__const cha
 }
 # endif
 
-# ifdef __USE_LARGEFILE64
+# if defined __USE_LARGEFILE64 && \
+  (! defined __USE_FILE_OFFSET64 || \
+   (defined __REDIRECT && defined __OPTIMIZE__))
 extern __inline__ int stat64 (__const char *__path,
 			      struct stat64 *__statbuf) __THROW
 {

	Jakub

             reply	other threads:[~2000-06-30 14:17 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2000-06-30 14:17 Jakub Jelinek [this message]
2000-06-30 22:01 ` Ulrich Drepper
2003-01-01 22:13 Jakub Jelinek
2003-01-02  7:51 ` Andreas Jaeger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20000630231946.P6821@sunsite.ms.mff.cuni.cz \
    --to=jakub@redhat.com \
    --cc=drepper@redhat.com \
    --cc=libc-hacker@sourceware.cygnus.com \
    --cc=teg@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).