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

Re: [PATCH v3 3/5] config: make parsing stack struct independent from actual data source

From
Jeff King <peff@peff.net>
Date
May 9, 2013, 22:21 UTC
Message-ID
<20130509222158.GA30774@sigill.intra.peff.net>
In-Reply-To
<20130509161932.GE3526@book-mint>
On Thu, May 09, 2013 at 06:19:32PM +0200, Heiko Voigt wrote:
Show 16 quoted lines
> diff --git a/config.c b/config.c
> index 046642b..2390458 100644
> --- a/config.c
> +++ b/config.c
> @@ -10,20 +10,41 @@
>  #include "strbuf.h"
>  #include "quote.h"
>  
> -typedef struct config_file {
> -	struct config_file *prev;
> -	FILE *f;
> +struct config_source {
> +	struct config_source *prev;
> +	union {
> +		FILE *file;
> +	};

Anonymous unions like this are a C11-ism (I don't know when gcc learned about them, but I am sure that many of the older compilers we support would not be happy). You have to do:

  union {
          FILE *file;
  } u;
and access the file as "cf->u.file".
-Peff
Previous: Heiko VoigtNext: Heiko Voigt
Message 4 of 14 in “config: factor out config file stack management”
  1. 1/5 config: factor out config file stack managementHeiko Voigt, May 9, 2013
  2. 2/5 config: drop cf validity check in get_next_char()Heiko Voigt, May 9, 2013
  3. 3/5 config: make parsing stack struct independent from actual data sourceHeiko Voigt, May 9, 2013
  4. Jeff KingMay 9, 2013
  5. 4/5 teach config --blob option to parse config from databaseHeiko Voigt, May 9, 2013
  6. Eric SunshineMay 9, 2013
  7. Jeff KingMay 9, 2013
  8. Heiko VoigtMay 10, 2013
  9. 5/5 do not die when error in config parsing of buf occursHeiko Voigt, May 9, 2013
  10. Eric SunshineMay 9, 2013
  11. Jeff KingMay 9, 2013
  12. Heiko VoigtMay 11, 2013
  13. Jeff KingMay 11, 2013
  14. Heiko VoigtMay 11, 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.