There is one form of portability problem though, and that is the fact that the standard makes it clear that a program should run on different [[Central processing unit|CPU]] types. The standard says that GNU doesn't and won't support 16-bit systems, but handling all the different 32- and 64-bit systems is absolutely necessary.
== ReceptionCriticism ==
The GNU coding standards are primarily used by GNU projects, though its use is not limited to GNU projects alone.
The [[Linux kernel]] strongly discourages this style for kernel code, and refers to the style pejoratively.<ref>{{cite web|url=https://www.kernel.org/doc/Documentation/process/coding-style.rst|title=Linuxkernel coding style|website=kernel.org|access-date=1 January 2017|quote="First off, I'dI’d suggest printing out a copy of the GNU coding standards, and NOT read it. Burn them, it'sit’s a great symbolic gesture."<ref>{{Cite web|url=https://www.kernel.org/doc/html/v4.10/process/coding-style.html|title=Linux kernel coding style — The Linux Kernel documentation|website=www.kernel.org|language=en|access-date=2017-10-12}}</ref>. [[Steve McConnell]], in his book [[Code Complete]], also advises against using this style; he marks a code sample which uses it with a "Coding Horror" icon, symbolizing especially dangerous code, and states that it impedes readability.<ref>{{cite book |title=Code Complete: A practical handbook of software construction |last=McConnell |first=Steve |publisher=Microsoft Press |year=2004 |isbn=0-7356-1967-0 |___location=Redmond, WA |pages=746–747 |authorlink=Steve McConnell}}</ref>
== Criticism ==
Linux Kernel Developer's Documentation criticize that document: "First off, I’d suggest printing out a copy of the GNU coding standards, and NOT read it. Burn them, it’s a great symbolic gesture."<ref>{{Cite web|url=https://www.kernel.org/doc/html/v4.10/process/coding-style.html|title=Linux kernel coding style — The Linux Kernel documentation|website=www.kernel.org|language=en|access-date=2017-10-12}}</ref>