<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-7288308194430638596</id><updated>2012-01-31T01:34:42.224-08:00</updated><category term='Unicode'/><category term='程序设计／Programming'/><category term='UTF8'/><category term='语言 Language'/><category term='健康'/><category term='电子书'/><category term='杂项知识／Other knowledge'/><category term='音乐／Music'/><category term='Swedish Word of the Day'/><category term='艺术设计／Art design'/><category term='编程'/><category term='特别网站／Special website'/><category term='小说'/><category term='转换'/><category term='健身'/><category term='摄影/Camera'/><category term='数学理论/ Mathmatics'/><category term='经济／Economy'/><category term='日记'/><category term='跑步'/><category term='UTF16'/><title type='text'>北国风光，千里冰封，万里雪飘</title><subtitle type='html'>Technology and Art</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><link rel='next' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default?start-index=101&amp;max-results=100'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>377</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-7816624380775684288</id><published>2012-01-31T01:34:00.001-08:00</published><updated>2012-01-31T01:34:42.229-08:00</updated><title type='text'>Console in a window, Halflife like console system</title><content type='html'>&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;Adding Console I/O to a Win32 GUI App&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;Windows Developer Journal, December 1997&lt;/span&gt;&lt;/b&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;One of the common misconceptions surrounding Win32 programming is that you must decide early in the design process whether your application will be a console or GUI application. In reality, console applications can create windows and have a message loop just like a GUI application (see "Adding Graphics to Console Applications" by Michael Covington,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'I Times Italic';"&gt;Visual Developer&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, June/July 1997). Alternatively, graphical applications can create and use a console. Although Win32 provides functions for communicating with a console, they are a little clumsy to use and require parameters that are unnecessary for simple text I/O. This article shows how to use standard C/C++ I/O with consoles, and how to work around specific problems in the Visual C++ I/O library.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: medium;"&gt;Win32 Handles versus RTL Handles&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;The standard C I/O package operates on top of whatever I/O services the local operating system provides. Your C program then manipulates handles of type&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;FILE*&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, no matter what the actual details of the physical file I/O are. The file I/O package that Win32 provides uses handles of type&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, so Win32 C implementations of the standard I/O functions must internally associate a&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;with each&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;FILE*&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and eventually call the Win32 API to perform the I/O.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;C predefines the meaning of three handles:&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;. These names refer to&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;FILE*&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;handles that refer to standard input, output, and error output. Win32 provides a similar concept; it provides a function called&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;GetStdHandle()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and you can pass that function one of three constants (&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_INPUT_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_OUTPUT_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, or&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_ERROR_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;) to obtain the&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;associated with standard input, standard output, or the standard error output. Exactly what these handles refer to depends on how your Win32 program was built and marked. These handles could be redirected to files, or they could be associated with a console window. If you launch a program from a DOS box (which is basically a console window), it may end up using that DOS box as its console window by default (that is, writing to standard output produces output in the DOS box window).&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Win32 GUI applications do not, by default, have an associated console window. However, it is possible for your GUI application to explicitly create a console window and then manually associate standard C I/O handles (&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;FILE*&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;) with the appropriate Win32 handles (&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;) so that ordinary C runtime functions can operate on the console. To associate a C file handle with a Win32 file handle, the Visual C++ runtime library provides&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;_open_osfhandle()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;. Given a valid Win32 handle, this function returns an RTL handle that internally operates on the given Win32 handle. This lets you transform the three console handles into compatible C file handles that you can use to redirect&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;to the console.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: medium;"&gt;C++ I/O&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Once&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;are redirected, standard C functions such as&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;printf()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;gets()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;can be used, without change, to communicate with the Win32 console. But what about C++ I/O streams? Since&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cerr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;clog&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;are closely tied to C’s&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, you would expect them to behave similarly. This is half right.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;C++ I/O streams actually come in two flavors: template and non- template. The older non-template version of I/O streams is slowly being replaced by a newer template style of streams first defined by the Standard Template Library (STL) and which are now being absorbed into the ANSI C++ standard. Visual C++ v5 provides both types and allows you to choose between the two by including different header files. STL I/O streams work as you would expect, automatically using any newly redirected&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdio&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;handles. Non-template I/O streams, however, do not work as expected. To discover why, I looked at the source code, conveniently provided on the Visual C++ CD-ROM.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;The problem is that the older I/O streams were designed to use UNIX-style "file descriptors," where integers are used instead of handles (0 for&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, 1 for&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and so on). That’s convenient for UNIX implementations, but Win32 C compilers have to provide yet another I/O layer to represent that style of I/O, since Win32 does not provide a compatible set of functions. In any case, when you call&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;_open_osfhandle()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;to associate a new Win32 handle with (for example)&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, it has no effect on the other layer of I/O code. Hence, file descriptor 1 will continue using the same underlying Win32 handle as before, and sending output to&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;will not produce the desired effect.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Fortunately, the designers of the original I/O stream package foresaw this problem and provided a clean and useful solution. The base class&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;ios&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;provides a static function,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;sync_with_stdio()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, that causes the library to change its underlying file descriptors to reflect any changes in the standard I/O layer. Though this is not strictly necessary for STL I/O streams, it does no harm and lets me write code that works correctly with either the new or old form of I/O streams.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: medium;"&gt;A Redirect Function&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;guicon.cpp&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;(&lt;b&gt;&lt;u&gt;Listing 1&lt;/u&gt;&lt;/b&gt;) and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;guicon.h&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;(&lt;b&gt;&lt;u&gt;Listing 2&lt;/u&gt;&lt;/b&gt;) provide code for redirecting C and C++ I/O to a Win32 console.&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;RedirectIOToConsole()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;does all the work, creating a console and increasing the number of lines buffered with calls to&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;AllocConsole()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;SetConsoleScreenBufferSize()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;respectively. Each process is allowed only one console, so calling&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;AllocConsole()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;multiple times will not produce multiple consoles. Increasing the screen buffer size allows you to scroll back and look at a history of up to&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;MAX_CONSOLE_LINES&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;of text. The code then creates a new&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;FILE*&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;handle for&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_INPUT_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_OUTPUT_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;STD_ERROR_HANDLE&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and the existing&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;are replaced.&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;setvbuf()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;is then called to turn off input and output buffering, effectively flushing the data with each read and write. Last, but not least, a call to&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;ios::sync_with_stdio()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;ensures that&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cerr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;clog&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;are associated with the new&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stderr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;. The code is wrapped in preprocessor conditionals to allow it to be easily compiled out for release applications.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;The code in&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;test.cpp&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;(&lt;b&gt;&lt;u&gt;Listing 3&lt;/u&gt;&lt;/b&gt;) is a sample of using&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;RedirectIOToConsole()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;. It outputs text using the C&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;stdio&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;and C++ I/O streams and uses a simple integer to test input. Additionally, if you are using STL streams it tests the wide character versions of&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cin&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cout&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;cerr&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, and&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;clog&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;. The rest of the code demonstrates how the Visual C++ C runtime debug functions can be used to output useful debugging information to the console. Since Win32 destroys the console when the application exits, I pause for two seconds before exiting so that you can see the last few pieces of output.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Overall, having a console associated with a Win32 GUI application is a very useful tool. Though similar debug text output can be achieved using Win32’s&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'B Letter Gothic Bold';"&gt;OutputDebugString()&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;and DBWin32 (see "A DBWin32 Debugger for Windows" by Andrew Tucker,&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'I Times Italic';"&gt;C/C++ Users Journal&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, October 1996), this console technique is much more portable between the Win32 API flavors (namely Windows 95 and NT) and it provides a method of input as well as output. Another application might be to use the console as a simple debugger that allows you to print out crucial data structures and inspect and change variables without the use of a full-blown interactive debugger. Finally, for those applications whose user interface makes sense as both a console app and a GUI, a command-line switch could allow the user to choose which is appropriate for their situation — something that is not as readily available when using a GUI from a console application.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: medium;"&gt;References&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Covington, Michael. "Adding Graphics to Console Applications,"&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'I Times Italic';"&gt;Visual Developer&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, June/July 1997.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;Tucker, Andrew. "A DBWin32 Debugger for Windows,"&amp;nbsp;&lt;/span&gt;&lt;span style="font-family: 'I Times Italic';"&gt;C/C++ Users Journal&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;, October 1996.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span style="font-family: 'BI Helvetica BoldOblique';"&gt;&lt;/span&gt;&lt;span style="font-family: 'BI Helvetica BoldOblique';"&gt;Andrew Tucker&lt;/span&gt;&lt;span style="font-family: Arial;"&gt;&amp;nbsp;(ast@halcyon.com) is a software engineer in Seatte, WA. His programming interests include compilers, debuggers, and other areas of systems programming.&lt;/span&gt;&lt;br /&gt;&lt;span style="font-family: Arial;"&gt;&lt;/span&gt;&lt;span&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;Listing 1: guicon.cpp -- A console redirection function&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include &lt;windows.h&gt;&lt;/windows.h&gt;&lt;br /&gt;#include &lt;stdio.h&gt;&lt;/stdio.h&gt;&lt;br /&gt;#include &lt;fcntl.h&gt;&lt;/fcntl.h&gt;&lt;br /&gt;#include &lt;io.h&gt;&lt;/io.h&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include &lt;iostream&gt;&lt;/iostream&gt;&lt;br /&gt;#include &lt;fstream&gt;&lt;/fstream&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifndef _USE_OLD_IOSTREAMS&lt;br /&gt;using namespace std;&lt;br /&gt;#endif&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// maximum mumber of lines the output console should have&lt;br /&gt;static const WORD MAX_CONSOLE_LINES = 500;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifdef _DEBUG&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;void RedirectIOToConsole()&lt;br /&gt;{&lt;br /&gt;int hConHandle;&lt;br /&gt;long lStdHandle;&lt;br /&gt;CONSOLE_SCREEN_BUFFER_INFO coninfo;&lt;br /&gt;FILE *fp;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// allocate a console for this app&lt;br /&gt;AllocConsole();&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// set the screen buffer to be big enough to let us scroll text&lt;br /&gt;GetConsoleScreenBufferInfo(GetStdHandle(STD_OUTPUT_HANDLE),&lt;br /&gt;&amp;amp;coninfo);&lt;br /&gt;coninfo.dwSize.Y = MAX_CONSOLE_LINES;&lt;br /&gt;SetConsoleScreenBufferSize(GetStdHandle(STD_OUTPUT_HANDLE),&lt;br /&gt;coninfo.dwSize);&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// redirect unbuffered STDOUT to the console&lt;br /&gt;lStdHandle = (long)GetStdHandle(STD_OUTPUT_HANDLE);&lt;br /&gt;hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);&lt;br /&gt;fp = _fdopen( hConHandle, "w" );&lt;br /&gt;*stdout = *fp;&lt;br /&gt;setvbuf( stdout, NULL, _IONBF, 0 );&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// redirect unbuffered STDIN to the console&lt;br /&gt;lStdHandle = (long)GetStdHandle(STD_INPUT_HANDLE);&lt;br /&gt;hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);&lt;br /&gt;fp = _fdopen( hConHandle, "r" );&lt;br /&gt;*stdin = *fp;&lt;br /&gt;setvbuf( stdin, NULL, _IONBF, 0 );&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// redirect unbuffered STDERR to the console&lt;br /&gt;lStdHandle = (long)GetStdHandle(STD_ERROR_HANDLE);&lt;br /&gt;hConHandle = _open_osfhandle(lStdHandle, _O_TEXT);&lt;br /&gt;fp = _fdopen( hConHandle, "w" );&lt;br /&gt;*stderr = *fp;&lt;br /&gt;setvbuf( stderr, NULL, _IONBF, 0 );&lt;br /&gt;&lt;br /&gt;// make cout, wcout, cin, wcin, wcerr, cerr, wclog and clog&lt;br /&gt;// point to console as well&lt;br /&gt;ios::sync_with_stdio();&lt;br /&gt;}&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#endif&lt;br /&gt;//End of File&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;&lt;br /&gt;Listing 2: guicon.h -- Interface to console redirection function&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifndef __GUICON_H__&lt;br /&gt;#define __GUICON_H__&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifdef _DEBUG&lt;br /&gt;void RedirectIOToConsole();&lt;br /&gt;#endif&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#endif&lt;br /&gt;/* End of File */&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;b&gt;&lt;span style="font-family: Arial; font-size: large;"&gt;Listing 3: test.cpp -- Demonstrating console redirection&lt;/span&gt;&lt;/b&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include &lt;windows.h&gt;&lt;/windows.h&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include &lt;iostream&gt;&lt;/iostream&gt;&lt;br /&gt;#include &lt;fstream&gt;&lt;/fstream&gt;&lt;br /&gt;#include &lt;conio.h&gt;&lt;/conio.h&gt;&lt;br /&gt;#include &lt;stdio.h&gt;&lt;/stdio.h&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifndef _USE_OLD_OSTREAMS&lt;br /&gt;using namespace std;&lt;br /&gt;#endif&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include "guicon.h"&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#include &lt;crtdbg.h&gt;&lt;/crtdbg.h&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;int APIENTRY WinMain(HINSTANCE hInstance,&lt;br /&gt;HINSTANCE hPrevInstance,&lt;br /&gt;LPTSTR lpCmdLine,&lt;br /&gt;int nCmdShow)&lt;br /&gt;{&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifdef _DEBUG&lt;br /&gt;RedirectIOToConsole();&lt;br /&gt;#endif&lt;br /&gt;int iVar;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// test stdio&lt;br /&gt;fprintf(stdout, "Test output to stdout\n");&lt;br /&gt;fprintf(stderr, "Test output to stderr\n");&lt;br /&gt;fprintf(stdout, "Enter an integer to test stdin: ");&lt;br /&gt;scanf("%d", &amp;amp;iVar);&lt;br /&gt;printf("You entered %d\n", iVar);&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;//test iostreams&lt;br /&gt;cout &amp;lt;&amp;lt; "Test output to cout" &amp;lt;&amp;lt; endl;&lt;br /&gt;cerr &amp;lt;&amp;lt; "Test output to cerr" &amp;lt;&amp;lt; endl;&lt;br /&gt;clog &amp;lt;&amp;lt; "Test output to clog" &amp;lt;&amp;lt; endl;&lt;br /&gt;cout &amp;lt;&amp;lt; "Enter an integer to test cin: ";&lt;br /&gt;cin &amp;gt;&amp;gt; iVar;&lt;br /&gt;cout &amp;lt;&amp;lt; "You entered " &amp;lt;&amp;lt; iVar &amp;lt;&amp;lt; endl;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;#ifndef _USE_OLD_IOSTREAMS&lt;br /&gt;// test wide iostreams&lt;br /&gt;wcout &amp;lt;&amp;lt; L"Test output to wcout" &amp;lt;&amp;lt; endl;&lt;br /&gt;wcerr &amp;lt;&amp;lt; L"Test output to wcerr" &amp;lt;&amp;lt; endl;&lt;br /&gt;wclog &amp;lt;&amp;lt; L"Test output to wclog" &amp;lt;&amp;lt; endl;&lt;br /&gt;wcout &amp;lt;&amp;lt; L"Enter an integer to test wcin: ";&lt;br /&gt;wcin &amp;gt;&amp;gt; iVar;&lt;br /&gt;wcout &amp;lt;&amp;lt; L"You entered " &amp;lt;&amp;lt; iVar &amp;lt;&amp;lt; endl;&lt;br /&gt;#endif&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;// test CrtDbg output&lt;br /&gt;_CrtSetReportMode( _CRT_ASSERT, _CRTDBG_MODE_FILE );&lt;br /&gt;_CrtSetReportFile( _CRT_ASSERT, _CRTDBG_FILE_STDERR );&lt;br /&gt;_CrtSetReportMode( _CRT_ERROR, _CRTDBG_MODE_FILE );&lt;br /&gt;_CrtSetReportFile( _CRT_ERROR, _CRTDBG_FILE_STDERR);&lt;br /&gt;_CrtSetReportMode( _CRT_WARN, _CRTDBG_MODE_FILE );&lt;br /&gt;_CrtSetReportFile( _CRT_WARN, _CRTDBG_FILE_STDERR);&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;_RPT0(_CRT_WARN, "This is testing _CRT_WARN output\n");&lt;br /&gt;_RPT0(_CRT_ERROR, "This is testing _CRT_ERROR output\n");&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;_ASSERT( 0 &amp;amp;&amp;amp; "testing _ASSERT" );&lt;br /&gt;_ASSERTE( 0 &amp;amp;&amp;amp; "testing _ASSERTE" );&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;Sleep(2000);&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Courier New'; font-size: x-small;"&gt;return 0;&lt;br /&gt;}&lt;br /&gt;//End of File&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style';"&gt;&lt;/span&gt;&lt;span style="font-family: 'Bookman Old Style'; font-size: x-small;"&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-7816624380775684288?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/7816624380775684288/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2012/01/console-in-window-halflife-like-console.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/7816624380775684288'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/7816624380775684288'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2012/01/console-in-window-halflife-like-console.html' title='Console in a window, Halflife like console system'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-477756704313929198</id><published>2012-01-31T00:38:00.001-08:00</published><updated>2012-01-31T00:38:15.473-08:00</updated><title type='text'>Quaternion</title><content type='html'>←BackUnder Construction...Related Topics: Euler's Equation Quaternion is a geometrical operator to represent the relationship (relative length and relative orientation) between two vectors in 3D space. William Hamilton invented Quaternion and completed the calculus of Quaternions to generalize complex numbers in 4 dimension (one real part and 3 imaginary numbers). In this article, we focus on rotations of 3D vectors because Quaternion implementation for 3D rotation is usually simpler, cheaper and better behaved than other methods.Background of QuaternionUnderstanding of QuaternionQuaternion Algebra3D Rotation with QuaternionSlerpBackground of QuaternionEuler's equation (formula) can be used to represent a 2D point with a length and angle on a complex plane. Multiplication of 2 complex numbers implies a rotation in 2D. One may think instantly it can be extended to 3D rotation by adding additional dimension. William Hamilton initially studied it by adding an additional imaginary number, j to generalize complex numbers to 3D. However, the set of 3 dimensional complex numbers is not closed under multiplication. For example, the multiplication of i and j cannot be represented as the form of a+ib+jc. If multiplication is closed, then there exist a, b, c ∈ R that satisfies ij=a+ib+jc.  The equation c2+1=0 gives the contradiction. There is no real number c to satisfy c2+1=0.Later, Hamilton realized 4 dimensional complex numbers are required for multiplication to be closed. And, he denoted this 4D complex number set as Quaternion. (In mathematics, each algebra has twice the dimension of the previous one. Therefore, the higher number set of complex number is quaternion, and the next number set is octonion.)Now, the above example now satisfies as ij=0+i0+j0+k1. The condition of 3 imaginary numbers is explained later, in Quadrantal vectors.Understanding of QuaternionDefinition Definition of Quaternion operatorHamilton's motivation was to create a geometrical operator to transform from a vector to the other in 3D space. This operator is the geometric quotient (ratio) between two vectors that changes the length and the orientation, and it is called a Quaternion because the operation is required 4 parameters. , or,  (Note that this notation is not same as numerical division nor multiplication. Instead, it is translated as "the quaternion operator q on  to produce , or the operator q to convert  into  ".)Tensor and VersorWhen  is transformed to vector , quaternion operator performs 2 distinct operations: 1. Tensor: scaling the length of , so as to make it of the same length as . 2. Versor: rotating , so as to cause it to coincide with  in direction. These 2 opearions can be symbolically represented  (tensor of q) and  (versor of q) respectively. The order of these two operations does not make any difference of the result. The combined tensor and versor operation requires 4 numbers; 1 for scaling, 1 for rotation angle, 2 additional angles to determine the orientation of the rotation plane. For example, a xy-plane is rotated about x and y axis. But, rotation along z axis does not change the orientation of the xy plane. Tensor operatorTensor Tensor of q is the geometric quotient (ratio) between the lengths of 2 parallel vectors. It changes the scale of the vector, but, keeps the orientation of the vector unchanged. Versor operatorVersor Versor of q is the geometric quotient of 2 non-parallel vectors of equal length. It represents the relative orientation of one vector with respect to the other vector, but, it does not change the length of the vector.Expression with unit vectors Quaternion with unit vectorsTo investigate the quaternion operator deeper, let  and  as unit vectors along and . so that And, draw AC perpendicular to , and let the unit vector along  be . Therefore,  becomes  and  . Since  , we substitute  and  in the above equation, then we have a quaternion,  ;  Vector of Rotation axisThe last term contains the geometric quotient  of two unit vectors at right angles (90 degree) to each other. This quotient represents a unit vector perpendicular to the plane of  and . (Think of cross product of 2 vectors) This unit vector is indicating the rotation axis of the plane and the direction of rotation. If we define it , the above equation becomes From this equation, A/B is tensor (scaling) operation of a quaternion, and  is versor (rotation) operator of a quaternion. Note that versor of q is very similar to Euler's equation. Euler's equation contains an imaginary number i, but a quaternion has a vector instead, which is the rotation axis perpendicular to its rotation plane.Thus, a quaternion is also expressed as the sum of scalar S(q) and vector parts U(q);  Quaternion can be also written as a 2-tuple form, [s, v]. A unit quaternion can be represented as , because tensor of q is 1 (no scaling).Quadrantal vectors, i j k Quadrantal vectorsLet i, j, k represent unit vectors orthogonal (perpendicular) each other. We define multiplications and divisions as rotating a unit vector to another at right angle. Note that, this multiplication and division is not numeric algebra. This kind of multiplication and quotient is called geometric. Thus, production or quotient of two unit vectors at right angles to each other produces a unit vector, perpendicular to their plane. And, it reads as i operating on j (or, rotating from i to j) produces k. In same manner, we can write other multiplications and divisions; The square of a unit vector can be defined from above equations;  In same manner, Also, ijk can be defined as -1 using above multiplication table and square of unit vector. Quaternion AlgebraHere, the basic quaternion mathematics is described. These algebraic definitions and properties are specially required for rotation in 3D space, which describe in the next section. You may skip this section and move on the next section. And, come back later if you need to review a specific definition or property.1. Addition2. MultiplicationNote that quaternion multiplication is not commutative, however, multiplication is associative and distributive across addition. 3. Scalar MultiplicationUnlike quaternion multiplication, scalar multiplication is commutative.4. SubtractionQuaternion subtraction can be derived from scalar multiplication and quaternion addition. 5. ConjugateQuaternion congugate is defined by negating the vector part of the quaternion.  Note that the multiplication of a quaternion and its conjugate is commutative.6. NormThe norm of a quaternion is defined by; The norm of quaternion is multiplicative meaning that the norm of the multiplication of multiple quaternions equals to the multiplication of the norms of quaternions. 7. InverseThe inverse of a quaternion is defined to be;  The quaternion inverse makes it possible to divide two quaternions.8. Unit Quaternion Note that the inverse of a unit quaternion equals to the conjugate of the unit quaternion.3D Rotation with QuaternionIn 2D, the multiplication of two complex numbers implies 2D rotation. When z=x+iy is multiplied by , the length of z' remains same (|z|=|z'|), but the angle of z' is added by θ. (See details in Euler's equation.)However, multiplying a quaternion p by a unit quaternion q does not conserve the length (norm) of the vector part of the quaternion p. For example; Thus, we need a special multiplication for 3D rotations that is length-conserving transformation. For this reason, we multiply the unit quaternion q at the front of p and multiplying q-1 at the back of p, in order to cancel out the length changes. This special double multiplication is called "conjugation by q".If q is a unit quaternion and p = [s, v], then the scalar (s) and the length of v, |v| are unchanged after conjugation by q. For the above example; ProofIf p = [s, v] and p' = qpq-1, then p' = [s, v'] where |v| = |v'|The proof takes 3 steps. First, we show S(p)=S(p') for p=[s, 0], then for p=[0, v]. Finally, both results are used to show S(p)=S(p') for p=[s, v]=[s, 0]+[0, v].1. If p has a scalar part only p = [s, 0], then 2. If p has a vector part only p = [0, v], then the scalar part of qpq-1 can be computed by 2S(q)=q+q*. 3. If p = [s, v] = [s, 0] + [0, v], then Since we found that the scalar parts of p and p' are same, the norm of p' is;  © 2008 Song Ho Ahn  ←Back&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-477756704313929198?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/477756704313929198/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2012/01/quaternion.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/477756704313929198'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/477756704313929198'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2012/01/quaternion.html' title='Quaternion'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-4727618869106861803</id><published>2012-01-31T00:36:00.003-08:00</published><updated>2012-01-31T00:36:35.296-08:00</updated><title type='text'>Convolution</title><content type='html'>←BackConvolutionConvolution is the most important and fundamental concept in signal processing and analysis. By using convolution, we can construct the output of system for any arbitrary input signal, if we know the impulse response of system. How is it possible that knowing only impulse response of system can determine the output for any given input signal? We will find out the meaning of convolution.Related Topics: Window Filters Download: conv1d.zip, conv2d.zipDefinitionImpulse Function DecompositionImpulse ResponseBack to the DefinitionConvolution in 1DC++ Implementation for Convolution 1DConvolution in 2DSeparable Convolution 2DC++ Algorithm for Convolution 2DDefinitionFirst, let's see the mathematical definition of convolution in discrete time domain. Later we will walk through what this equation tells us. (We will discuss in discrete time domain only.)  where x[n] is input signal, h[n] is impulse response, and y[n] is output. * denotes convolution. Notice that we multiply the terms of x[k] by the terms of a time-shifted h[n] and add them up. The keystone of understanding convolution is laid behind impulse response and impulse decomposition.Impulse Function DecompositionIn order to understand the meaning of convolution, we are going to start from the concept of signal decomposition. The input signal is decomposed into simple additive components, and the system response of the input signal results in by adding the output of these components passed through the system.In general, a signal can be decomposed as a weighted sum of basis signals. For example, in Fourier Series, any periodic signal (even rectangular pulse signal) can be represented by a sum of sine and cosine functions. But here, we use impulse (delta) functions for the basis signals, instead of sine and cosine.Examine the following example how a signal is decomposed into a set of impulse (delta) functions. Since the impulse function, δ[n] is 1 at n=0, and zeros at n ≠ 0. x[0] can be written to 2·δ[n]. And, x[1] will be 3·δ[n-1], because δ[n-1] is 1 at n=1 and zeros at others. In same way, we can write x[2] by shifting δ[n] by 2, x[2] = 1·δ[n-2]. Therefore, the signal, x[n] can be represented by adding 3 shifted and scaled impulse functions. In general, a signal can be written as sum of scaled and shifted delta functions; Impulse ResponseImpulse response is the output of a system resulting from an impulse function as input. And it is denoted as h[n]. If the system is time-invariant, the response of a time-shifted impulse function is also shifted as same amount of time.  For example, the impulse response of δ[n-1] is h[n-1]. If we know the impulse response h[n], then we can immediately get the impulse response h[n-1] by shifting h[n] by +1. Consequently, h[n-2] results from shifting h[n] by +2.If the system is linear (especially scalar rule), a scaled in input signal causes an identical scaling in the output signal.  For instance, the impulse response of 3·δ[n] is just multiplying by 3 to h[n].If the input has 3 components, for example, a·δ[n] + b·δ[n-1] + c·δ[n-2], then the output is simply a·h[n] + b·h[n-1] + c·h[n-2]. This is called additive property of linear system, thus, it is valid only on the linear system. Back to the DefinitionBy combining the properties of impulse response and impulse decomposition, we can finally construct the equation of convolution. In linear and time-invariant system, the response resulting from several inputs can be computed as the sum of the responses each input acting alone.  For example, if input signal is x[n] = 2·δ[n] + 3·δ[n-1] + 1·δ[n-2], then the output is simply y[n] = 2·h[n] + 3·h[n-1] + 1·h[n-2]. Therefore, we now clearly see that if the input signal is , then the output will be . Note one condition; convolution works on the linear and time invariant system.To summarize, a signal is decomposed into a set of impulses and the output signal can be computed by adding the scaled and shifted impulse responses.Furthermore, there is an important fact under convolution; the only thing we need to know about the system's characteristics is the impulse response of the system, h[n]. If we know a system's impulse response, then we can easily find out how the system reacts for any input signal.Convolution in 1DLet's start with an example of convolution of 1 dimensional signal, then find out how to implement into computer programming algorithm.x[n] = { 3, 4, 5 } h[n] = { 2, 1 }x[n] has only non-zero values at n=0,1,2, and impulse response, h[n] is not zero at n=0,1. Others which are not listed are all zeros. Input: x[n]  Impulse Response: h[n]One thing to note before we move on: Try to figure out yourself how this system behaves, by only looking at the impulse response of the system. When the impulse signal is entered the system, the output of the system looks like amplifier and echoing. At the time is 0, the intensity was increased (amplified) by double and gradually decreased while the time is passed.From the equation of convolution, the output signal y[n] will be . Let's compute manually each value of y[0], y[1], y[2], y[3], ...     Output: y[n]Notice that y[0] has only one component, x[0]h[0], and others are omitted, because others are all zeros at k ≠ 0. In other words, x[1]h[-1] = x[2]h[-2] = 0. The above equations also omit the terms if they are obviously zeros. If n is larger than and equal to 4, y[n] will be zeros. So we stop here to compute y[n] and adding these 4 signals (y[0], y[1], y[2], y[3]) produces the output signal y[n] = {6, 11, 14, 5}.Let's look more closely the each output. In order to see a pattern clearly, the order of addition is swapped. The last term comes first and the first term goes to the last. And, all zero terms are ignored.y[0] = x[0]·h[0] y[1] = x[1]·h[0] + x[0]·h[1] y[2] = x[2]·h[0] + x[1]·h[1] y[3] = x[3]·h[0] + x[2]·h[1]Can you see the pattern? For example, y[2] is calculated from 2 input samples; x[2] and x[1], and 2 impulse response samples; h[0] and h[1]. The input sample starts from 2, which is same as the sample point of output, and decreased. The impulse response sample starts from 0 and increased.Based on the pattern that we found, we can write an equation for any sample of the output; where i is any sample point and k is the number of samples in impulse response. For instance, if an impulse response has 4 samples, the sample of output signal at 9 is; y[9] = x[9]·h[0] + x[8]·h[1] + x[7]·h[2] + x[6]·h[3] Notice the first sample, y[0] has only one term. Based on the pattern that we found, y[0] is calculated as: y[0] = x[0]·h[0] + x[-1]·h[1]. Because x[-1] is not defined, we simply pad it to zero.C++ Implementation for Convolution 1DImplementing the convolution algorithm is quite simple. The code snippet is following;for ( i = 0; i &lt; sampleCount; i++ ){    y[i] = 0;                       // set to zero before sum    for ( j = 0; j &lt; kernelCount; j++ )    {        y[i] += x[i - j] * h[j];    // convolve: multiply and accumulate    }}However, you should concern several things in the implementation. Watch out the range of input signal. You may be out of bound of input signal, for example, x[-1], x[-2], and so on. You can pad zeros for those undefined samples, or simply skip the convolution at the boundary. The results at the both the beginning and end edges cannot be accurate anyway. Second, you need rounding the output values, if the output data type is integer and impulse response is floating point number. And, the output value may be exceeded the maximum or minimum value. If you have unsigned 8-bit integer data type for output signal, the range of output should be between 0 and 255. You must check the value is greater than the minimum and less than the maximum value. Download the 1D convolution routine and test program. conv1d.zipConvolution in 2D2D convolution is just extension of previous 1D convolution by convolving both horizontal and vertical directions in 2 dimensional spatial domain. Convolution is frequently used for image processing, such as smoothing, sharpening, and edge detection of images. The impulse (delta) function is also in 2D space, so δ[m, n] has 1 where m and n is zero and zeros at m,n ≠ 0. The impulse response in 2D is usually called "kernel" or "filter" in image processing.  The second image is 2D matrix representation of impulse function. The shaded center point is the origin where m=n=0.Once again, a signal can be decomposed into a sum of scaled and shifted impulse (delta) functions;  For example, x[0, 0] is x[0, 0]·δ[m, n], x[1, 2] is x[1, 2]·δ[m-1, n-2], and so on. Note that the matrices are referenced here as [column, row], not [row, column]. M is horizontal (column) direction and N is vertical (row) direction.And, the output of linear and time invariant system can be written by convolution of input signal x[m, n], and impulse response, h[m, n];  Notice that the kernel (impulse response) in 2D is center originated in most cases, which means the center point of a kernel is h[0, 0]. For example, if the kernel size is 5, then the array index of 5 elements will be -2, -1, 0, 1, and 2. The origin is located at the middle of kernel.Examine an example to clarify how to convolve in 2D space. Let's say that the size of impulse response (kernel) is 3x3, and it's values are a, b, c, d,... Notice the origin (0,0) is located in the center of kernel. Let's pick a simplest sample and compute convolution, for instance, the output at (1, 1) will be; It results in sum of 9 elements of scaled and shifted impulse responses. The following image shows the graphical representation of 2D convolution. 2D ConvolutionNotice that the kernel matrix is flipped both horizontal and vertical direction before multiplying the overlapped input data, because x[0,0] is multiplied by the last sample of impulse response, h[1,1]. And x[2,2] is multiplied by the first sample, h[-1,-1].Exercise a little more about 2D convolution with another example. Suppose we have 3x3 kernel and 3x3 input matrix. Input  Kernel  OutputThe complete solution for this example is here; Example of 2D ConvolutionBy the way, the kernel in this example is called Sobel filter, which is used to detect the horizontal edge lines in an image. See more details in the window filters.Separable Convolution 2DIn convolution 2D with M×N kernel, it requires M×N multiplications for each sample. For example, if the kernel size is 3x3, then, 9 multiplications and accumulations are necessary for each sample. Thus, convolution 2D is very expensive to perform multiply and accumulate operation. However, if the kernel is separable, then the computation can be reduced to M + N multiplications. A matrix is separable if it can be decomposed into (M×1) and (1×N) matrices. For example; And, convolution with this separable kernel is equivalent to;  (Proof of Separable Convolution 2D)As a result, in order to reduce the computation, we perform 1D convolution twice instead of 2D convolution; convolve with the input and M×1 kernel in vertical direction, then convolve again horizontal direction with the result from the previous convolution and 1×N kernel. The first vertical 1D convolution requires M times of multiplications and the horizontal convolution needs N times of multiplications, altogether, M+N products. However, the separable 2D convolution requires additional storage (buffer) to keep intermediate computations. That is, if you do vertical 1D convolution first, you must preserve the results in a temporary buffer in order to use them for horizontal convolution subsequently. Notice that convolution is associative; the result is same, even if the order of convolution is changed. So, you may convolve horizontal direction first then vertical direction later. Gaussian smoothing filter is a well-known separable matrix. For example, 3x3 Gaussian filter is;  3x3 Gaussian Kernel C++ Algorithm for Convolution 2DWe need 4 nested loops for 2D convolution instead of 2 loops in 1D convolution. // find center position of kernel (half of kernel size)kCenterX = kCols / 2;kCenterY = kRows / 2;for(i=0; i &lt; rows; ++i)              // rows{    for(j=0; j &lt; cols; ++j)          // columns    {        sum = 0;                     // init to 0 before sum        for(m=0; m &lt; kRows; ++m)     // kernel rows        {            mm = kRows - 1 - m;      // row index of flipped kernel            for(n=0; n &lt; kCols; ++n) // kernel columns            {                nn = kCols - 1 - n;  // column index of flipped kernel                // index of input signal, used for checking boundary                ii = i + (m - kCenterY);                jj = j + (n - kCenterX);                // ignore input samples which are out of bound                if( ii &gt;= 0 &amp;&amp; ii &lt; rows &amp;&amp; jj &gt;= 0 &amp;&amp; jj &lt; cols )                out[i][j] += in[ii][jj] * kernel[mm][nn];            }        }    }}The above snippet code is simple and easiest way to understand how convolution works in 2D. But it may be the slowest implementation.Take a look at a real example; convolution with 256x256 image and 5x5 Gaussian filter. The source image is uncompressed raw, 8-bit (unsigned char) grayscale image. And again, Gaussian kernel is separable; 5x5 Gaussian KernelOn my system (AMD 64 3200+ 2GHz), normal convolution took about 10.3 ms and separable convolution took only 3.2 ms. You can see how much separable convolution is faster compared to normal convolution.Download 2D convolution application and source code here: conv2d.zip The program uses OpenGL to render images on the screen.© 2005 Song Ho Ahn  ←Back&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-4727618869106861803?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/4727618869106861803/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2012/01/convolution.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/4727618869106861803'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/4727618869106861803'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2012/01/convolution.html' title='Convolution'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-2929750816631558028</id><published>2012-01-31T00:36:00.001-08:00</published><updated>2012-01-31T00:36:09.680-08:00</updated><title type='text'>Variety of Systems</title><content type='html'>Linear SystemTime-Invariant SystemCausal SystemLinear SystemSystems that satisfy both homogeneity and additivity are considered to be linear system.Homogeneity (scalar rule) means that as the strength of input signal is increased (scaled), then the strength of output signal will be also increased (scaled) with same amount. Additivity denotes that the output of system can be computed as sum of the responses resulting from each input signal acting alone. Taking these two rules together is called the principle of superposition. Therefore, the linear system can be presented as; If input signal can be decomposed as a weighted sum of basis signals, the output of linear system is; ExamplesDetermine if it is linear. 1)  sol&gt;  ∴ linear system2)  sol&gt;  ∴ non-linear system  Time-Invariant SystemA system is time-invariant if a time shift in input signal causes an identical time shift in output signal. ExamplesDetermine Time-Invariant. 1)  sol&gt; 2)  sol&gt;   Causal SystemA system is causal if the output at any time depends on values of the input at only the present and past times. In other words, the causal system does not anticipate future values of input. For example, the output y(t0) depends on input x(t) for t ≤ t0.  Non-Causal SystemThis is an example of non-causal system, because the output responds ahead at t = t0 before input is defined. A causal system is characterized by an impulse response h(t) that is zeros for t &lt; 0.Examples1)  Causal, because t ≥ t-22)  Non-Causal, because t  t+1  © 2005 Song Ho Ahn  ←Back&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-2929750816631558028?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/2929750816631558028/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2012/01/variety-of-systems.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/2929750816631558028'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/2929750816631558028'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2012/01/variety-of-systems.html' title='Variety of Systems'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-7005177682538868259</id><published>2012-01-31T00:35:00.001-08:00</published><updated>2012-01-31T00:35:52.056-08:00</updated><title type='text'>Types of Signals</title><content type='html'>Continuous-Time SignalDiscrete-Time SignalPeriodic SignalOrthogonal SignalEven and Odd SignalEnergy Signal &amp; Power SignalContinuous Time SignalIf the independent variable (t) is continuous, then the corresponding signal is continuous time signal.   Discrete Time SignalIf the independent variable (t) takes on only discrete values, for example t = ±1, ±2, ±3, ...   Periodic SignalIf the transformed signal  is same as x(t), then the signal is periodic.  where T is fundamental period (the smallest period) of signal x(t) In discrete-time, the periodic signal is;   Orthogonal SignalEach component signal has no relationship with others. Orthogonal signal is denoted as φ(t).  Even and Odd SignalOne of characteristics of signal is symmetry that may be useful for signal analysis. Even signals are symmetric around vertical axis, and Odd signals are symmetric about origin. Even Signal: A signal is referred to as an even if it is identical to its time-reversed counterparts; x(t) = x(-t). Odd Signal: A signal is odd if x(t) = -x(-t). An odd signal must be 0 at t=0, in other words, odd signal passes the origin. Using the definition of even and odd signal, any signal may be decomposed into a sum of its even part, xe(t), and its odd part, xo(t), as follows:  It is an important fact because it is relative concept of Fourier series. In Fourier series, a periodic signal can be broken into a sum of sine and cosine signals. Notice that sine function is odd signal and cosine function is even signal.Example Energy Signal &amp; Power SignalIn physics, energy is work and power is work per time; Work = Force × Displacement Power = Work / Time For Kinetic energy is given by In an electrical signal, the instantaneous power for the voltage across the resistance R and its energy are defined; In signal processing, total energy of signal x(t) is defined as similar way; (Notice that it is square of absolute value.)  where |x(t)| denotes the magnitude of x(t). It is necessary to get a scalar quantity for complex signal, because magnitude of complex number is defined as  .And, it is also squared because of common convention to use similar terminology for any signal (look at the definitions of kinetic and electrical signal energy). Therefore, the energy of a signal is defined as a sum of square of magnitude.The average power of signal is defined by; A signal can be categorized into energy signal or power signal: An energy signal has a finite energy, 0 &lt; E &lt; ∞. In other words, energy signals have values only in the limited time duration. For example, a signal having only one square pulse is energy signal. A signal that decays exponentially has finite energy, so, it is also an energy signal. The power of an energy signal is 0, because of dividing finite energy by infinite time (or length).On the contrary, the power signal is not limited in time. It always exists from beginning to end and it never ends. For example, sine wave in infinite length is power signal. Since the energy of a power signal is infinite, it has no meaning to us. Thus, we use power (energy per given time) for power signal, because the power of power signal is finite, 0 &lt; P &lt; ∞.Examples1)  E = 1, and  , ∴ Energy signal.2)  E = ∞ , and  , ∴ Power signal.© 2005 Song Ho Ahn  ←Back&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-7005177682538868259?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/7005177682538868259/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2012/01/types-of-signals.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/7005177682538868259'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/7005177682538868259'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2012/01/types-of-signals.html' title='Types of Signals'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-1867145275096076472</id><published>2011-12-16T01:07:00.000-08:00</published><updated>2011-12-16T01:07:44.611-08:00</updated><title type='text'>CVSTortoise 避免重复输入密码， 并且安全的方法</title><content type='html'>&lt;br /&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Tired of typing your password into SSH all the time? Yes, you can apply common, open-source tools to do this for any application of SSH. Isn't open software cool! Read-on...&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;General SSH questions, a bit of background on SSH and specifically Public Key Cryptography, and versions of SSH clients can be found in&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-faq.php"&gt;my mini-SSH FAQ.&lt;/a&gt;&lt;/div&gt;&lt;ul style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#UsingSSHIdentities"&gt;Creating and Using SSH Identities&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#OpenSSH"&gt;Configuring OpenSSH to use Identities&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#InstallingOpenSSH"&gt;Installing OpenSSH&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ConfiguringOpenSSH"&gt;Configuring OpenSSH&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#PuTTY"&gt;Installing, Configuring and Using PuTTY&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#InstallingPuTTY"&gt;Installing PuTTY&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ConfiguringPuTTY"&gt;Configuring PuTTY&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#PuTTYGen"&gt;Generating your Public/Private Keys&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#PuTTYKeyToServer"&gt;Configure Server's&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#PuTTYAgent"&gt;Starting the PuTTY-Agent (Pageant)&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#AutoStartPageant"&gt;Auto-Start PuTTY-Agent Upon Login&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ImportExportKeys"&gt;Using PuTTY Keys for OpenSSH and vice-versa&lt;/a&gt;&lt;ul&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ImportOpenSSH"&gt;To import a OpenSSH key into PuTTY:&lt;/a&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ExportOpenSSH"&gt;To export a PuTTY key for OpenSSH:&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ul&gt;&lt;h2 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 22px; font-style: italic; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="UsingSSHIdentities"&gt;Creating and Using SSH Identities&lt;/a&gt;&lt;/h2&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;The first step in secure, password-free SSH is to create an SSH identity. An SSH identity is a private/public key pair, which are similar in functionality to to PGP keys, or SSL keys and SSL certificates. The public key of the identity pair will be placed on the remote servers to which you wish to connect and the private key will remain on the client or local machine. When you connect from your client, the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;program will offer to use identity-based authentication for each key it has available. If the server sees a corresponding public key on its end, it tells the client to prove that it has the private key, which is does by a mathematically rigourous means that we can ignore at this time.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;We can do this with either&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#OpenSSH"&gt;OpenSSH&lt;/a&gt;&amp;nbsp;or with&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#PuTTY"&gt;PuTTY&lt;/a&gt;.&lt;/div&gt;&lt;h3 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 19px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="OpenSSH"&gt;Configuring OpenSSH to use Identities&lt;/a&gt;&lt;/h3&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="InstallingOpenSSH"&gt;Installing OpenSSH&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;If you are running on a UNIX box without SSH (many do by default), have your system administrator build and install OpenSSH. A version of this is installed by default on most Linux platforms, but you or your system admistrator should update it as there are often security-related patches made available on the OpenSSH web site.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;If you are running on a Windows platform and use CYGWIN, you should already have SSH installed. Again, make sure you keep up with new releases of the SSH package (via the CYGWIN installer) for security.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ConfiguringOpenSSH"&gt;Configuring OpenSSH&lt;/a&gt;&lt;/h4&gt;&lt;ol style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;&lt;strong&gt;Create the identiy-key pair:&lt;/strong&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;cd ~/.ssh&lt;br /&gt;ssh-keygen&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;This creates your private/public key pair: (&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/id_rsa&lt;/tt&gt;&amp;nbsp;and&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/id_rsa.pub&lt;/tt&gt;). The program will ask you for a passphrase to encode your private key; be sure to use a good passphrase of more than 10 or so characters. If you choose not to use a passphrase, you will&amp;nbsp;&lt;strong&gt;not&lt;/strong&gt;&amp;nbsp;have to implement the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;or&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;putty-agent&lt;/tt&gt;&amp;nbsp;steps below,&amp;nbsp;&lt;strong&gt;however I do not recommend this&lt;/strong&gt;; Without a passphrase, your private key can be easily read by anyone and may be used to impersonate you on any server where you place your public key.&lt;/div&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;Instead of RSA, you may use DSA (&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;-t dsa&lt;/tt&gt;) either is fine, though I would&amp;nbsp;&lt;strong&gt;not&lt;/strong&gt;&amp;nbsp;recommend using RSA1 for security reasons.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Copy the public key to the remote server:&lt;/strong&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;scp ~/.ssh/id_rsa.pub &lt;em&gt;user@remote.host&lt;/em&gt;:pubkey.txt&lt;br /&gt;ssh &lt;em&gt;user@remote.host&lt;/em&gt;&lt;br /&gt;mkdir ~/.ssh&lt;br /&gt;chmod 700 .ssh&lt;br /&gt;cat pubkey.txt &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;rm ~/pubkey.txt&lt;br /&gt;chmod 600 ~/.ssh/*&lt;br /&gt;exit&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;Be sure to replace&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;&lt;em&gt;user@remote.host&lt;/em&gt;&lt;/tt&gt;&amp;nbsp;with the appropriate username and host. This copies your&amp;nbsp;&lt;strong&gt;public&lt;/strong&gt;&amp;nbsp;key to the remote server machine. Public keys are those with the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;.pub&lt;/tt&gt;&amp;nbsp;extension. You need to do this for each server into which you wish to login via SSH without a password. Alternatively, you could now copy the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file to other systems to allow access from the local system. Also, if you have multiple keys, you can add the public key of each pair to the&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;authorized_keys&lt;/tt&gt;&amp;nbsp;file, either by appending to the file or using a text editor. If you use cut and paste to copy the key, make sure each key entry is a single line in the file. Remember, the keys to add are always the public keys (from files with the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;.pub&lt;/tt&gt;extension).&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Test the remote public key:&lt;/strong&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;ssh &lt;em&gt;user@remote.host&lt;/em&gt;&lt;br /&gt;&lt;em&gt;&lt;enter-private-key-passphrase-at-prompt&gt;&lt;/enter-private-key-passphrase-at-prompt&gt;&lt;/em&gt;&lt;br /&gt;exit &lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;This is a test -- This time, instead of your password on the remote host, SSH should prompt you for the passphrase for your private key.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;&lt;strong&gt;Start the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace;"&gt;ssh-agent&lt;/tt&gt;:&lt;/strong&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;Now we get to the meat of this document and figure out how to avoid typing either a password or a passphrase every time...&lt;/div&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;eval `ssh-agent`&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;This starts the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;, which is a process which runs in the background and listens for "requests" from&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;clients needing your private key. The output of&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;is a set of environment variables which need to be&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;eval&lt;/tt&gt;-ed in order for future&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;clients to know that there is a server out there.&amp;nbsp;&lt;strong&gt;Do not start more than one instance of&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace;"&gt;ssh-agent&lt;/tt&gt;.&lt;/strong&gt;&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Add your private key to the agent's cache:&lt;/strong&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;ssh-add&lt;br /&gt;&lt;em&gt;&lt;enter-private-key-passphrase-at-prompt&gt;&lt;/enter-private-key-passphrase-at-prompt&gt;&lt;/em&gt;&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;This adds your private key(s) to the list of keys held by&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;.&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-add&lt;/tt&gt;&amp;nbsp;will ask you for the passphrase of each key it is adding to the agent's pool. Note that this need only be done once after you start the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;daemon.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;strong&gt;Test the connection again:&lt;/strong&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;ssh &lt;em&gt;user@remote.host&lt;/em&gt;&lt;br /&gt;exit&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;This is a test -- This time you should not have to type any passwords or passphrases as&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;should get your private key from the agent daemon.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;That's all there is to setting up&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;and&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;to use public-key encryption and avoid entering your password multiple times a day. Any application that uses SSH should no longer require passwords. All that remains is to configure CVS to use SSH.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;You should know that&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;stores your private key(s) in memory in the clear (read: unencrypted) to give to&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;clients that request it. Note that the mechanisms by which&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;talks to&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh&lt;/tt&gt;&amp;nbsp;are based upon UNIX sockets and UNIX system permissions protect those against unauthorized access, so you need not worry about this. There is some question about the security of this mechanism under CYGWIN on Win32 platforms, but I feel the risks are not greater than the benefits, especially if you are the only person with access to your Windows box. Just lock your screen when you are not present - common sence.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;One other tweak one can make: Realize that by using this "manual" approach of starting the agent and evaluating the results in your shell, only sub-shells of the current shell will know about the running&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;. An alternative approach that I use is to run a short script that starts the agent daemon if it is not already running and sets the appropriate environment variables.&lt;/div&gt;&lt;ol start="7" style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;&lt;strong&gt;Setup an automated start-agent script:&lt;/strong&gt;&lt;/div&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;First,&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/downloads/sssha"&gt;click here for my&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;sssha&lt;/tt&gt;&amp;nbsp;script.&lt;/a&gt;&amp;nbsp;It is a BASH shell script, so if you use a different login shell, you will have to modify it. Once you download it, place it in your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/&lt;/tt&gt;&amp;nbsp;directory and add this to your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.bashrc&lt;/tt&gt;&amp;nbsp;configuration script, presumably at or near the end:&lt;/div&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;# setup ssh-agent, if appropriate&lt;br /&gt;if [ -f "$HOME/.ssh/sssha" ]; then&lt;br /&gt;   source $HOME/.ssh/sssha&lt;br /&gt;fi &lt;/pre&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Finally, if you are truly paranoid, make sure to kill your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent&lt;/tt&gt;&amp;nbsp;when you are done using any machine on which you have started one. This can be accomplished most simply with&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;ssh-agent -k&lt;/tt&gt;.&lt;/div&gt;&lt;h3 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 19px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="PuTTY"&gt;Configuring PuTTY to use Identities&lt;/a&gt;&lt;/h3&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="InstallingPuTTY"&gt;Installing PuTTY&lt;/a&gt;&amp;nbsp;(Windows only)&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;First, you need to fetch PuTTY which is available from here:&amp;nbsp;&lt;a href="http://www.chiark.greenend.org.uk/~sgtatham/putty/"&gt;http://www.chiark.greenend.org.uk/~sgtatham/putty/&lt;/a&gt;&amp;nbsp;or a Google search on PuTTY should find it too. The installer is a fairly typical windows installer, so just go ahead and run it. The defaults are perfectly acceptable.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ConfiguringPuTTY"&gt;Configuring PuTTY&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;&lt;span class="figure floatright" style="border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; clear: right; float: right; font-style: italic; margin-bottom: 4px; margin-left: 4px; margin-right: 4px; margin-top: 4px; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; padding-top: 6px; text-align: center;"&gt;&lt;img alt="PuTTY Configuration" height="435" src="http://www.mtu.net/~engstrom/images/putty-conf.gif" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px;" width="426" /&gt;&lt;br /&gt;Figure 1: PuTTY Configuration&lt;/span&gt;Once you have PuTTY installed, run PuTTY and you will be presented with a PuTTY Configuration window that looks something like that in Figure 1. Adjust each Category of settings as follows:&lt;/div&gt;&lt;ol style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;&lt;em&gt;Session&lt;/em&gt;&lt;ul&gt;&lt;li&gt;Check:&amp;nbsp;&lt;strong&gt;SSH&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;em&gt;Connection&lt;/em&gt;&lt;ul&gt;&lt;li&gt;Auto-login username:&amp;nbsp;&lt;em&gt;username&lt;/em&gt;&lt;br /&gt;with your username&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;em&gt;Connection » SSH&lt;/em&gt;&lt;ul&gt;&lt;li&gt;Preferred SSH protocol version:&amp;nbsp;&lt;strong&gt;2&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;li&gt;&lt;em&gt;Connection » SSH » Auth&lt;/em&gt;&lt;ul&gt;&lt;li&gt;Check:&amp;nbsp;&lt;strong&gt;allow agent forwarding&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;[ you will come back here later to specify your&amp;nbsp;&lt;strong&gt;Private key file for authentication&lt;/strong&gt;&amp;nbsp;]&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Go back to the Session category, click on the&amp;nbsp;&lt;strong&gt;Saved Session&lt;/strong&gt;&amp;nbsp;named&amp;nbsp;&lt;strong&gt;Default Settings&lt;/strong&gt;&amp;nbsp;and click&amp;nbsp;&lt;strong&gt;Save&lt;/strong&gt;. These are now your default PuTTY options.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Test the settings by typing the name of a remote host into the&amp;nbsp;&lt;strong&gt;Host Name&lt;/strong&gt;&amp;nbsp;box and clicking&amp;nbsp;&lt;strong&gt;Open&lt;/strong&gt;. You should be prompted for your remote password and eventually get a shell window.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Go ahead and close that shell by typing&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;exit&lt;/tt&gt;.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="PuTTYGen"&gt;Generating your Public/Private Keys&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;&lt;span class="figure floatright" style="border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; clear: right; float: right; font-style: italic; margin-bottom: 4px; margin-left: 4px; margin-right: 4px; margin-top: 4px; padding-bottom: 6px; padding-left: 6px; padding-right: 6px; padding-top: 6px; text-align: center;"&gt;&lt;img alt="PuTTY Key-Generator" height="464" src="http://www.mtu.net/~engstrom/images/putty-gen.gif" style="border-bottom-width: 0px; border-color: initial; border-left-width: 0px; border-right-width: 0px; border-style: initial; border-top-width: 0px;" width="483" /&gt;&lt;br /&gt;Figure 2: Generating your key&lt;/span&gt;With PuTTY configured, you can now generate your public/private key. On the Windows&amp;nbsp;&lt;strong&gt;START&lt;/strong&gt;&amp;nbsp;menu, where PuTTY shortcuts were installed, should be a shortcut for PuTTYgen. You should see a window like that in Figure 2.&lt;/div&gt;&lt;ol style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;Check:&amp;nbsp;&lt;strong&gt;SSH2 RSA&lt;/strong&gt;&amp;nbsp;(or&amp;nbsp;&lt;strong&gt;SSH2 DSA&lt;/strong&gt;, but&amp;nbsp;&lt;strong&gt;NOT&lt;/strong&gt;&amp;nbsp;SSH1 RSA)&lt;/li&gt;&lt;li&gt;Click:&amp;nbsp;&lt;strong&gt;Generate&lt;/strong&gt;&lt;br /&gt;While PuTTYgen is generating your key, create some "entropy" by moving the mouse around in the empty area of the window.&lt;/li&gt;&lt;li&gt;Enter a&amp;nbsp;&lt;strong&gt;Key Passphrase&lt;/strong&gt;&lt;br /&gt;Make sure it is a good passphrase of more than 10 or so characters. If you choose not to use a passphrase, you will&amp;nbsp;&lt;strong&gt;not&lt;/strong&gt;&amp;nbsp;have to use the PuTTY-Agent (below),&amp;nbsp;&lt;strong&gt;however I do not recommend this&lt;/strong&gt;; Without a passphrase, your private key can be easily read by anyone and may be used to impersonate you on any server where you place your public key.&lt;/li&gt;&lt;li&gt;Click:&amp;nbsp;&lt;strong&gt;Save Private Key&lt;/strong&gt;&lt;br /&gt;Select a place to put your keys such as your home directory; name it something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY-Private.ppk&lt;/tt&gt;&lt;/li&gt;&lt;li&gt;Click:&amp;nbsp;&lt;strong&gt;Save Public Key&lt;/strong&gt;&lt;br /&gt;Save it to the same directory as the private key, presumably; name it something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY-Public.pub&lt;/tt&gt;&lt;/li&gt;&lt;li&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="CreateAuthKeysFromPuTTYKey"&gt;Create your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;authorized_keys&lt;/tt&gt;&lt;/a&gt;&amp;nbsp;file by coping the text from the&amp;nbsp;&lt;strong&gt;Public Key for pasting into authorized_keys&lt;/strong&gt;&amp;nbsp;text-box into a file, again presumably to the same directory, named something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;openssh-key.pub&lt;/tt&gt;&lt;/li&gt;&lt;/ol&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="PuTTYKeyToServer"&gt;Configure the Server's&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;You now need to copy your public key to the remote SSH server and update one setting in your PuTTY configuration:&lt;/div&gt;&lt;ol start="7" style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;Store your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;openssh-key.pub&lt;/tt&gt;&amp;nbsp;on the remote server in your remote&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file:&lt;/div&gt;&lt;ol class="ol2" style="list-style-type: lower-roman;"&gt;&lt;li&gt;&lt;strong&gt;Open Command/Shell Prompt&lt;/strong&gt;&amp;nbsp;by typing&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;cmd&lt;/tt&gt;&amp;nbsp;in the Windows Run dialog or by starting a CYGWIN shell.&lt;/li&gt;&lt;li&gt;&lt;strong&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="CopyPuTTYKeyToServer"&gt;Copy Public Key to Server&lt;/a&gt;&lt;/strong&gt;: at the command prompt, enter:&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;&lt;em&gt;[ CMD: ]&lt;/em&gt;&lt;br /&gt;pscp &lt;em&gt;c:\path\to\openssh-key.pub username@cvs.server.com&lt;/em&gt;:openssh-key.pub&lt;br /&gt;or&lt;br /&gt;&lt;em&gt;[ CYGWIN: ]&lt;/em&gt;&lt;br /&gt;scp &lt;em&gt;/cygdrive/c/path/to/openssh-key.pub username@cvs.server.com&lt;/em&gt;:openssh-key.pub&lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;...where&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;&lt;em&gt;c:\path\to\openssh-key.pub&lt;/em&gt;&lt;/tt&gt;&amp;nbsp;specifies the location of the key file created in step two, and&amp;nbsp;&lt;em&gt;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;username@cvs.server&lt;/tt&gt;&lt;/em&gt;&amp;nbsp;specifies your user name on the CVS server and the hostname of the CVS server. You may be prompted to confirm the legitimacy of the host, and you will be prompted to enter your password for the CVS server.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;&lt;strong&gt;Connect using PuTTY&lt;/strong&gt;: if necessary, run the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;putty&lt;/tt&gt;&amp;nbsp;program, entering the name of the remote cvs server.&lt;/div&gt;&lt;/li&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;&lt;strong&gt;Configure the Key on the CVS Server&lt;/strong&gt;: after logging into the CVS server, enter the following commands to place your public key into the remote&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file:&lt;/div&gt;&lt;pre style="background-color: #eeeeee; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px;"&gt;mkdir ~/.ssh&lt;br /&gt;chmod 700 .ssh&lt;br /&gt;cat ~/openssh-key.pub &amp;gt;&amp;gt; ~/.ssh/authorized_keys&lt;br /&gt;rm ~/openssh-key.pub&lt;br /&gt;chmod 600 ~/.ssh/*&lt;br /&gt;exit &lt;/pre&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;You can also copy/paste, ftp, email or transmit your public key to the remote server by any means you find convenient. Just put the contents in the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;~/.ssh/authorized_keys&lt;/tt&gt;&amp;nbsp;file, ensuring that what you paste is only one (long) line.&lt;/div&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/li&gt;&lt;li&gt;&lt;div style="margin-bottom: 0.3em; margin-top: 0.3em;"&gt;&lt;strong&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ConfigurePuTTYwithPrivateKey"&gt;Configure PuTTY to use the Private Key&lt;/a&gt;:&lt;/strong&gt;&amp;nbsp;Open PuTTY again; when the configuration window opens:&lt;/div&gt;&lt;ul&gt;&lt;li&gt;Open the&amp;nbsp;&lt;em&gt;Connection » SSH » Auth&lt;/em&gt;&amp;nbsp;configuration category&lt;/li&gt;&lt;li&gt;Set the location of your&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY-Private.ppk&lt;/tt&gt;&amp;nbsp;file in the&amp;nbsp;&lt;strong&gt;Private Key File for Authentication&lt;/strong&gt;&amp;nbsp;box&lt;/li&gt;&lt;li&gt;Return to the&amp;nbsp;&lt;em&gt;Session&lt;/em&gt;&amp;nbsp;configuration category&lt;/li&gt;&lt;li&gt;Select and save your settings into the&amp;nbsp;&lt;strong&gt;Default Settings&lt;/strong&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Test the settings by typing the name of the remote host into the&amp;nbsp;&lt;strong&gt;Host Name&lt;/strong&gt;&amp;nbsp;box and clicking&amp;nbsp;&lt;strong&gt;Open&lt;/strong&gt;. You should be prompted the passphrase of your private key rather than for your remote password; close the resulting shell window by typing&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;exit&lt;/tt&gt;.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="PuTTYAgent"&gt;Starting the PuTTY-Agent (Pageant)&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Run the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;pageant&lt;/tt&gt;&amp;nbsp;program from the&amp;nbsp;&lt;strong&gt;START&lt;/strong&gt;&amp;nbsp;menu. This will load the PuTTY Authentication Agent into the Windows System Tray; it appears as a little computer with a "secret agent hat". PuTTY-Agent is a process which runs in the background and listens for "requests" from&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY&lt;/tt&gt;&amp;nbsp;clients needing your private key.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;When PuTTY-Agent starts, it doesn't know about your private keys by default. Right-click the Pageant icon in the Windows System Tray. Select&amp;nbsp;&lt;strong&gt;Add Key&lt;/strong&gt;. Navigate to the directory where you saved the public and private keys in the previous step, and select the file&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;&amp;nbsp;PuTTY-Private.ppk&lt;/tt&gt;. Pageant will prompt you for the passphrase of the key.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Now you are basically done. Restart PuTTY again to test the settings one last time; enter the name of the remote host into the&amp;nbsp;&lt;strong&gt;Host Name&lt;/strong&gt;&amp;nbsp;box and clicking&amp;nbsp;&lt;strong&gt;Open&lt;/strong&gt;. You should&amp;nbsp;&lt;strong&gt;NOT&lt;/strong&gt;&amp;nbsp;be prompted the passphrase of your private key nor your remote password; close the resulting shell window by typing&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;exit&lt;/tt&gt;.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="AutoStartPageant"&gt;Auto-Start PuTTY-Agent Upon Login&lt;/a&gt;&lt;/h4&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Pageant can automatically load one or more private keys when it starts up, if you provide them on the Pageant command line (i.e. in a shortcut). If you copy the standard Pageant shortcut, append the location of your key(s) to the Target: line. It might look something like this:&lt;/div&gt;&lt;pre style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-left-color: rgb(0, 0, 0); border-left-style: solid; border-left-width: 1px; border-right-color: rgb(0, 0, 0); border-right-style: solid; border-right-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; color: #225555; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-size: 13px; margin-left: 5%; margin-right: 5%; margin-top: 0.4em; overflow-x: auto; overflow-y: auto; padding-bottom: 10px; padding-left: 10px; padding-right: 10px; padding-top: 10px; text-align: justify;"&gt;C:\PuTTY\pageant.exe d:\main.key d:\secondary.key&lt;/pre&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;If the keys are stored encrypted, Pageant will request the passphrases on startup.&lt;/div&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;If you place that new shortcut in your&amp;nbsp;&lt;em&gt;Startup&lt;/em&gt;&amp;nbsp;folder, it should be loaded automatically when you login to Windows.&lt;/div&gt;&lt;h2 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; border-top-color: rgb(0, 0, 0); border-top-style: solid; border-top-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 22px; font-style: italic; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ImportExportKeys"&gt;Using PuTTY Keys for OpenSSH and vice-versa&lt;/a&gt;&lt;/h2&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;If you already have keys used for OpenSSH or for PuTTY, you may use those keys in the other application, but you need to go through an import or export step using PuTTYgen.&lt;/div&gt;&lt;ol style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;First, open PuTTYGen again...&lt;/li&gt;&lt;/ol&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ImportOpenSSH"&gt;To import a OpenSSH key into PuTTY:&lt;/a&gt;&lt;/h4&gt;&lt;ol start="2" style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;In PuTTYgen, select:&amp;nbsp;&lt;strong&gt;Conversions&amp;nbsp;&lt;em&gt;»&lt;/em&gt;&amp;nbsp;Import Key&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Browse to your&amp;nbsp;&lt;strong&gt;private&lt;/strong&gt;&amp;nbsp;OpenSSH key and select&amp;nbsp;&lt;strong&gt;Open.&lt;/strong&gt;&lt;br /&gt;You should be required to enter your private key passphrase.&lt;/li&gt;&lt;li&gt;Click:&amp;nbsp;&lt;strong&gt;Save Private Key&lt;/strong&gt;&lt;br /&gt;Select a place to put your keys such as your home directory; name it something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY-Private.ppk&lt;/tt&gt;&lt;/li&gt;&lt;li&gt;Click:&amp;nbsp;&lt;strong&gt;Save Public Key&lt;/strong&gt;&lt;br /&gt;Save it to the same directory as the private key, presumably; name it something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;PuTTY-Public.pub&lt;/tt&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Everything else should proceed as before, including using PuTTY-Agent (Pageant), but be sure to&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#ConfigurePuTTYwithPrivateKey"&gt;tell PuTTY about your new Private Key as above&lt;/a&gt;.&lt;/div&gt;&lt;h4 style="background-color: #ddddaa; border-bottom-color: rgb(0, 0, 0); border-bottom-style: solid; border-bottom-width: 1px; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 17px; margin-bottom: 0px; margin-left: 0px; margin-right: 0px; margin-top: 0.5em; padding-bottom: 0.2em; padding-left: 0.2em; padding-right: 0.2em; padding-top: 0.1em; text-align: justify;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" name="ExportOpenSSH"&gt;To export a PuTTY key for OpenSSH:&lt;/a&gt;&lt;/h4&gt;&lt;ol start="2" style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; text-align: justify;"&gt;&lt;li&gt;In PuTTYgen, select:&amp;nbsp;&lt;strong&gt;Conversions&amp;nbsp;&lt;em&gt;»&lt;/em&gt;&amp;nbsp;Load Private Key&lt;/strong&gt;&lt;/li&gt;&lt;li&gt;Browse to your&amp;nbsp;&lt;strong&gt;private&lt;/strong&gt;&amp;nbsp;PuTTY key and select&amp;nbsp;&lt;strong&gt;Open.&lt;/strong&gt;&lt;br /&gt;You should be required to enter your private key passphrase.&lt;/li&gt;&lt;li&gt;Select:&amp;nbsp;&lt;strong&gt;Conversions&amp;nbsp;&lt;em&gt;»&lt;/em&gt;&amp;nbsp;Export OpenSSH Key&lt;/strong&gt;&lt;br /&gt;Select a place to put your keys such as your home directory; name it something like&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;openssh-key&lt;/tt&gt;.&lt;/li&gt;&lt;li&gt;To save the public key, follow the same instructions for&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#CreateAuthKeysFromPuTTYKey"&gt;creating the&amp;nbsp;&lt;tt style="color: #993300; font-family: 'Andale Mono', 'Courier New', Courier, monospace; font-weight: bold;"&gt;openssh-key.pub&lt;/tt&gt;&amp;nbsp;file as above.&lt;/a&gt;&lt;/li&gt;&lt;/ol&gt;&lt;div style="background-color: #ddddaa; font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 13px; margin-bottom: 0.3em; margin-top: 0.3em; text-align: justify;"&gt;Everything else should proceed as before, including using PuTTY-Agent (Pageant), but be sure to&amp;nbsp;&lt;a href="http://www.mtu.net/~engstrom/ssh-agent.php#CopyPuTTYKeyToServer"&gt;copy your openSSH key to the server, as above&lt;/a&gt;.&lt;/div&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-1867145275096076472?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/1867145275096076472/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2011/12/cvstortoise.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/1867145275096076472'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/1867145275096076472'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2011/12/cvstortoise.html' title='CVSTortoise 避免重复输入密码， 并且安全的方法'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-5249972759066086368</id><published>2011-12-09T03:15:00.001-08:00</published><updated>2011-12-09T03:16:15.715-08:00</updated><title type='text'>6 ways to get HBRUSH</title><content type='html'>&lt;br /&gt;&lt;table style="background-color: white; font-family: Arial; table-layout: fixed; width: 853px;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="filter: none; font-size: 12px; line-height: 18px; visibility: visible !important; word-break: break-all; word-wrap: break-word; zoom: 1 !important;"&gt;&lt;div class="cnt" id="blog_text" style="filter: none; overflow-x: hidden; overflow-y: hidden; position: relative !important; visibility: visible !important; word-break: normal; word-wrap: break-word; zoom: 1 !important;"&gt;&lt;table class="FCK__ShowTableBorders" style="table-layout: fixed;"&gt;&lt;tbody&gt;&lt;tr&gt;&lt;td style="filter: none; font-size: 12px; visibility: visible !important; word-break: break-all; word-wrap: break-word; zoom: 1 !important;"&gt;&lt;div class="cnt" style="filter: none; overflow-x: hidden; overflow-y: hidden; position: relative !important; visibility: visible !important; word-break: normal; word-wrap: break-word; zoom: 1 !important;"&gt;&lt;strong&gt;HBRUSH hbr;&lt;/strong&gt;&lt;br /&gt;第一种:&amp;nbsp;&lt;strong&gt;hbr= CreateSolidBrush(RGB(255,0,0));&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/strong&gt;&amp;nbsp;&lt;span style="color: #339966;"&gt;//单色的画刷&lt;/span&gt;&lt;br /&gt;第二种:&amp;nbsp;&lt;strong&gt;hbr= (HBRUSH)GetStockObject(BLACK_BRUSH);&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;//只能取特定颜色的画刷,如&lt;/span&gt;&lt;span style="color: #339966;"&gt;BLACK_BRUSH,GRAY_BRUSH等刷&lt;/span&gt;&lt;br /&gt;第三种:&amp;nbsp;&lt;strong&gt;hbr= CreatePatternBrush(HBITMAP hbmp);&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;//得到位图画刷&lt;/span&gt;&lt;br /&gt;第四种:&amp;nbsp;&lt;strong&gt;hbr = CreateHatchBrush(int fnStyle,&lt;/strong&gt;&amp;nbsp;&lt;strong&gt;COLORREF clrref)&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;//创建一种带阴影的画刷&lt;/span&gt;&lt;br /&gt;第五种:&lt;strong&gt;&amp;nbsp;hbr= CreateBrushIndirect(LOGBRUSH);&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;//通过LOGBRUSH结构体来取画刷&lt;/span&gt;&amp;nbsp;&lt;br /&gt;&lt;strong&gt;typedef struct tagLOGBRUSH {&amp;nbsp;&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;&amp;nbsp;UINT&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lbStyle;&lt;/strong&gt;&amp;nbsp;&lt;span style="color: #339966;"&gt;//画刷类型&lt;/span&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;COLORREF lbColor;&amp;nbsp;&lt;/strong&gt;&lt;span style="color: #339966;"&gt;&lt;strong&gt;//&lt;/strong&gt;颜色&lt;/span&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; LONG&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; lbHatch;&lt;/strong&gt;&amp;nbsp;&lt;span style="color: #339966;"&gt;//阴影&lt;/span&gt;&lt;strong&gt;} LOGBRUSH, *PLOGBRUSH;&lt;/strong&gt;&lt;br /&gt;第六种:&amp;nbsp;&lt;strong&gt;hbr= HBRUSH CreateDIBPatternBrush(&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;//通过与设备无关位图创建一个画刷&lt;/span&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; HGLOBAL hglbDIBPacked,&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; // handle to DIB&lt;/strong&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;strong&gt;UINT fuColorSpec&lt;/strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;// color table data&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; );&lt;/strong&gt;&lt;br /&gt;例如：&lt;br /&gt;&lt;strong&gt;&lt;span style="color: blue;"&gt;HBRUSH CAfdView&lt;/span&gt;::&lt;span style="color: #993300;"&gt;OnCtlColor&lt;/span&gt;(&lt;span style="color: blue;"&gt;CDC&lt;/span&gt;* pDC,&amp;nbsp;&lt;span style="color: blue;"&gt;CWnd&lt;/span&gt;* pWnd,&amp;nbsp;&lt;span style="color: blue;"&gt;UINT&lt;/span&gt;&amp;nbsp;nCtlColor)&lt;br /&gt;{&lt;br /&gt;&lt;span style="color: blue;"&gt;HBRUSH&lt;/span&gt;&amp;nbsp;hbr =&amp;nbsp;&lt;span style="color: blue;"&gt;CFormView&lt;/span&gt;::&lt;span style="color: #993300;"&gt;OnCtlColor&lt;/span&gt;(pDC, pWnd, nCtlColor);&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #339966;"&gt;// TODO: Change any attributes of the DC here&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;if&lt;/span&gt;&amp;nbsp;(pWnd-&amp;gt;&lt;span style="color: #993300;"&gt;GetDlgCtrlID&lt;/span&gt;()==&lt;span style="color: magenta;"&gt;IDC_STATIC1&lt;/span&gt;)&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDC-&amp;gt;&lt;span style="color: #993300;"&gt;SetTextColor&lt;/span&gt;(&lt;span style="color: magenta;"&gt;RGB&lt;/span&gt;(200,0,0));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; pDC-&amp;gt;&lt;span style="color: #993300;"&gt;SetBkColor&lt;/span&gt;(&lt;span style="color: magenta;"&gt;RGB&lt;/span&gt;(0,0,255));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;static HBRUSH&lt;/span&gt;&amp;nbsp;hBrush =&amp;nbsp;&lt;span style="color: #993300;"&gt;CreateSolidBrush&lt;/span&gt;(&lt;span style="color: magenta;"&gt;RGB&lt;/span&gt;(222,0,255));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;return&lt;/span&gt;&amp;nbsp;hBrush;&lt;br /&gt;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: #339966;"&gt;&amp;nbsp;// TODO: Return a different brush if the default is not desired&lt;/span&gt;&lt;br /&gt;&lt;span style="color: blue;"&gt;else&lt;/span&gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;return&lt;/span&gt;&amp;nbsp;hbr;&lt;br /&gt;}&lt;/strong&gt;&lt;br /&gt;&lt;span style="color: black;"&gt;改变对话框背景色&lt;/span&gt;&lt;br /&gt;&lt;strong&gt;&lt;span style="color: blue;"&gt;HBRUSH&lt;/span&gt;&amp;nbsp;CDqfDlg::&lt;span style="color: #993300;"&gt;OnCtlColor&lt;/span&gt;(&lt;span style="color: blue;"&gt;CDC&lt;/span&gt;* pDC,&amp;nbsp;&lt;span style="color: blue;"&gt;CWnd&lt;/span&gt;* pWnd,&amp;nbsp;&lt;span style="color: blue;"&gt;UINT&lt;/span&gt;&amp;nbsp;nCtlColor)&lt;br /&gt;{&lt;br /&gt;&lt;span style="color: blue;"&gt;HBRUSH&lt;/span&gt;&amp;nbsp;hbr =&amp;nbsp;&lt;span style="color: blue;"&gt;CDialog&lt;/span&gt;::&lt;span style="color: #993300;"&gt;OnCtlColor&lt;/span&gt;(pDC, pWnd, nCtlColor);&lt;br /&gt;&lt;br /&gt;&lt;span style="color: #339966;"&gt;// TODO: Change any attributes of the DC here&lt;br /&gt;&lt;br /&gt;// TODO: Return a different brush if the default is not desired&lt;/span&gt;&lt;span style="color: blue;"&gt;if&lt;/span&gt;(nCtlColor ==&amp;nbsp;&lt;span style="color: magenta;"&gt;CTLCOLOR_DLG&lt;/span&gt;)&lt;br /&gt;&amp;nbsp;&amp;nbsp; {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;CBrush&lt;/span&gt;&amp;nbsp;*brush;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; brush =&amp;nbsp;&lt;span style="color: blue;"&gt;new&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue;"&gt;CBrush&lt;/span&gt;(&lt;span style="color: magenta;"&gt;RGB&lt;/span&gt;(221,221,221));&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue;"&gt;return&lt;/span&gt;&amp;nbsp;(&lt;span style="color: blue;"&gt;HBRUSH&lt;/span&gt;)(brush-&amp;gt;m_hObject);&lt;br /&gt;&amp;nbsp;&amp;nbsp; }&lt;br /&gt;&lt;span style="color: blue;"&gt;return&lt;/span&gt;&amp;nbsp;hbr;&lt;br /&gt;}&lt;/strong&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/7288308194430638596-5249972759066086368?l=slash-directx.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://slash-directx.blogspot.com/feeds/5249972759066086368/comments/default' title='帖子评论'/><link rel='replies' type='text/html' href='http://slash-directx.blogspot.com/2011/12/6-ways-to-get-hbrush.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/5249972759066086368'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/7288308194430638596/posts/default/5249972759066086368'/><link rel='alternate' type='text/html' href='http://slash-directx.blogspot.com/2011/12/6-ways-to-get-hbrush.html' title='6 ways to get HBRUSH'/><author><name>Slash</name><uri>http://www.blogger.com/profile/07737276441198143037</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='31' height='21' src='http://4.bp.blogspot.com/-IjnX5tSgjnQ/TjpdrrmVDLI/AAAAAAAAIu0/4Ik3rA6eZHs/s220/%25E7%258E%258B%25E9%25A9%25B0%25E5%25AE%2587.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-7288308194430638596.post-7918849921400797676</id><published>2011-12-05T06:24:00.001-08:00</published><updated>2011-12-05T06:30:04.242-08:00</updated><title type='text'>C++ Predefined Compiler Macros</title><content type='html'>&lt;br /&gt;&lt;h1 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; font-size: xx-large; line-height: 17px; margin-bottom: 0.5em; margin-left: 0em; margin-right: 0em; margin-top: 0.7em; text-align: center;"&gt;&lt;/h1&gt;&lt;div class="contents" style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 0em; margin-left: 1em; margin-right: 0em; margin-top: 0em; text-align: left;"&gt;&lt;dl&gt;&lt;/dl&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec2" name="sec2"&gt;&lt;/a&gt;Borland Turbo C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__TURBOC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__TURBOC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;?&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Turbo C&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__TURBOC__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;397&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;661&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.borland.com/borlandcpp/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Turbo_C" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec3" name="sec3"&gt;&lt;/a&gt;Borland C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__BORLANDC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__BORLANDC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CODEGEARC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CODEGEARC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;?&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Borland C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;C++ Builder&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__BORLANDC__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__CODEGEARC__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x200&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x400&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x410&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x452&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x500&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.02&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x520&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x530&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x540&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.5&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x550&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.51&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x551&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2009&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x613&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x613&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2010&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x621&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x621&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.embarcadero.com/products/cbuilder" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://directory.google.com/Top/Computers/Programming/Languages/C%2B%2B/C%2B%2BBuilder/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Google Directory&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/C_plus_plus_builder" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec4" name="sec4"&gt;&lt;/a&gt;Clang&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__clang__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__clang_major__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__clang_minor__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__clang_patchlevel__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that clang also defines the GNU C version macros, but you should use the clang&amp;nbsp;&lt;a href="http://clang.llvm.org/docs/LanguageExtensions.html#feature_check" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;feature checking macros&lt;/a&gt;&amp;nbsp;to detect the availability of various features.&lt;/div&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://clang.llvm.org/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Clang" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec5" name="sec5"&gt;&lt;/a&gt;Comeau C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__COMO__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__COMO_VERSION__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Comeau C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__COMO_VERSION__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.3&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;230&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.comeaucomputing.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec6" name="sec6"&gt;&lt;/a&gt;Compaq C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DECC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;C compiler&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DECC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRRTPPPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;br /&gt;T = Type (9 = official)&lt;br /&gt;PPPP = Patch&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DECCXX&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;C++ compiler&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DECCXX_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;As __DECC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__VAXC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VAXC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Compaq C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__DECC_VER&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;6.0-001&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;60090001&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.openvms.compaq.com/openvms/brochures/deccplus/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec7" name="sec7"&gt;&lt;/a&gt;Cray C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_CRAYC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_RELEASE&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_RELEASE_MINOR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.cray.com/products/software/cplus.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec8" name="sec8"&gt;&lt;/a&gt;Cygwin&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CYGWIN__&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.cygwin.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Cygwin" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec9" name="sec9"&gt;&lt;/a&gt;Diab C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DCC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__VERSION_NUMBER__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;PP = Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Diab C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__VERSION_NUMBER__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.4g&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4426&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.windriver.com/products/html/dcc_compiler.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec10" name="sec10"&gt;&lt;/a&gt;Digital Mars&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DMC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__SC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ZTC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DMC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;PP = Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Digital Mars&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__DMC__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x700&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x720&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;8.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x800&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.digitalmars.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec11" name="sec11"&gt;&lt;/a&gt;Dignus Systems/C and Systems/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__SYSC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;C compiler&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__SYSC_VER__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PP = Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Systems/C&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__SYSC_VER__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.80.32&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;18032&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.dignus.com/dcxx/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec12" name="sec12"&gt;&lt;/a&gt;DJGPP&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DJGPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DJGPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__DJGPP_MINOR__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GO32__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Defined by DJGPP 1.x&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;DJGPP&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__DJGPP__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__DJGPP_MINOR__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.01&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.delorie.com/djgpp/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.google.com/Top/Computers/Software/Operating_Systems/x86/DOS/Programming/Compilers/DJGPP/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Google Directory&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Djgpp" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec13" name="sec13"&gt;&lt;/a&gt;EKOPath&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__PATHCC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__PATHCC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__PATHCC_MINOR__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__PATHCC_PATCHLEVEL__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;EKOPath&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__PATHCC__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__PATHCC_MINOR__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__PATHCC_PATCHLEVEL__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.pathscale.com/ekopath.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec14" name="sec14"&gt;&lt;/a&gt;EDG C++ Front End&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__EDG__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__EDG_VERSION__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;EDG C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__EDG_VERSION__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.30&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;230&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.edg.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec15" name="sec15"&gt;&lt;/a&gt;GNU C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GNUC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GNUC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GNUC_MINOR__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GNUC_PATCHLEVEL__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Patch (introduced in version 3.0)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that the meaning of the __GNUC__ macro has changed subtly over the years, from identifying the GNU C/C++ compiler to identifying any compiler that implements the GNU compiler extensions (see the&lt;a href="http://gcc.gnu.org/ml/gcc/2008-07/threads.html#00025" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Feature request - a macro defined for GCC&lt;/a&gt;&amp;nbsp;discussion for further information). For example, the Intel C++ on Linux also defines these macros from version 8.1 (see the&amp;nbsp;&lt;a href="ftp://download.intel.com/support/performancetools/c/linux/sb/clin81_relnotes.pdf" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Intel C++ Compiler 8.1 for Linux Release Notes&lt;/a&gt;and&amp;nbsp;&lt;a href="http://www.intel.com/cd/software/products/asmo-na/eng/284736.htm" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Intel Compilers for Linux: Compatibility with GNU Compilers&lt;/a&gt;.)&lt;/div&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;GNU C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__GNUC__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__GNUC_MINOR__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__GNUC_PATCHLEVEL__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.7.x&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Alternative Version&lt;/h4&gt;&lt;div class="first" style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;If you prefer a single version macro, you can define the following yourself.&lt;/div&gt;&lt;pre class="example" style="background-color: white; font-family: courier; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;#if defined(__GNUC__)&lt;br /&gt;# if defined(__GNUC_PATCHLEVEL__)&lt;br /&gt;#  define __GNUC_VERSION__ (__GNUC__ * 10000 \&lt;br /&gt;                            + __GNUC_MINOR__ * 100 \&lt;br /&gt;                            + __GNUC_PATCHLEVEL__)&lt;br /&gt;# else&lt;br /&gt;#  define __GNUC_VERSION__ (__GNUC__ * 10000 \&lt;br /&gt;                            + __GNUC_MINOR__ * 100)&lt;br /&gt;# endif&lt;br /&gt;#endif&lt;br /&gt;&lt;/pre&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;The format of this new macro is:&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GNUC_VERSION__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PP = Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example of Alternative Version&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;GNU C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__GNUC_VERSION__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.7.x&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;20700&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;30002&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://gcc.gnu.org/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://directory.google.com/Top/Computers/Programming/Compilers/GNU_Compiler_Collection/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Google Directory&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/GNU_Compiler_Collection" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec16" name="sec16"&gt;&lt;/a&gt;Green Hill C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ghs__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GHS_VERSION_NUMBER__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;P = Patch&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__GHS_REVISION_DATE__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Epoch time&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Green Hill C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__GHS_VERSION_NUMBER__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.2.1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;421&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.ghs.com/products/MULTI_IDE.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Green_Hills_Software" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec17" name="sec17"&gt;&lt;/a&gt;HP ANSI C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__HP_cc&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://devresource.hp.com/devresource/Tools/lang.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec18" name="sec18"&gt;&lt;/a&gt;HP aCC&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__HP_aCC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__HP_aCC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;From version A.01.15 (and A.03.13)&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__HP_aCC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PP = Patch&lt;br /&gt;&lt;br /&gt;From version A.01.21 (and A.03.25)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;HP aCC&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__HP_aCC&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;A.01.21&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;012100&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://devresource.hp.com/devresource/Tools/lang.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec19" name="sec19"&gt;&lt;/a&gt;IAR C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IAR_SYSTEMS_ICC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__VER__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;IAR C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__VER__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.34&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;334&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.iar.com/p7371/p7371_eng.php" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec20" name="sec20"&gt;&lt;/a&gt;IBM XL C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__xlc__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Compiles C&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__xlC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Compiles C++&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__xlc__&lt;br /&gt;__xlC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVVRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;From ?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMCPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;From ?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMC__&lt;br /&gt;__IBMCPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;P = Patch&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that the z/OS C/C++ compiler also defines&amp;nbsp;&lt;code style="font-family: courier;"&gt;__IBMC__&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style="font-family: courier;"&gt;__IBMCPP__&lt;/code&gt;&amp;nbsp;macros, but with a different syntax. See the entry on the z/OS C/C++ compiler below for further information.&lt;/div&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;IBM XL C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__xlC__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__IBMCPP__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x0301&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.5&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x0405&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;450&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x0500&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;500&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.ibm.com/software/ad/caix/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/VisualAge" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec21" name="sec21"&gt;&lt;/a&gt;IBM z/OS C/C++&lt;/h2&gt;&lt;div class="first" style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;This is the XL C/C++ compiler for mainframes (e.g. z/OS). The entry on XL C/C++ has been split into two for clarity.&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMCPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IBMC__&lt;br /&gt;__IBMCPP__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;NVRRM&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;N = Product (0 = C/370, 1 = MVS, 2 = OS/390, 4 = z/OS)&lt;br /&gt;V = Version&lt;br /&gt;RR = Revision&lt;br /&gt;P = Patch&lt;br /&gt;&lt;br /&gt;Defined for z/OS XL C/C++&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__COMPILER_VER__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xNVRRPPPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;N = Product (see above)&lt;br /&gt;V = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PPPP = Patch&lt;br /&gt;&lt;br /&gt;Defined for z/OS XL C/C++&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that XL C/C++ also defines&amp;nbsp;&lt;code style="font-family: courier;"&gt;__IBMC__&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style="font-family: courier;"&gt;__IBMCPP__&lt;/code&gt;&amp;nbsp;macros, but with a different syntax. You can use&amp;nbsp;&lt;code style="font-family: courier;"&gt;__xlC__&lt;/code&gt;&amp;nbsp;(only defined for XL C/C++) or&amp;nbsp;&lt;code style="font-family: courier;"&gt;__COMPILER_VER__&lt;/code&gt;&amp;nbsp;(only defined for z/OS C/C++) to distinguish between the two.&lt;/div&gt;&lt;pre class="example" style="background-color: white; font-family: courier; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;#if defined(__IBMC__) || defined(__IBMCPP__)&lt;br /&gt;# if defined(__COMPILER_VER__)&lt;br /&gt;/* z/OS C/C++ so __IBMC__ is defined as NVRRM */&lt;br /&gt;# else&lt;br /&gt;/* XL C/C++ so __IBMC__ is defined as VRP */&lt;br /&gt;# endif&lt;br /&gt;#endif&lt;br /&gt;&lt;/pre&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;IBM z/OS XL C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__IBMC__&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__COMPILER_VER__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.7&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;41070&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x41070000&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.ibm.com/software/awdtools/czos/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/VisualAge" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec22" name="sec22"&gt;&lt;/a&gt;ImageCraft C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__IMAGECRAFT__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.imagecraft.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec23" name="sec23"&gt;&lt;/a&gt;Intel C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__INTEL_COMPILER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ICC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ECC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Obsolete&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ICL&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__INTEL_COMPILER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;P = Patch&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__INTEL_COMPILER_BUILD_DATE&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;YYYYMMDD&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;YYYY = Year&lt;br /&gt;MM = Month&lt;br /&gt;DD = Day&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Intel C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__INTEL_COMPILER&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__INTEL_COMPILER_BUILD_DATE&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;500&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;6.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;600&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;8.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;800&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;9.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;900&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;20060222&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.intel.com/software/products/index.htm" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec24" name="sec24"&gt;&lt;/a&gt;KAI C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__KCC&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__KCC_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;PP = Patch (a = 01, b = 02, ...)&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;KAI C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__KCC_VERSION&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.0d&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4004&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://developer.intel.com/software/products/kcc/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec25" name="sec25"&gt;&lt;/a&gt;Keil CARM&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CA__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__KEIL__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CA__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Keil CARM&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__CA__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.01&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;101&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.keil.com/arm/carm.asp" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec26" name="sec26"&gt;&lt;/a&gt;Keil C166&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__C166__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__C166__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Keil C166&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__C166__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.01&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;501&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.keil.com/c166/c166.asp" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec27" name="sec27"&gt;&lt;/a&gt;Keil C51&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__C51__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CX51__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__C51__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Keil C51&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__C51__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.01&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;701&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.keil.com/c51/c51.asp" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec28" name="sec28"&gt;&lt;/a&gt;LCC&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__LCC__&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.cs.virginia.edu/~lcc-win32/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Local_C_compiler" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec29" name="sec29"&gt;&lt;/a&gt;LLVM&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__llvm__&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://llvm.org/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/LLVM" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec30" name="sec30"&gt;&lt;/a&gt;MetaWare High C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__HIGHC__&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.metaware.com/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec31" name="sec31"&gt;&lt;/a&gt;Metrowerks CodeWarrior&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MWERKS__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MWERKS__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Until CodeWarrior 7&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MWERKS__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVRPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;PP = Patch&lt;br /&gt;&lt;br /&gt;From CodeWarrior 7&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Metrowerks C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__MWERKS__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x2000&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x2200&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.metrowerks.com/platforms/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/CodeWarrior" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec32" name="sec32"&gt;&lt;/a&gt;MinGW&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MINGW32__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MINGW32_MAJOR_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MINGW32_MINOR_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;MinGW&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__MINGW32_MAJOR_VERSION&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__MINGW32_MINOR_VERSION&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2.4&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.mingw.org/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/MinGW" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec33" name="sec33"&gt;&lt;/a&gt;MIPSpro&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__sgi&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;sgi&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_COMPILER_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;P = Patch&lt;br /&gt;&lt;br /&gt;Until ?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_SGI_COMPILER_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;br /&gt;P = Patch&lt;br /&gt;&lt;br /&gt;From ?&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;MIPSpro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;_COMPILER_VERSION&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;_SGI_COMPILER_VERSION&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;6.0.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;602&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.2.1&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;721&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.4.4&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;744&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.sgi.com/developers/devtools/languages/mipspro.html" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec34" name="sec34"&gt;&lt;/a&gt;MPW C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MRC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;MPW_C&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;MPW_CPLUS&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__MRC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVVRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;MPW C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__MRC__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x500&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://developer.apple.com/tools/mpw-tools/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec35" name="sec35"&gt;&lt;/a&gt;Microsoft Visual C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MSC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MSC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MSC_FULL_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRRPPPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PPPP = Patch&lt;br /&gt;&lt;br /&gt;From ?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MSC_FULL_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VVRRPPPPP&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VV = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PPPPP = Patch&lt;br /&gt;&lt;br /&gt;From Visual C++ 8.0 ?&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MSC_BUILD&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;B&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;B = Build number&lt;br /&gt;&lt;br /&gt;From Visual C++ 9.0&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that&amp;nbsp;&lt;code style="font-family: courier;"&gt;_MSC_FULL_VER&lt;/code&gt;&amp;nbsp;and&amp;nbsp;&lt;code style="font-family: courier;"&gt;_MSC_BUILD&lt;/code&gt;&amp;nbsp;are not officially documented by the vendor.&lt;/div&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Visual C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;_MSC_VER&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;_MSC_FULL_VER&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;800&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;900&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1000&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.2&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1020&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;5.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1100&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;6.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1200&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;6.0 SP6&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1200&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;12008804&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.0&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1300&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;13009466&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;7.1 (2003)&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1310&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;13103077&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;8.0 (2005)&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1400&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;140050727&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;9.0 (2008)&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1500&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;150021022&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;10.0 (2010)&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1600&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;?&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://msdn.microsoft.com/visualc/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://directory.google.com/Top/Computers/Programming/Languages/C%2B%2B/Visual_C%2B%2B/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Google Directory&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://en.wikipedia.org/wiki/Visual_C_Plus_Plus" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Wikipedia&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec36" name="sec36"&gt;&lt;/a&gt;Microtec C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_MRI&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.mentor.com/microtec/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec37" name="sec37"&gt;&lt;/a&gt;Norcroft C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__CC_NORCROFT&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__ARMCC_VERSION&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V.R&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;R = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;Please note that&amp;nbsp;&lt;code style="font-family: courier;"&gt;__ARMCC_VERSION&lt;/code&gt;&amp;nbsp;is assigned a floating-point number, so it cannot be used by the preprocessor to compare versions.&lt;/div&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Norcroft C&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__ARMCC_VERSION&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.69&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.69&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.90&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;4.90&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec38" name="sec38"&gt;&lt;/a&gt;Pacific C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__PACIFIC__&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.htsoft.com/products/PACIFICc.php" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec39" name="sec39"&gt;&lt;/a&gt;Palm C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_PACC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;_PACC_VER&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0xVRRPPBBB&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;br /&gt;PP = Patch&lt;br /&gt;BBB = Build&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Palm C/C++&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;_PACC_VER&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;1.0.0.13&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;0x1000000D&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.palmos.com/dev/dl/dl_sdks/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;&lt;a href="http://www.google.com/Top/Computers/Systems/Handhelds/Palm_OS/Programming/Development_Kits/C_and_C%2B%2B/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Google Directory&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec40" name="sec40"&gt;&lt;/a&gt;Pelles C&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Type&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Macro&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Format&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Description&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Identification&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__POCC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;.&lt;/td&gt;&lt;/tr&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;Version&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;__POCC__&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;VRR&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;V = Version&lt;br /&gt;RR = Revision&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;h4 style="background-color: white; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 1em;"&gt;Example&lt;/h4&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="versionx"&gt;&lt;/span&gt;&lt;/div&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 209); border-bottom-width: 0px; border-color: initial; border-left-color: rgb(156, 172, 209); border-left-width: 0px; border-right-color: rgb(156, 172, 209); border-right-width: 0px; border-style: initial; border-top-color: rgb(156, 172, 209); border-top-width: 0px; empty-cells: show; font-family: verdana, helvetica, arial, san-serif; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; width: 50%;"&gt;&lt;thead style="background-color: #9cacd1; color: #2c313d; line-height: 19px; text-align: left;"&gt;&lt;tr&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;Pelles C&lt;/th&gt;&lt;th style="border-bottom-color: rgb(156, 172, 209); border-bottom-style: solid; border-left-color: rgb(156, 172, 209); border-left-style: solid; border-right-color: rgb(156, 172, 209); border-right-style: solid; border-top-color: rgb(156, 172, 209); border-top-style: solid;"&gt;__POCC__&lt;/th&gt;&lt;/tr&gt;&lt;/thead&gt;&lt;tbody style="background-color: #f6f9ff;"&gt;&lt;tr&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;3.00&lt;/td&gt;&lt;td style="border-bottom-color: rgb(221, 227, 239); border-bottom-style: solid; border-left-color: rgb(221, 227, 239); border-left-style: solid; border-right-color: rgb(221, 227, 239); border-right-style: solid; border-top-color: rgb(221, 227, 239); border-top-style: solid; vertical-align: top;"&gt;300&lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt;&lt;div style="background-color: white; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; margin-bottom: 1em; margin-left: 2em; margin-right: 2em; margin-top: 1em; text-align: left;"&gt;&lt;span class="menu"&gt;&lt;a href="http://www.smorgasbordet.com/pellesc/" style="color: #1d3565; font-weight: bold; text-decoration: none;"&gt;Official site&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;&lt;h2 style="background-color: white; border-bottom-color: rgb(211, 211, 211); border-bottom-style: solid; border-bottom-width: 1px; color: #596d9d; font-family: verdana, helvetica, arial, san-serif; line-height: 17px; text-align: left; text-indent: 0.3em;"&gt;&lt;a href="http://www.blogger.com/blogger.g?blogID=7288308194430638596" id="sec41" name="sec41"&gt;&lt;/a&gt;Portland Group C/C++&lt;/h2&gt;&lt;table border="2" cellpadding="5" class="muse-table" style="-webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; background-color: white; border-bottom-color: rgb(156, 172, 
