<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://mediawiki.gnustep.org/index.php?action=history&amp;feed=atom&amp;title=GNUStep_Macros</id>
	<title>GNUStep Macros - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://mediawiki.gnustep.org/index.php?action=history&amp;feed=atom&amp;title=GNUStep_Macros"/>
	<link rel="alternate" type="text/html" href="https://mediawiki.gnustep.org/index.php?title=GNUStep_Macros&amp;action=history"/>
	<updated>2026-05-10T19:18:10Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.35.7</generator>
	<entry>
		<id>https://mediawiki.gnustep.org/index.php?title=GNUStep_Macros&amp;diff=6373&amp;oldid=prev</id>
		<title>Awiebe at 21:36, 14 July 2012</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.gnustep.org/index.php?title=GNUStep_Macros&amp;diff=6373&amp;oldid=prev"/>
		<updated>2012-07-14T21:36:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left diff-editfont-monospace&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 21:36, 14 July 2012&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l1&quot; &gt;Line 1:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 1:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==GCC==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Platform Dependant==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;*ifdef __MINGW__ /*do*/ #endif Windows POSIX&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Memory Managment==&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* RETAIN(x) Bump the retain cound of x where x does not inherit from NSObject. As in foundation objects.&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* RELEASE(x) Decrement the retain count of X&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;* AUTORELEASE(x)&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ASSIGN(object,value) to assign an object variable, performing the appropriate re- tain/release as necessary.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ASSIGN(object,value) to assign an object variable, performing the appropriate re- tain/release as necessary.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ASSIGNCOPY(object,value) to copy the value and assign it to the object.&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;* ASSIGNCOPY(object,value) to copy the value and assign it to the object.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l9&quot; &gt;Line 9:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 21:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*#ifndef _WIN64 if not 64-bit windows&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*#ifndef _WIN64 if not 64-bit windows&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*GS_WITH_GC is gnustep &amp;amp;&amp;amp;  has garbage collection&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;*GS_WITH_GC is gnustep &amp;amp;&amp;amp;  has garbage collection&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==GCC==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Platform Dependant==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;*ifdef __MINGW__ /*do*/ #endif Windows POSIX&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;==Memory Managment==&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;*RETAIN(x) Bump the retain cound of x where x does not inherit from NSObject. As in foundation objects.&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;−&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;*RELEASE(x) Decrement the retain count of X&lt;/del&gt;&lt;/div&gt;&lt;/td&gt;&lt;td colspan=&quot;2&quot;&gt; &lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt; &lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>Awiebe</name></author>
	</entry>
	<entry>
		<id>https://mediawiki.gnustep.org/index.php?title=GNUStep_Macros&amp;diff=6371&amp;oldid=prev</id>
		<title>Awiebe at 21:32, 14 July 2012</title>
		<link rel="alternate" type="text/html" href="https://mediawiki.gnustep.org/index.php?title=GNUStep_Macros&amp;diff=6371&amp;oldid=prev"/>
		<updated>2012-07-14T21:32:19Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;* ASSIGN(object,value) to assign an object variable, performing the appropriate re- tain/release as necessary.&lt;br /&gt;
