<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Recent changes to keywords-volatile</title><link>https://sourceforge.net/p/asil/wiki/keywords-volatile/</link><description>Recent changes to keywords-volatile</description><atom:link href="https://sourceforge.net/p/asil/wiki/keywords-volatile/feed" rel="self"/><language>en</language><lastBuildDate>Thu, 20 Feb 2014 22:55:11 -0000</lastBuildDate><atom:link href="https://sourceforge.net/p/asil/wiki/keywords-volatile/feed" rel="self" type="application/rss+xml"/><item><title>keywords-volatile modified by Will Pittenger</title><link>https://sourceforge.net/p/asil/wiki/keywords-volatile/</link><description>&lt;div class="markdown_content"&gt;&lt;p&gt;When applied the the declaration of any data member, local variable, global variable, or parameter; causes the compiler to ensure the variable is always stored in member.  The compiler will avoid caching it.  This way, external code can be assured it has the latest value in that location.  Furthermore, that external code can make changes and be assured the ASIL code won't have an out of date value.  Not compatible with &lt;strong&gt;&lt;a class="" href="/p/asil/wiki/keywords-const/"&gt;const&lt;/a&gt;&lt;/strong&gt; or &lt;strong&gt;&lt;a class="" href="/p/asil/wiki/keywords-readonly/"&gt;readonly&lt;/a&gt;&lt;/strong&gt;.  Variables of type &lt;strong&gt;&lt;a class="" href="/p/asil/wiki/keywords-expression/"&gt;expression&lt;/a&gt;&lt;/strong&gt; aren't compatible with &lt;strong&gt;volatile&lt;/strong&gt;.  Can't be part of a &lt;strong&gt;&lt;a class="" href="/p/asil/wiki/keywords-typealias/"&gt;typealias&lt;/a&gt;&lt;/strong&gt;.  If you need that, consider rewriting code.&lt;/p&gt;
&lt;div class="codehilite"&gt;&lt;pre&gt;&lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="n"&gt;var&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt; &lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="k"&gt;volatile&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;TypeDescriptor&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;identifier&lt;/span&gt;&lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;&lt;span class="err"&gt;\&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt;&lt;span class="n"&gt;DefaultValue&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;For more on what /TypeDescriptor/ can be, see &lt;a class="" href="../Appendices-Terms-Type%20descriptors"&gt;Type descriptors&lt;/a&gt;.&lt;/p&gt;&lt;/div&gt;</description><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">Will Pittenger</dc:creator><pubDate>Thu, 20 Feb 2014 22:55:11 -0000</pubDate><guid>https://sourceforge.net227110b13ae3056529961f45f81d276f957bb083</guid></item></channel></rss>