From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 6105 invoked by alias); 27 Apr 2006 23:46:45 -0000 Received: (qmail 6092 invoked by uid 48); 27 Apr 2006 23:46:41 -0000 Date: Thu, 27 Apr 2006 23:46:00 -0000 Message-ID: <20060427234641.6091.qmail@sourceware.org> From: "bero at arklinux dot org" To: glibc-bugs@sources.redhat.com In-Reply-To: <20040630145727.245.egmont@uhulinux.hu> References: <20040630145727.245.egmont@uhulinux.hu> Reply-To: sourceware-bugzilla@sourceware.org Subject: [Bug nptl/245] Wrong stdio-lock.h installed X-Bugzilla-Reason: CC Mailing-List: contact glibc-bugs-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Post: List-Help: , Sender: glibc-bugs-owner@sourceware.org X-SW-Source: 2006-04/txt/msg00369.txt.bz2 List-Id: ------- Additional Comments From bero at arklinux dot org 2006-04-27 23:46 ------- The problem is valid (you can't #include stdio-lock.h anywhere), but the suggested fix (which caused it to be marked as invalid) isn't. Alternative fix that doesn't drag lowlevellock.h into the include dependency chain: glibc's make install installs nptl/sysdeps/pthread/bits/stdio-lock.h (which includes lowlevellock.h, which isn't supposed to be used outside glibc) as /usr/include/bits/stdio-lock.h -- causing anything that (indirectly) includes (such as glibc's own if _IO_MTSAFE_IO is defined). Installing the generic bits/stdio-lock.h instead of the version in nptl/sysdeps/pthread/bits/stdio-lock.h as /usr/include/bits/stdio-lock.h should fix the problem without needing to make private headers public. Alternatively, don't install bits/stdio-lock.h at all and make sure libio.h doesn't include it (if you consider _IO_MTSAFE_IO another "don't use this outside glibc" thing, a #ifdef _IO_MTSAFE_IO #error Don't use _IO_MTSAFE_IO outside glibc #endif bit would be far more helpful to someone not familiar with glibc internals than a failing #include (which will just tempt users to "fix" it the wrong way, by copying in lowlevellock.h, causing more bad code). -- What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |REOPENED Resolution|INVALID | Summary|lowlevellock.h not installed|Wrong stdio-lock.h installed Version|2.3.3 |2.4 http://sourceware.org/bugzilla/show_bug.cgi?id=245 ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.