* ASSIGNCOPY(object,value) to copy the value and assign it to the object.&lt;br /&gt;
* DESTROY(object) to release an object variable and set it to nil.&lt;br /&gt;
* CREATE AUTORELEASE POOL(name) to create an autorelease pool with the spec- ified name.&lt;br /&gt;
* IF NO GC(X) compile the code ’X’ only if GarbageCollection is not in use.&lt;br /&gt;
&lt;br /&gt;
* #ifdef __OBJC_GC__ /*Code*/  #endif  If garbage collection is on then include, otherwise skip.&lt;br /&gt;
* __weak This object is weak, if nothing references it, it will be collected.&lt;br /&gt;
*#ifndef _WIN64 if not 64-bit windows&lt;br /&gt;
*GS_WITH_GC is gnustep &amp;amp;&amp;amp;  has garbage collection&lt;br /&gt;
&lt;br /&gt;
==GCC==&lt;br /&gt;
&lt;br /&gt;
==Platform Dependant==&lt;br /&gt;
*ifdef __MINGW__ /*do*/ #endif Windows POSIX&lt;br /&gt;
&lt;br /&gt;
==Memory Managment==&lt;br /&gt;
&lt;br /&gt;
*RETAIN(x) Bump the retain cound of x where x does not inherit from NSObject. As in foundation objects.&lt;br /&gt;
*RELEASE(x) Decrement the retain count of X&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Misc==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
/* GSVersionMacros.h - macros for managing API versioning and visibility&lt;br /&gt;
   Copyright (C) 2006 Free Software Foundation, Inc.&lt;br /&gt;
&lt;br /&gt;
   Written by: Richard Frith-Macdonald &amp;lt;rfm@gnu.org&amp;gt;&lt;br /&gt;
   Date: Oct, October 2006&lt;br /&gt;
   &lt;br /&gt;
   This file is part of GNUstep.&lt;br /&gt;
&lt;br /&gt;
   This library is free software; you can redistribute it and/or&lt;br /&gt;
   modify it under the terms of the GNU Lesser General Public&lt;br /&gt;
   License as published by the Free Software Foundation; either&lt;br /&gt;
   version 2 of the License, or (at your option) any later version.&lt;br /&gt;
   &lt;br /&gt;
   This library is distributed in the hope that it will be useful,&lt;br /&gt;
   but WITHOUT ANY WARRANTY; without even the implied warranty of&lt;br /&gt;
   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU&lt;br /&gt;
   Library General Public License for more details.&lt;br /&gt;
   &lt;br /&gt;
   You should have received a copy of the GNU Lesser General Public&lt;br /&gt;
   License along with this library; if not, write to the Free&lt;br /&gt;
   Software Foundation, Inc., 51 Franklin Street, Fifth Floor,&lt;br /&gt;
   Boston, MA 02110-1301, USA.&lt;br /&gt;
*/ &lt;br /&gt;
&lt;br /&gt;
#ifndef __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_&lt;br /&gt;
#define __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_&lt;br /&gt;
&lt;br /&gt;
/* By default we defined NO_GNUSTEP to 0 so that we will include extensions.&lt;br /&gt;
 */&lt;br /&gt;
#if	!defined(NO_GNUSTEP)&lt;br /&gt;
#  define	NO_GNUSTEP	0&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/* Check consistency of definitions for system compatibility.&lt;br /&gt;
 */&lt;br /&gt;
#if	defined(STRICT_OPENSTEP)&lt;br /&gt;
#  define	GS_OPENSTEP_V	 10000&lt;br /&gt;
#  undef	NO_GNUSTEP&lt;br /&gt;
#  define	NO_GNUSTEP	1&lt;br /&gt;
#elif	defined(STRICT_MACOS_X)&lt;br /&gt;
#  define	GS_OPENSTEP_V	100600&lt;br /&gt;
#  undef	NO_GNUSTEP&lt;br /&gt;
#  define	NO_GNUSTEP	1&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * For MacOS-X compatibility, we define the MacOS-X version constants and&lt;br /&gt;
 * we allow MAC_OS_X_VERSION_MIN_ALLOWED or MAC_OS_X_VERSION_MAX_ALLOWED&lt;br /&gt;
 * instead of GS_OPENSTEP_V&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
