| [] means optional; {} means 1 or more; <> means defined elsewhere |
| commands are separated by ';' and newlines |
| command: |
| declare <name> as <english> |
| cast <name> into <english> |
| explain <gibberish> |
| set or set options |
| help, ? |
| quit or exit |
| english: |
| function [( <decl-list> )] returning <english> |
| array [<number>] of <english> |
| [{ const | volatile | noalias }] pointer to <english> |
| <type> |
| type: |
| {[<storage-class>] [{<modifier>}] [<C-type>]} |
| { struct | union | enum } <name> |
| decllist: a comma separated list of <name>, <english> or <name> as <english> |
| name: a C identifier |
| gibberish: a C declaration, like 'int *x', or cast, like '(int *)x' |
| storage-class: extern, static, auto, register |
| C-type: int, char, float, double, or void |
| modifier: short, long, signed, unsigned, const, volatile, or noalias |
| Valid set options (and command line equivalents) are: |
| options |
| create (-c), nocreate |
| interactive (-i), nointeractive |
| ritchie (-r), preansi (-p), ansi (-a) or cplusplus (-+) |
| |
| Current set values are: |
| nocreate |
| nointeractive |
| (noritchie) |
| (nopreansi) |
| ansi |
| (nocplusplus) |
| char *x |
| int *x(char *w, int y) |
| int *x(char *) |
| int *x(int ) |
| int *x(char *, int ) |
| int *x(args) |
| declare x as pointer to char |
| declare x as function returning pointer to int |
| declare x as function (args) returning pointer to int |
| declare x as function (pointer to char) returning pointer to int |
| declare x as function (pointer to char, int) returning pointer to int |
| declare x as function (pointer to char, int, float) returning pointer to int |
| declare x as function (int) returning pointer to int |
| (char *)x |
| (int (*)())x |
| (int (*)())x |
| (int (*)(args))x |
| (int (*)(char *x, int y))x |
| (int (*)(char *))x |
| (int (*)(char *, int ))x |
| (int (*)(char *, int , float ))x |
| cast x into pointer to char |
| cast x into pointer to function returning int |
| cast x into pointer to function (pointer to char) returning int |
| cast x into pointer to function (pointer to char, int) returning int |
| cast x into pointer to function (pointer to char, int, float) returning int |
| [] means optional; {} means 1 or more; <> means defined elsewhere |
| commands are separated by ';' and newlines |
| command: |
| declare <name> as <english> |
| cast <name> into <english> |
| explain <gibberish> |
| set or set options |
| help, ? |
| quit or exit |
| english: |
| function [( <decl-list> )] returning <english> |
| array [<number>] of <english> |
| [{ const | volatile | noalias }] pointer to <english> |
| <type> |
| type: |
| {[<storage-class>] [{<modifier>}] [<C-type>]} |
| { struct | union | enum } <name> |
| decllist: a comma separated list of <name>, <english> or <name> as <english> |
| name: a C identifier |
| gibberish: a C declaration, like 'int *x', or cast, like '(int *)x' |
| storage-class: extern, static, auto, register |
| C-type: int, char, float, double, or void |
| modifier: short, long, signed, unsigned, const, volatile, or noalias |
| Valid set options (and command line equivalents) are: |
| options |
| create (-c), nocreate |
| interactive (-i), nointeractive |
| ritchie (-r), preansi (-p), ansi (-a) or cplusplus (-+) |
| |
| Current set values are: |
| nocreate |
| nointeractive |
| (noritchie) |
| (nopreansi) |
| ansi |
| (nocplusplus) |
| char *x |
| Warning: Unsupported in C -- 'reference' |
| char &x |
| Warning: Unsupported in C -- 'pointer to member of class' |
| int X::*foo |
| Warning: Unsupported in C -- 'pointer to member of class' |
| class Y *(X::*foo)(arg1, arg2) |
| int *x(char *w, int y) |
| int *x(char *) |
| int *x(int ) |
| int *x(char *, int ) |
| int *x(args) |
| declare x as pointer to char |
| Warning: Unsupported in C -- 'pointer to member of class' |
| declare foo as pointer to member of class X int |
| Warning: Unsupported in C -- 'pointer to member of class' |
| declare foo as pointer to member of class X function (arg1, arg2) returning pointer to class Y |
| declare x as function returning pointer to int |
| declare x as function (args) returning pointer to int |
| declare x as function (pointer to char) returning pointer to int |
| declare x as function (pointer to char, int) returning pointer to int |
| declare x as function (pointer to char, int, float) returning pointer to int |
| declare x as function (int) returning pointer to int |
| (char *)x |
| Warning: Unsupported in C -- 'pointer to member of class' |
| (int X::*)x |
| (int (*)())x |
| (int (*)())x |
| (int (*)(args))x |
| (int (*)(char *x, int y))x |
| (int (*)(char *))x |
| (int (*)(char *, int ))x |
| (int (*)(char *, int , float ))x |
| cast x into pointer to char |
| Warning: Unsupported in C -- 'pointer to member of class' |
| cast x into pointer to member of class X int |
| cast x into pointer to function returning int |
| cast x into pointer to function (pointer to char) returning int |
| cast x into pointer to function (pointer to char, int) returning int |
| cast x into pointer to function (pointer to char, int, float) returning int |
| exit 0 |