diff options
author | jistone <jistone> | 2006-12-22 02:34:05 +0000 |
---|---|---|
committer | jistone <jistone> | 2006-12-22 02:34:05 +0000 |
commit | ef474d24145b85f933d06a1648b0d9cbf6695fe5 (patch) | |
tree | 4025671f55ad05735ad61d94cca720aa33c4d65e /staptree.h | |
parent | 9c66f4e068e743727dfec5acec6547cd18a4030c (diff) | |
download | systemtap-steved-ef474d24145b85f933d06a1648b0d9cbf6695fe5.tar.gz systemtap-steved-ef474d24145b85f933d06a1648b0d9cbf6695fe5.tar.xz systemtap-steved-ef474d24145b85f933d06a1648b0d9cbf6695fe5.zip |
2006-12-21 Josh Stone <joshua.i.stone@intel.com>
PR 3671
* parse.cxx (parser::parse_global): Allow a maxsize on global arrays.
* staptree.h (struct vardecl): Add the maxsize field.
* staptree.cxx (vardecl::vardecl): Init. maxsize.
(vardecl::set_arity): Don't allow arity 0 when there's a maxsize.
(vardecl::compatible_arity): Ditto.
(vardecl::print): Include maxsize in output.
(target_symbol::print): Ditto.
* translate.cxx (struct mapvar, mapvar::mapvar): Add maxsize.
(mapvar::init): Init maps with the given maxsize if specified, else
keep using MAXMAPENTRIES.
(mapvar::set): Make the error message give the maxsize.
(mapvar::add): Ditto, and check for overflow on pmap add.
(c_unparser::getmap): Pass the maxsize from the vardecl to mapvar.
Diffstat (limited to 'staptree.h')
-rw-r--r-- | staptree.h | 1 |
1 files changed, 1 insertions, 0 deletions
@@ -395,6 +395,7 @@ struct vardecl: public symboldecl void set_arity (int arity); bool compatible_arity (int a); int arity; // -1: unknown; 0: scalar; >0: array + int maxsize; // upperbound on size for arrays std::vector<exp_type> index_types; // for arrays only literal *init; // for global scalars only }; |