#ifndef	MAC_OS_X_VERSION_10_0&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_0	100000&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_1	100100&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_2	100200&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_3	100300&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_4	100400&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_5	100500&lt;br /&gt;
#define	MAC_OS_X_VERSION_10_6	100600&lt;br /&gt;
#endif	/* MAC_OS_X_VERSION_10_0 */&lt;br /&gt;
&lt;br /&gt;
#ifndef	GS_OPENSTEP_V&lt;br /&gt;
#ifdef	MAC_OS_X_VERSION_MIN_ALLOWED&lt;br /&gt;
#define	GS_OPENSTEP_V	MAC_OS_X_VERSION_MIN_ALLOWED&lt;br /&gt;
#else&lt;br /&gt;
#ifdef	MAC_OS_X_VERSION_MAX_ALLOWED&lt;br /&gt;
#define	GS_OPENSTEP_V	MAC_OS_X_VERSION_MAX_ALLOWED&lt;br /&gt;
#endif	/* MAC_OS_X_VERSION_MAX_ALLOWED */&lt;br /&gt;
#endif	/* MAC_OS_X_VERSION_MIN_ALLOWED */&lt;br /&gt;
#endif	/* GS_OPENSTEP_V */&lt;br /&gt;
&lt;br /&gt;
/*&lt;br /&gt;
 * NB. The version values below must be integers ... by convention these are&lt;br /&gt;
 * made up of two digits each for major, minor and subminor version numbers&lt;br /&gt;
 * (ie each is in the range 00 to 99 though a leading zero in the major&lt;br /&gt;
 * number is not permitted).&lt;br /&gt;
 * So for a MacOS-X 10.3.9 release the version number would be 100309&lt;br /&gt;
 *&lt;br /&gt;
 * You may define GS_GNUSTEP_V or GS_OPENSTEP_V to ensure that your&lt;br /&gt;
 * program only 'sees' the specified varsion of the API.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * &amp;lt;p&amp;gt;Macro to check a defined GNUstep version number (GS_GNUSTEP_V) against&lt;br /&gt;
 * the supplied arguments.  Returns true if no GNUstep version is specified,&lt;br /&gt;
 * or if ADD &amp;amp;lt;= version &amp;amp;lt; REM, where ADD is the version&lt;br /&gt;
 * number at which a feature guarded by the macro was introduced and&lt;br /&gt;
 * REM is the version number at which it was removed.&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 * &amp;lt;p&amp;gt;The version number arguments are six digit integers where the first&lt;br /&gt;
 * two digits are the major version number, the second two are the minor&lt;br /&gt;
 * version number and the last two are the subminor number (all left padded&lt;br /&gt;
 * with a zero where necessary).  However, for convenience you can also&lt;br /&gt;
 * use any of several predefined constants ... &lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_NONE&amp;quot;&amp;gt;GS_API_NONE&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_LATEST&amp;quot;&amp;gt;GS_API_LATEST&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_OSSPEC&amp;quot;&amp;gt;GS_API_OSSPEC&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_OPENSTEP&amp;quot;&amp;gt;GS_API_OPENSTEP&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_MACOSX&amp;quot;&amp;gt;GS_API_MACOSX&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 * &amp;lt;p&amp;gt;Also see &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 * &amp;lt;p&amp;gt;NB. If you are changing the API (eg adding a new feature) you need&lt;br /&gt;
 * to control the visibility io the new header file code using&amp;lt;br /&amp;gt;&lt;br /&gt;
 * &amp;lt;code&amp;gt;#if GS_API_VERSION(ADD,GS_API_LATEST)&amp;lt;/code&amp;gt;&amp;lt;br /&amp;gt;&lt;br /&gt;
 * where &amp;lt;code&amp;gt;ADD&amp;lt;/code&amp;gt; is the version number of the next minor&lt;br /&gt;
 * release after the most recent one.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * As a general principle you should &amp;lt;em&amp;gt;not&amp;lt;/em&amp;gt; change the API with&lt;br /&gt;
 * changing subminor version numbers ... as that tends to confuse&lt;br /&gt;
 * people (though Apple has sometimes done it).&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_VERSION(ADD,REM) \&lt;br /&gt;
  (!defined(GS_GNUSTEP_V) || (GS_GNUSTEP_V &amp;gt;= ADD &amp;amp;&amp;amp; GS_GNUSTEP_V &amp;lt; REM))&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * &amp;lt;p&amp;gt;Macro to check a defined OpenStep/OPENSTEP/MacOS-X version against the&lt;br /&gt;
 * supplied arguments.  Returns true if no version is specified, or if&lt;br /&gt;
 * ADD &amp;amp;lt;= version &amp;amp;lt; REM, where ADD is the version&lt;br /&gt;
 * number at which a feature guarded by the macro was introduced and&lt;br /&gt;
 * REM is the version number at which it was removed.&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 * &amp;lt;p&amp;gt;The version number arguments are six digit integers where the first&lt;br /&gt;
 * two digits are the major version number, the second two are the minor&lt;br /&gt;
 * version number and the last two are the subminor number (all left padded&lt;br /&gt;
 * with a zero where necessary).  However, for convenience you can also&lt;br /&gt;
 * use any of several predefined constants ... &lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_NONE&amp;quot;&amp;gt;GS_API_NONE&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_LATEST&amp;quot;&amp;gt;GS_API_LATEST&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_OSSPEC&amp;quot;&amp;gt;GS_API_OSSPEC&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_OPENSTEP&amp;quot;&amp;gt;GS_API_OPENSTEP&amp;lt;/ref&amp;gt;,&lt;br /&gt;
 * &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_MACOSX&amp;quot;&amp;gt;GS_API_MACOSX&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 * &amp;lt;p&amp;gt;Also see &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;GS_API_VERSION&amp;quot;&amp;gt;GS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * &amp;lt;/p&amp;gt;&lt;br /&gt;
 */&lt;br /&gt;
