lebedev.ri added inline comments.
================
Comment at:
clang/test/Sema/implicit-widening-of-pointer-offset-in-array-subscript-expression.c:24
+void t1(char *base, int a, int b) {
+ // FIXME: test `[a * b]base` pattern?
+}
----------------
dblaikie wrote:
> lebedev.ri wrote:
> > dblaikie wrote:
> > > Question is unclear - is there uncertainty about whether this should be
> > > tested? Or is this a false negative case? In which case I'd probably
> > > include the test showing no diagnostic and mention it could be
> > > fixed/improved?
> > I may be misremembering things, but IIRC `a[b]` and `b[a]` is the same
> > thing,
> > but i'm not sure how to exercise the second spelling.
> > I.e. i'm just not sure how to write a test for it.
> > I may be misremembering things, but IIRC a[b] and b[a] is the same thing,
> Yep, that's the case - `a[b]` where one of them is a pointer and teh other is
> an integer, is equivalent to `*(a + b)`, so that means it's the same as
> `b[a]`.
>
> I guess you'd write it the same as t0, but with the expressions reversed?
> `return *(a * b)[base];`
That's what i tried, and it does't work - https://godbolt.org/z/as4vP4
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D93822/new/
https://reviews.llvm.org/D93822
_______________________________________________
cfe-commits mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits