Function Grammar

function attributes? specifiers type‑expr function‑group‑id template‑parameter‑list? parameter‑list where‑constraint? compound‑statement | ;
function‑group‑id id | operator‑function‑group‑id
operator‑function‑group‑id operator ((< <)(< < (type‑expr % ,) >) | >> | == | = | < | -> | ++ | -- | + | - | * | / | % | & | | | ^ | ! | ~ | [ ] | ( ))