logoalt Hacker News

nayukiyesterday at 7:15 PM1 replyview on HN

> Applying the increment or decrement operators over the same variable more than once on the same line should be a compile-time error

That would be nice, but don't forget the more general case of pointers and aliasing:

    int a = 5;
    int *pa = &a;
    printf("%d", (a++ + ++*pa));
The compiler cannot statically catch every possible instance of a statement where a variable is updated more than once.

Replies

marcosdumayyesterday at 7:21 PM

Well, aliased updates are undefined behavior already.

show 2 replies