#define	OS_API_VERSION(ADD,REM) \&lt;br /&gt;
  (!defined(GS_OPENSTEP_V) || (GS_OPENSTEP_V &amp;gt;= ADD &amp;amp;&amp;amp; GS_OPENSTEP_V &amp;lt; REM))&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * A constant which is the lowest possible version number (0) so that&lt;br /&gt;
 * when used as the removal version (second argument of the GS_API_VERSION&lt;br /&gt;
 * or OS_API_VERSION macro) represents a feature which is not present in&lt;br /&gt;
 * any version.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * eg.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * #if &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * (GS_API_NONE, GS_API_NONE)&amp;lt;br /&amp;gt;&lt;br /&gt;
 * denotes  code not present in OpenStep/OPENSTEP/MacOS-X&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_NONE	     0&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * A constant to represent a feature which is still present in the latest&lt;br /&gt;
 * version.  This is the highest possible version number.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * eg.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * #if &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * (GS_API_MACOSX, GS_API_LATEST)&amp;lt;br /&amp;gt;&lt;br /&gt;
 * denotes code present from the initial MacOS-X version onwards.&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_LATEST	999999&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * The version number of the initial OpenStep specification.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * eg.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * #if &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * (GS_API_OSSPEC, GS_API_LATEST)&amp;lt;br /&amp;gt;&lt;br /&gt;
 * denotes code present from the OpenStep specification onwards.&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_OSSPEC	 10000&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * The version number of the first OPENSTEP implementation.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * eg.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * #if &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * (GS_API_OPENSTEP, GS_API_LATEST)&amp;lt;br /&amp;gt;&lt;br /&gt;
 * denotes code present from the initial OPENSTEP version onwards.&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_OPENSTEP	 40000&lt;br /&gt;
&lt;br /&gt;
/**&lt;br /&gt;
 * The version number of the first MacOS-X implementation.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * eg.&amp;lt;br /&amp;gt;&lt;br /&gt;
 * #if &amp;lt;ref type=&amp;quot;macro&amp;quot; id=&amp;quot;OS_API_VERSION&amp;quot;&amp;gt;OS_API_VERSION&amp;lt;/ref&amp;gt;&lt;br /&gt;
 * (GS_API_MACOSX, GS_API_LATEST)&amp;lt;br /&amp;gt;&lt;br /&gt;
 * denotes code present from the initial MacOS-X version onwards.&lt;br /&gt;
 */&lt;br /&gt;
