git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH 2/6] path: Make the 'get_st_mode_bits' symbol a file static

From
Junio C Hamano <gitster@pobox.com>
Date
Apr 28, 2013, 19:06 UTC
Message-ID
<7vip36qxui.fsf@alter.siamese.dyndns.org>
In-Reply-To
<517C1BF9.2050604@ramsay1.demon.co.uk>
Ramsay Jones <ramsay@ramsay1.demon.co.uk> writes:
Show 5 quoted lines
> On MinGW, sparse issues an "'get_st_mode_bits' not declared. Should
> it be static?" warning. The MinGW and MSVC builds do not see the
> declaration of this function, within git-compat-util.h, due to it's
> placement within an preprocessor conditional. (So, one solution would
> be to simply move the declaration to the top level of the header.)

Well, the idea was that the user of this function in path.c will call get_st_mode_bits(), and whatever platform that provides a replacement implementation would do

	#define get_st_mode_bits(a,b) cygwin_get_st_mode_bits((a),(b))

so that the calling site in path.c will end up calling that replacement implementation. So if anything get_st_mode_bits() declaration may want to go at the _end_ (not top) after including all the compatibility crufts.

We could make the declaration static to path.c, but then nobody other than path.c would be able to make use of it in the future, and we'll have the same discussion when somebody wants to hoist the declaration to git-compat-util.h, no?

Previous: Ramsay JonesNext: Ramsay Jones
Message 6 of 8 in “path: Make the 'get_st_mode_bits' symbol a file static”
  1. 2/6 path: Make the 'get_st_mode_bits' symbol a file staticRamsay Jones, Apr 27, 2013
  2. Eric SunshineApr 28, 2013
  3. Torsten BögershausenApr 28, 2013
  4. Torsten BögershausenApr 28, 2013
  5. Ramsay JonesApr 29, 2013
  6. Junio C HamanoApr 28, 2013
  7. Ramsay JonesApr 29, 2013
  8. Junio C HamanoApr 30, 2013

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.