[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 1/4] memory: make memory API parsable by gtkdoc-

From: Stefan Weil
Subject: Re: [Qemu-devel] [PATCH 1/4] memory: make memory API parsable by gtkdoc-scan
Date: Wed, 14 Dec 2011 19:54:12 +0100
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv: Gecko/20110921 Thunderbird/3.1.15

Am 14.12.2011 17:34, schrieb malc:
On Wed, 14 Dec 2011, Anthony Liguori wrote:

GTK/glib uses a convenient of:

typedef struct _CamelCase CamelCase;

The reason that they use a separate struct name is that in C++, the struct namespace not a separate namespace from the type namespace. This is actually a reasonable policy for QEMU to adopt as we eventually start exporting C libraries
that may be consumed by C++ programs.

I think the use of _ does not violate the C specification as the struct
namespace is not the same as the type namespace which is what the C spec refers
to if I understand it correctly.

It does violate the standard _ followed by upper case letter is reserved
in all contexts.

sCamelCase instead of _CamelCase seems to work, too.

I just finished a first test with gtk-doc and had no problems.

So it's possible to support gtk-doc (which is a good thing) _and_
keep the standard (which is very important, too).

The new rule for structure declarations in QEMU could be like this:

/* forward declaration */
struct sCamelCase;

/* struct definition */
typedef struct sCamelCase {
  /* values follow here ... */
} CamelCase;

Structures which don't need a forward declaration can use
simplified definitions:

typedef struct {
  /* values follow here ... */
} CamelCaseWithoutForwardDeclaration;


Stefan Weil

reply via email to

[Prev in Thread] Current Thread [Next in Thread]