> he unironically uses a kernel that uses a language that has it illegal to see the spec

When was it when you realized C is inferior to C#?

Attached: file.png (740x427, 100K)

Other urls found in this thread:

iso.org/standard/57853.html
port70.net/~nsz/c/c89/c89-draft.html
port70.net/~nsz/c/c99/n1256.html
twitter.com/SFWRedditImages

Illegal? It's perfectly legal, you just have to buy the document.

Since that would never happen, it would make it illegal to read it. I bet 0 gcc and clang developers have ever bought.

The Linux kernel doesn't follow the C99 standard, It loosely follows C89/90 with GNU extensions. Torvalds frequently shits on the standards anyway, so if you want to hack on Linux you don't want to be using them anyway.
>I've said this before, and I'll say it again: a standards paper is just so much toilet paper when it conflicts with reality. It has absolutely _zero_ relevance. In fact, I'll take real toilet paper over standards any day, because at least that way I won't have splinters and ink up my arse.

>In programming, "Appeal to Standards" should be considered a potential
logical fallacy. Standards have their place, but they definitely have
their caveats
>Linus

I want nothing more than to fire all bootlicking bugmen out of a canon into the sun.

Attached: go back to neppit.png (326x522, 241K)

>Since that would never happen
You don't think a person that requires a certain tool for their job has ever purchased one at or over $30? I'm not a developer but if I needed something I would never hesitate to get it if the price is $30 and I only have to buy it once, not on a monthly subscription.

Literally nobody needs a copy of the C standards except for compiler writers, and even then, they don't follow the standard 100%.
The standards organizations don't define the language, standard C89 just formalized the language as it existed before standardization, C99 simply added compiler extensions and features that everyone thought were good ideas, C11 is an example of standards bodies getting their heads up their ass, literally no C compiler today is C11 compliant because of all the dumb shit they added.

Remember that's the ancient ANSI C.
The actual relevant ISO standard is $200: iso.org/standard/57853.html
And you can't even get a printed copy.

>dumb clickbait title
>dumb bait content
Dumb nigger

Then tell me, without looking at a standard, is this legal C?
#include .h
int
main(void)
{
exit(0);
}

that wont even compile, there's no file called called "stdlib" anywhere on your machine

Fuck, I meant this

#include
int
main(void)
{
exit(0);
}

Not the person you are responding to, but I don't get your point. Are you saying that the standard should be available because some people might want to adopt stupid unreadable coding styles and they need to be sure it will compile before they start coding?

No it's not.
You declare a function with type int, but there's no return statement.
Also, preprocessor directives are not part of the C language.
Those are part of the c preprocessor.
Code(i am posting from a phone)
void main(){return;}
/code
Is a perfectly fine c program.
But it doesn't comply with any of the c standards.
Your main function has to be of type int so it returns its status to the os or the caller,
You people have to stop confusing C with some standard.
Standards describe how you will write c in a certain project.
It's totally different for other language standards though

>Linux is written in a non-free language and Stallman is OK with that

>Stallman wrote GNU projects in a non-free language and is OK with that

>Code(i am posting from a phone)

Attached: 1397482515401.jpg (126x97, 2K)

You have no idea how large companies operate, do you?
I bet you're a NEET

PSA: if you meed ISO standards buy them from the Lithuanian standards body they are by far the cheapest and have English text too

Reminder that the Ada ISO standard is available completely free of charge.

>You declare a function with type int, but there's no return statement.
Functions return 0 by default on c.

How about they make a version of C that doesn't have retarded standards? Literally everything in C and C++ is full of undefined, unspecified, or implementation defined behaviors.

Depends on the version. Old versions of C don't return 0 by default. So no.

>he doesnt know why

If shit like C# can exist how come there can't be a version of C with consistent behavior?

because C# and C are oriented towards completely different end-goals? lol
thats like comparing a motorcycle and a submarine

C is meant to be just portable assembler basically while maintaining almost all of its potential

those implementation-specific behaviours are *intentional* so the language can be used even on very alien computer architectures (say, multiple address spaces, non-8bit bytes etc.)

>because C# and C are oriented towards completely different end-goals? lol
I feel like you're intentionally misunderstanding the question so you can spout off facts about C.

Depends on what language you are talking about.
Older versions, such as C89 or C99 can be obtained free of charge.
The official C11 you have to purchase, but you can view the finalized draft for free.

Furthermore, Linux builds with -gnu89
this means OP is full of shit. You can freely view the spec of the language the Kernel is built with.

how did i misunderstand the question? different goals means different approaches and limitations, how could you deny that

explain how my post is wrong, please

>You're full of bullshit.
lol
port70.net/~nsz/c/c89/c89-draft.html
port70.net/~nsz/c/c99/n1256.html
Now I want you to search both documents for "program termination" and tell me what you've learned.
I'm just wondering why there's never been a variant of C designed with specificity in mind.

>No it's not.
>You declare a function with type int, but there's no return statement.
W R O N G

From C11:

ยง 5.1.2.2.3 Program termination
1 If the return type of the main function is a type compatible with int, a return from the initial call to the main function is equivalent to calling the exit function with the value returned by the main function as its argument; 11) reaching the } that terminates the main function returns a value of 0. If the return type is not compatible with int, the termination status returned to the host environment is unspecified.

>there's never been a variant of C designed with specificity in mind.
because then it would defeat its purpose, that would make it exclusive only to a handful of mainstream architectures, while no significant advantage would arise from it

>that would make it exclusive only to a handful of mainstream architectures
I was thinking more like specifying which platform's quirks to follow as a flag and having the compiler do workarounds for other architectures.

>Functions return 0 by default on c.
What's defined in the standards is different from what a valid c program is.
Some c standards define that default behaviour when you don't use return.
Some other standards don't define a default behaviour in such case.
Also

Delete this or I DMC you.

GCC is free software.

>he unironically buys from places that ships on conrainers that has it illegal to see tge container spec
by your logic.

literally don't worry about it. the gnu fags do it all for you and document everything. why do you need the shitty standards document anyhow?

I honestly thought C was anti-establishment by now.
Guess I was wrong.

Fuck C. And fuck C# too btw.

desu when what btw unfiltered senpaitachi? I'm bringing it back.

Used to be this type of thread would get a lifetime ban. Now I know why eight chan has more traffic than cuck chan these days.

wrong thread?

t. Lithuanian standards body

i checked lithuanian standards body and they dont have iso 9899 - programming language, c

ISO standard has instructions how to make tea, I guess Tea is now proprietary.

>inferior
I love C# but comparing it to C is completely pointless and indicative of a low IQ on your part. If you spent as much time programming as you do finding autistic reasons to shitpost on Jow Forums you'd probably be employed.