D120936 has made the loss of __unaligned qualifier NOT a bad-conversion.
Because of this, the bad-conversion note about the loss of this qualifier does not take effect.
e.g.
void foo(int *ptr); void func(const __unaligned int *var) { foo(var); }
BEFORE this patch:
source.cpp:3:41: error: no matching function for call to 'foo' 3 | void func(const __unaligned int *var) { foo(var); } | ^~~ source.cpp:1:6: note: candidate function not viable: 1st argument ('const __unaligned int *') would lose __unaligned qualifier 1 | void foo(int *ptr); | ^ 2 | 3 | void func(const __unaligned int *var) { foo(var); } | ~~~
AFTER this patch:
source.cpp:3:41: error: no matching function for call to 'foo' 3 | void func(const __unaligned int *var) { foo(var); } | ^~~ source.cpp:1:6: note: candidate function not viable: 1st argument ('const __unaligned int *') would lose const qualifier 1 | void foo(int *ptr); | ^ 2 | 3 | void func(const __unaligned int *var) { foo(var); } | ~~~
Please note the different mentions of __unaligned and const in notes.