From 8e260d5270d6b2228b710ba2dc0b24ad6eb98222 Mon Sep 17 00:00:00 2001 From: David Taylor Date: Mon, 4 Jan 1999 15:37:21 +0000 Subject: new files -- part of HP merge. --- gdb/testsuite/gdb.base/constvars.c | 178 +++++++++++++++++++++++++++++++++++++ 1 file changed, 178 insertions(+) create mode 100644 gdb/testsuite/gdb.base/constvars.c (limited to 'gdb/testsuite/gdb.base/constvars.c') diff --git a/gdb/testsuite/gdb.base/constvars.c b/gdb/testsuite/gdb.base/constvars.c new file mode 100644 index 0000000..4fe9dad --- /dev/null +++ b/gdb/testsuite/gdb.base/constvars.c @@ -0,0 +1,178 @@ +void marker1 (void) +{ + +} + +// misc. function params + +int qux1 (const char cc, const char & ccr, const char * ccp, char * const cpc) +{ + return 33; +} + +int qux2 (volatile unsigned char vuc, const volatile int cvi, + volatile short & vsr, volatile long * vlp, float * volatile fpv, + const volatile signed char * const volatile cvscpcv) +{ + return 400; +} + + +int main(void) +{ + char lave = 'B'; + unsigned char lavish = 10; + short lax = 20; + unsigned short lecherous = 30; + long lechery = 40; + unsigned long lectern = 50; + float leeway = 60; + double legacy = 70; + signed char lemonade = 35; + + const char laconic = 'A'; + const unsigned char laggard = 1; + const short lagoon = 2; + const unsigned short laity = 3; + const long lambent = 4; + const unsigned long laminated = 5; + const float lampoon = 6; + const double languid = 7; + + // pointers to constant variables + const char *legend = &lave; + const unsigned char *legerdemain = &lavish; + const short *leniency = &lax; + const unsigned short *leonine = &lecherous; + const long *lesion = &lechery; + const unsigned long *lethal = &lectern; + const float *lethargic = &leeway; + const double *levity = &legacy; + + // constant pointers to constant variables + const char *const lewd = &laconic; + const unsigned char *const lexicographer = &laggard; + const short *const lexicon = &lagoon; + const unsigned short *const liaison = &laity; + const long *const libation = &lambent; + const unsigned long *const libelous = &laminated; + const float *const libertine = &lampoon; + const double *const libidinous = &languid; + + // this is the same as const char * legend .... + char const *languish = &laconic; + unsigned char const *languor = &laggard; + short const *lank = &lagoon; + unsigned short const *lapidary = &laity; + long const *larceny = &lambent; + unsigned long const *largess = &laminated; + float const *lascivious = &lampoon; + double const *lassitude = &languid; + + // constant pointers to variable + char *const lamprey = &lave; + unsigned char *const lariat = &lavish; + short *const laudanum = &lax; + unsigned short *const lecithin = &lecherous; + long *const leviathan = &lechery; + unsigned long *const libretto = &lectern; + float *const lissome = &leeway; + double *const locust = &legacy; + + // volatile variables + + volatile char vox = 'X'; + volatile unsigned char victuals = 13; + volatile short vixen = 200; + volatile unsigned short vitriol = 300; + volatile long vellum = 1000; + volatile unsigned long valve = 2000; + volatile float vacuity = 3.0; + volatile double vertigo = 10.3; + + // pointers to volatile variables + + volatile char * vampire = &vox; + volatile unsigned char * viper = &victuals; + volatile short * vigour = &vixen; + volatile unsigned short * vapour = &vitriol; + volatile long * ventricle = &vellum; + volatile unsigned long * vigintillion = &valve; + volatile float * vocation = &vacuity; + volatile double * veracity = &vertigo; + + // volatile pointers to volatile variables + + volatile char * volatile vapidity = &vox; + volatile unsigned char * volatile velocity = &victuals; + volatile short * volatile veneer = &vixen; + volatile unsigned short * volatile video = &vitriol; + volatile long * volatile vacuum = &vellum; + volatile unsigned long * volatile veniality = &valve; + volatile float * volatile vitality = &vacuity; + volatile double * volatile voracity = &vertigo; + + // const volatile vars + + const volatile char victor = 'Y'; + const volatile unsigned char vicar = 11; + + // pointers to const volatiles + + const volatile char * victory = &victor; + const volatile unsigned char * vicarage = &vicar; + + // const pointers to volatile vars + + volatile char * const vein = &vox; + volatile unsigned char * const vogue = &victuals; + + // const pointers to const volatile vars + + const volatile char * const cavern = &victor; + const volatile unsigned char * const coverlet = &vicar; + + // volatile pointers to const vars + + const char * volatile caveat = &laconic; + const unsigned char * volatile covenant = &laggard; + + // volatile pointers to const volatile vars + + const volatile char * volatile vizier = &victor; + const volatile unsigned char * volatile vanadium = &vicar; + + // const volatile pointers + + char * const volatile vane = &lave; + unsigned char * const volatile veldt = &lavish; + + // const volatile pointers to const vars + + const char * const volatile cove = &laconic; + const unsigned char * const volatile cavity = &laggard; + + // const volatile pointers to volatile vars + + volatile char * const volatile vagus = &vox; + volatile unsigned char * const volatile vagrancy = &victuals; + + // const volatile pointers to const volatile + + const volatile char * const volatile vagary = &victor; + const volatile unsigned char * const volatile vendor = &vicar; + + // misc. references + + const char & radiation = laconic; + volatile signed char & remuneration = lemonade; + + #ifdef usestubs + set_debug_traps(); + breakpoint(); + #endif + marker1(); + + + return 0; +} -- cgit v1.1