ALT Linux Team development discussions
 help / color / mirror / Atom feed
From: "Alexey Shabalin" <a.shabalin@gmail.com>
To: "ALT Devel discussion list" <devel@lists.altlinux.org>
Subject: Re: [devel] gcc4&multisync0.90
Date: Mon, 29 May 2006 18:26:21 +0400
Message-ID: <b966c1e40605290726u485aaef5g4ab98e98b895e709@mail.gmail.com> (raw)
In-Reply-To: <1148911520.9279.8.camel@snc.2100.gosniias.ru>

Спасибо.
я уже опробовал
*size = *size +1; - работает


29.05.06, Sergey N. Yatskevich<syatskevich@altlinux.ru> написал(а):
> В Пнд, 29/05/2006 в 16:26 +0400, Alexey Shabalin пишет:
> > День добрый
> > помогите собрать multisync0.90
> > gcc3.4 собирает, а gcc4 ругается на следующий участок.
> >
> > ===============================
> > static void msync_fs_make_config(fs_options *options, char **data, int *size)
> > {
> >         xmlDocPtr doc;
> >
> >         doc = xmlNewDoc((xmlChar*)"1.0");
> >         doc->children = xmlNewDocNode(doc, NULL, (xmlChar*)"config", NULL);
> >
> >         xmlNewChild(doc->children, NULL, (xmlChar*)"path",
> > (xmlChar*)options->path);
> >         xmlNewChild(doc->children, NULL, (xmlChar*)"recursive",
> > (xmlChar*)(options->recursive ? "TRUE" : "FALS
> >
> >         xmlDocDumpMemory(doc, (xmlChar **)data, size);
> >         *size++;
> > }
> > ===================================
> > skip
> > ===================================
> > msync_fs_make_config(options, &config, &size);
> >
> >
> > file_sync.c: In function 'msync_fs_make_config':
> > file_sync.c:129: warning: value computed is not used
> >
> > file_sync.c:129 - это   *size++;
> >
> > Если убрать * - ругань исчезает. коректно ли это?
> Нет, не корректно. Всё дело в приоритете операций разыменования
> указателя (*) и увеличения на единицу (++).
> Если развернуть данную конструкцию (*size++), то получится
> следующее:
>
> int* tmp = size;
> size = size + 1;
> *tmp; // вот здесь и ругается
>
> Судя по коду здесь просто к вычисленному xmlDocDumpMemory размеру
> добавляется единица (наверное для того, чтобы учесть завершающий
> '\0'), так что правильно должно быть так: (*size)++
>
> --
> Sergey N. Yatskevich <syatskevich@altlinux.ru>
>
> _______________________________________________
> Devel mailing list
> Devel@lists.altlinux.org
> https://lists.altlinux.org/mailman/listinfo/devel


-- 
Alexey Shabalin

      reply	other threads:[~2006-05-29 14:26 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-05-29 12:26 Alexey Shabalin
2006-05-29 14:05 ` Sergey N. Yatskevich
2006-05-29 14:26   ` Alexey Shabalin [this message]

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=b966c1e40605290726u485aaef5g4ab98e98b895e709@mail.gmail.com \
    --to=a.shabalin@gmail.com \
    --cc=devel@lists.altlinux.org \
    /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

ALT Linux Team development discussions

This inbox may be cloned and mirrored by anyone:

	git clone --mirror http://lore.altlinux.org/devel/0 devel/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 devel devel/ http://lore.altlinux.org/devel \
		devel@altlinux.org devel@altlinux.ru devel@lists.altlinux.org devel@lists.altlinux.ru devel@linux.iplabs.ru mandrake-russian@linuxteam.iplabs.ru sisyphus@linuxteam.iplabs.ru
	public-inbox-index devel

Example config snippet for mirrors.
Newsgroup available over NNTP:
	nntp://lore.altlinux.org/org.altlinux.lists.devel


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git