#define	GS_API_MACOSX	100000&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if	defined(GNUSTEP_BASE_INTERNAL)&lt;br /&gt;
#import &amp;quot;GNUstepBase/GSConfig.h&amp;quot;&lt;br /&gt;
#else&lt;br /&gt;
#import &amp;lt;GNUstepBase/GSConfig.h&amp;gt;&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifndef __has_feature&lt;br /&gt;
#define __has_feature(x) 0&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/* The following is for deciding whether private instance variables&lt;br /&gt;
 * should be visible ... if we are building with a compiler which&lt;br /&gt;
 * does not define __has_feature then we know we don't have non-fragile&lt;br /&gt;
 * ivar support.&lt;br /&gt;
 * In the header we bracket instance variable declarations in a&lt;br /&gt;
 * '#if	GS_EXPOSE(classname) ... #endif' sequence, so that the variables&lt;br /&gt;
 * will not be visible to code which uses the library.&lt;br /&gt;
 * In the source file we define EXPOSE_classname_IVARS to be 1&lt;br /&gt;
 * before including the header, so that the ivars are always available&lt;br /&gt;
 * in the class source itsself&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
#if	GS_MIXEDABI&lt;br /&gt;
#  undef	GS_NONFRAGILE&lt;br /&gt;
#  define	GS_NONFRAGILE	0	/* Mixed is treated as fragile */&lt;br /&gt;
#else&lt;br /&gt;
#  if (__has_feature(objc_nonfragile_abi))&lt;br /&gt;
#    if	!GS_NONFRAGILE&lt;br /&gt;
#      if	defined(GNUSTEP_BASE_INTERNAL)&lt;br /&gt;
//#        error &amp;quot;You are building gnustep-base using the objc-nonfragile-abi but your gnustep-base was not configured to use it.&amp;quot;&lt;br /&gt;
#      endif&lt;br /&gt;
#    endif&lt;br /&gt;
#  else&lt;br /&gt;
#    if	GS_NONFRAGILE&lt;br /&gt;
#      error &amp;quot;Your gnustep-base was configured for the objc-nonfragile-abi but you are not using it now.&amp;quot;&lt;br /&gt;
#    endif&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#define	GS_EXPOSE(X)	(!GS_NONFRAGILE || defined(EXPOSE_##X##_IVARS))&lt;br /&gt;
&lt;br /&gt;
/* Static analyser macros: Provide annotations to help the analyser */&lt;br /&gt;
#ifdef __clang__&lt;br /&gt;
#  define GS_NORETURN_METHOD __attribute__((__noreturn__))&lt;br /&gt;
#else&lt;br /&gt;
#  define GS_NORETURN_METHOD&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifndef NS_RETURNS_RETAINED&lt;br /&gt;
#  if __has_feature(attribute_ns_returns_retained)&lt;br /&gt;
#    define NS_RETURNS_RETAINED __attribute__((ns_returns_retained))&lt;br /&gt;
#  else&lt;br /&gt;
#    define NS_RETURNS_RETAINED&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifndef NS_RETURNS_NOT_RETAINED&lt;br /&gt;
#  if __has_feature(attribute_ns_returns_not_retained)&lt;br /&gt;
#    define NS_RETURNS_NOT_RETAINED __attribute__((ns_returns_not_retained))&lt;br /&gt;
#  else&lt;br /&gt;
#    define NS_RETURNS_NOT_RETAINED&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifndef NS_CONSUMED&lt;br /&gt;
#  if __has_feature(attribute_ns_consumed)&lt;br /&gt;
#    define NS_CONSUMED __attribute__((ns_consumed))&lt;br /&gt;
#  else&lt;br /&gt;
#    define NS_CONSUMED&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#ifndef NS_CONSUMES_SELF&lt;br /&gt;
#  if __has_feature(attribute_ns_consumes_self)&lt;br /&gt;
#    define NS_CONSUMES_SELF __attribute__((ns_consumes_self))&lt;br /&gt;
#  else&lt;br /&gt;
#    define NS_CONSUMES_SELF&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#if defined(__clang__) &amp;amp;&amp;amp; defined(__OBJC__)&lt;br /&gt;
static inline void gs_consumed(id NS_CONSUMED o) __attribute__ ((unused));&lt;br /&gt;
static inline void gs_consumed(id NS_CONSUMED o) { return; }&lt;br /&gt;
#define	GS_CONSUMED(O)	gs_consumed(O);&lt;br /&gt;
#else&lt;br /&gt;
#define	GS_CONSUMED(O)&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/* Include the appropriate header for ObjC2 blocks support if it is in use.&lt;br /&gt;
 *&lt;br /&gt;
 * FIXME: &amp;quot;OBJC2RUNTIME&amp;quot; is set to &amp;quot;1&amp;quot; if the runtime supports the ObjC2&lt;br /&gt;
 * runtime API, which is unrelated to whether the compiler has blocks&lt;br /&gt;
 * support or not.&lt;br /&gt;
 */&lt;br /&gt;
