blob: ba0befddc50304b6d3e28530d0074e3e14d24f29 [file] [log] [blame]
// { dg-do compile { target c++11 } }
// { dg-options "-fabi-version=0" }
// { dg-final { scan-assembler "_Z1fIiEDTcmdlfp_psfp_EPT_" } }
template <class T> auto f (T* p) -> decltype(delete p, +p) { return p; }
// { dg-final { scan-assembler "_Z1gIiEDTcmgsdlfp_psfp_EPT_" } }
template <class T> auto g (T* p) -> decltype(::delete p, +p) { return p; }
// { dg-final { scan-assembler "_Z1hIiEDTcmdafp_psfp_EPT_" } }
template <class T> auto h (T* p) -> decltype(delete[] p, +p) { return p; }
// { dg-final { scan-assembler "_Z1iIiEDTcmgsdafp_psfp_EPT_" } }
template <class T> auto i (T* p) -> decltype(::delete[] p, +p) { return p; }
int main()
{
int x;
f(&x);
g(&x);
h(&x);
i(&x);
}