[a / b / c / d / e / f / g / gif / h / hr / k / m / o / p / r / s / t / u / v / vg / vm / vmg / vr / vrpg / vst / w / wg] [i / ic] [r9k / s4s / vip] [cm / hm / lgbt / y] [3 / aco / adv / an / bant / biz / cgl / ck / co / diy / fa / fit / gd / hc / his / int / jp / lit / mlp / mu / n / news / out / po / pol / pw / qst / sci / soc / sp / tg / toy / trv / tv / vp / vt / wsg / wsr / x / xs] [Settings] [Search] [Mobile] [Home]
Board
Settings Mobile Home
/g/ - Technology

Name
Options
Comment
Verification
4chan Pass users can bypass this verification. [Learn More] [Login]
File
  • Please read the Rules and FAQ before posting.
  • You may highlight syntax and preserve whitespace by using [code] tags.

08/21/20New boards added: /vrpg/, /vmg/, /vst/ and /vm/
05/04/17New trial board added: /bant/ - International/Random
10/04/16New board for 4chan Pass users: /vip/ - Very Important Posts
[Hide] [Show All]


[Advertise on 4chan]


File: 1743197938300755.png (16 KB, 109x130)
16 KB
16 KB PNG
>let me fail to compile your completely working source code after I upgrade to a new version
>>
>>107713960
C23 deprecated K&R functions and implicit int for types, not a compiler issue
>>
File: 1763334027030509.png (397 KB, 628x632)
397 KB
397 KB PNG
How dumb are you? The released compiler compiles itself just fine, your code is just wrong.
>>
>>107714122
does this still compile?

int main(argc, argv, envp)
int argc;
char *argv[],
char *envp[]
{
return EXIT_SUCCESS;
}
>>
>>107714178
It never compiled.
>>
File: wrwe.jpg (14 KB, 288x209)
14 KB
14 KB JPG
do i see the fun in GCC?
>>
>>107714232
Nigger I'm a white man, I write my own fucking compiler
>>
>>107714228
oops, you're right it should've been ; instead of ,
warning: old-style function definition [-Wold-style-definition]
int main(argc, argv, envp)
int argc;
char *argv[];
char *envp[];
{
return 0;
}
>>
>>107714178
If you add semi colons, -ansi, and use a proper return value, yeah
>>
>>107714271
This compiles without -ansi, now omit the return type of main and it won't
For some reason if you omit the type of arc it won't compile even in -ansi mode
>>
>>107714140
True unless you compile with -Werror -Wall -Wextra -Wconversion
they'll add new warning every now and then, and actually introduced a false positive in GCC9 where you ABSOLUTELY could not discard the return value of write(2)
>>
>>107714271
nigga what the duck am I looking at, and why did this compile at any point in time?
>>
>>107714335
it still compiles https://godbolt.org/z/exTzPP9Wc
>>
>>107714335
it just does ok
>>
>>107714335
int main(argc, argv, envp)
int argc;
char *argv[];
char *envp[];
{
3[argv];
return 0;
}

>warning: statement with no effect [-Wunused-value]
> 6 | 3[argv];
>>
>>107714403
>3[argv];
Will be deprecated in c2y
>>
>>107714256
You've never even seen a line of code in your life.
>>
>>107714335
C used to look a lot different. It took a while for the modern syntax to emerge. Back when C was actually developed and got new features.
Now all the good features are compiler extensions because the retards in charge of the C standard somehow think that not implementing features people want and use is a good thing.
Pretty much all big C projects rely on compiler specific language extensions. C with extensions is a pretty good language, too bad it's not portable.

Someone is going to respond to this saying that nobody needs those extensions. Yeah, sure. Clearly all the people working on Linux are dumber than you, random /g/ poster who never made anything of value.
>>
>>107714493
Retard C got 2 substantial updates since C99.
>>
>>107714508
They added nothing of value.
>>
>>107714513
>threads
>checked arithmetic
>function attributes
>nothing of value
Spoken like a true nocoder.
>>
>>107714567
Those are nice, but they don't solve the real issues the language has.
Standard library threads are nice, but cross platform threading libraries weren't exactly rare before.
Checked arithmetic is nice, but could easily be achieved on all compilers before. Nice to have, but nothing fundamental.
And the same goes for function attributes. Most are just small compiler hints. [[nodiscard]] is the only one I regularly use. Can you tell me how they revolutionized the language for you?
>>
>>107714614
>"THEY ADD NOTHING SO PPL HAVETO RELY ON EXTENSIOORINOS SOOOOOOO HORRIBLE"
>language adds features so extensions aren't needed anymore
>"THEY ADDED THINGS WE ALREADY HAVE EXTENSIOORINOS FOR SOOOOOOOOO HORRIBLE"
Don't think people don't notice when you're this fucking disingenuous.
>>
>>107714614
In C2y we is getting counted() for size of arrays, declaring variables inside if statements, ranged case's and labeled breaks to break from two loops or switches inside loops, how is this not hot
>>
>>107714637
It's nice for them to standardize things he previously needed a billion #if COMPILER_A bullshit macros for, really. But how about things like defer {cleanup_block} to get rid of the countless memory and resource leaks and double frees that plague C code everywhere, anonymous functions, ADTs?
>>
>>107714680
Defer is in the process of being standardized, but when it's there guaranteed you'll find an excuse to keep bitching.
>>
>>107715218
Actually yes, that's based as fuck.
>>
I NEED THIS

https://clang.llvm.org/docs/LanguageExtensions.html#vectors-and-extended-vectors
>>
>>107714436
Can you post the paper that deprecates this?
>>
>>107715479
The one about the provenance of pointers iirc
>>
>>107715218
>you'll find an excuse to keep bitching.
I certainly will bitch about it because as usual they will somehow make all the wrong choices and the result will be barely usable, just like it happened with #embed



[Advertise on 4chan]

Delete Post: [File Only] Style:
[Disable Mobile View / Use Desktop Site]

[Enable Mobile View / Use Mobile Site]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.