#if __has_feature(blocks)&lt;br /&gt;
#  if	OBJC2RUNTIME&lt;br /&gt;
#    include &amp;lt;objc/blocks_runtime.h&amp;gt;&lt;br /&gt;
#  else&lt;br /&gt;
#    include &amp;lt;ObjectiveC2/blocks_runtime.h&amp;gt;&lt;br /&gt;
#  endif&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#if	defined(GNUSTEP_WITH_DLL)&lt;br /&gt;
 &lt;br /&gt;
#if BUILD_libgnustep_base_DLL&lt;br /&gt;
#&lt;br /&gt;
# if defined(__MINGW__)&lt;br /&gt;
  /* On Mingw, the compiler will export all symbols automatically, so&lt;br /&gt;
   * __declspec(dllexport) is not needed.&lt;br /&gt;
   */&lt;br /&gt;
#  define GS_EXPORT  extern&lt;br /&gt;
#  define GS_DECLARE &lt;br /&gt;
# else&lt;br /&gt;
#  define GS_EXPORT  __declspec(dllexport)&lt;br /&gt;
#  define GS_DECLARE __declspec(dllexport)&lt;br /&gt;
# endif&lt;br /&gt;
#else&lt;br /&gt;
#  define GS_EXPORT  extern __declspec(dllimport)&lt;br /&gt;
#  define GS_DECLARE __declspec(dllimport)&lt;br /&gt;
#endif&lt;br /&gt;
 &lt;br /&gt;
#else /* GNUSTEP_WITH[OUT]_DLL */&lt;br /&gt;
&lt;br /&gt;
#  define GS_EXPORT extern&lt;br /&gt;
#  define GS_DECLARE &lt;br /&gt;
&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
/* Attribute definitions for attributes which may or may not be supported&lt;br /&gt;
 * depending on the compiler being used.&lt;br /&gt;
 * The definition should be of the form GS_XXX_CONTEXT where XXX is the&lt;br /&gt;
 * name of the attribute and CONTEXT is one of FUNC, METH, or IVAR&lt;br /&gt;
 * depending on where the attribute can be applied.&lt;br /&gt;
 */&lt;br /&gt;
&lt;br /&gt;
#if (__GNUC__ &amp;gt; 3 || (__GNUC__ == 3 &amp;amp;&amp;amp; __GNUC_MINOR__ &amp;gt;= 1))&lt;br /&gt;
#  define GS_DEPRECATED_FUNC __attribute__ ((deprecated))&lt;br /&gt;
#else&lt;br /&gt;
#  define GS_DEPRECATED_FUNC&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
#ifdef __clang__&lt;br /&gt;
#  define GS_UNUSED_IVAR __attribute__((unused))&lt;br /&gt;
#else&lt;br /&gt;
#  define GS_UNUSED_IVAR&lt;br /&gt;
#endif&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
#endif /* __GNUSTEP_GSVERSIONMACROS_H_INCLUDED_ */&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>Awiebe</name></author>
	</entry>
</feed>