Martin Whitaker
9c62154924
Fix some new compiler warnings seen when using GCC 15 and clang 21.
...
No functional changes.
2025-10-12 22:23:24 +01:00
Cary R
446e825ed3
Fix space issues
2016-08-14 19:37:40 -07:00
Wojciech M. Zabolotny
2c52fd65d3
Changes necessary to compile with gcc on Debian/Linux testing
2016-07-07 23:01:02 +02:00
anon
49515ff62b
Update vtype.cc
...
Fixed bug described in #110
2016-06-13 00:55:28 +02:00
Maciej Suminski
e0b2a5b337
vhdlpp: Refactored prange_t (class ExpRange).
2016-01-06 15:30:06 +01:00
Maciej Suminski
ab025f1e3b
vhdlpp: VTypeRange split to VTypeRangeConst and VTypeRangeExpr.
...
When range cannot be evaluated it uses the original expressions.
2015-12-04 11:40:03 +01:00
Maciej Suminski
96a0a84e6c
vhdlpp: Fixed the range boundaries order.
2015-12-04 10:29:08 +01:00
Maciej Suminski
ba3c07a59a
vhdlpp: CHARACTER type is converted to bit[7:0] instead of byte.
...
This way it is possible to have limited size strings. Previously they
were translated to unpacked array of bytes, which cannot be assigned as
it was a string.
2015-11-24 17:19:33 +01:00
Maciej Suminski
d39f692cfd
vhdlpp: Refactored the way of handling standard types.
2015-06-24 23:53:32 +02:00
Maciej Suminski
356a09d295
vhdlpp: VTypeArray::evaluate_ranges uses range boundaries to determine the direction.
2015-06-24 23:53:31 +02:00
Maciej Suminski
d6ff1946f9
vhdlpp: Support for time expressions.
2015-06-08 18:42:52 +02:00
Maciej Suminski
a33bbecc98
vhdlpp: VTypeRange::write_to_stream uses to/downto depending on the range boundaries.
2015-05-19 22:40:55 +02:00
Maciej Suminski
e6525ec35f
vhdlpp: Added a constructor for VTypeArray that takes integers as ranges.
2015-03-27 18:57:40 +01:00
Maciej Suminski
d4237774a5
vhdlpp: Error message for missing types in VTypePrimitive::get_width().
2015-03-27 14:53:43 +01:00
Maciej Suminski
e33b8b4dde
vhdlpp: VType::get_width() uses information from Scope to determine the type width.
2015-03-06 17:58:04 +01:00
Maciej Suminski
afbda099fb
vhdlpp: Workaround to handle constant arrays of vectors & records.
2015-03-06 17:32:25 +01:00
Maciej Suminski
4b0d220671
vhdlpp: get_width() for VType.
2015-03-06 17:32:25 +01:00
Maciej Suminski
e569e07d4e
vhdlpp: Type 'NATURAL' is translated to 'int unsigned'.
2015-02-19 17:07:41 +01:00
Maciej Suminski
12b4914b63
vhdlpp: ExpName resolves enum values.
2015-02-17 10:15:57 +01:00
Maciej Suminski
8a854affa6
vhdlpp: Clone routines for Expression & VType classes.
2015-02-05 11:25:03 +01:00
Maciej Suminski
48265ecd9b
vhdlpp: Subprograms return types have their ranges evaluated if possible.
...
Added VTypeArray::evaluate_ranges() method.
2015-02-05 11:24:59 +01:00
Maciej Suminski
90293d8e0a
vhdlpp: VTypeArray::is_variable_length() uses ScopeBase to determine if variable has constant length.
2015-02-04 16:57:43 +01:00
Maciej Suminski
5d26f0e28d
vhdlpp: Added VTypeArray::is_variable_length() method.
2015-02-04 16:57:43 +01:00
Maciej Suminski
774609fbbb
vhdlpp: VTypeArray stores parent type, in case it is a subtype.
2015-02-04 16:57:43 +01:00
Maciej Suminski
b8b2f53027
vhdlpp: Added VType::get_generic_typename() method.
2015-02-04 16:57:43 +01:00
Maciej Suminski
51b9191021
vhdlpp: Added VType::is_unbounded() method.
2015-02-04 16:57:42 +01:00
Maciej Suminski
f5dd2ac87e
vhdlpp: Aggregate expressions for records can be specified in any order.
2014-09-17 16:32:56 +02:00
Maciej Suminski
cb03802a17
vhdlpp: Added VTypeArray::basic_type() to cope with
...
arrays based on typedefs.
2014-09-15 12:10:05 +02:00
Maciej Suminski
c98c3e5d14
vhdlpp: Inlined a few functions.
2014-09-15 12:10:04 +02:00
Maciej Suminski
a63289c2fc
vhdlpp: VTypeArray::range_t handles direction (to/downto).
2014-09-15 12:10:04 +02:00
Maciej Suminski
8e9c25a23e
vhdlpp: Added 'packed' property for VTypes.
...
It detetermines if a type can be used as the base type of a packed array.
2014-08-22 10:45:02 +02:00
Maciej Suminski
5ed60a151f
Added support for real type in vhdlpp.
2014-08-06 15:00:35 +02:00
Stephen Williams
13be45bd73
Fix dump of primitive CHARACTER types.
2013-06-12 14:09:07 -07:00
Stephen Williams
d9fea802da
Function declarations in packages
...
This is still basic. Definitions are still not done.
2013-06-12 14:09:07 -07:00
Arun Persaud
f5aafc32f9
updated FSF-address
2012-08-29 10:12:10 -07:00
Stephen Williams
4748f0cb5e
Handle incomplete type declarations
...
Use these in the package library to allow for arbitrary mixing
of type declaration and use. This makes writing libraries much
easier.
2012-05-22 17:31:27 -07:00
Stephen Williams
021d944a30
Probe type of ExpName with a record prefix.
2012-05-22 17:31:25 -07:00
Stephen Williams
79435924f2
Move some VType::show methods to ::write_to_stream methods.
2012-05-22 17:31:25 -07:00
Stephen Williams
9ed56a6354
Parse record types, and some new aggregate types.
2012-05-22 17:31:25 -07:00
Stephen Williams
c1be255844
Fix dump display of array ranges.
2011-11-05 17:22:30 -07:00
Stephen Williams
2063c5ee9d
Support VHDL user defined array types.
2011-11-05 15:55:17 -07:00
Stephen Williams
6268db6e68
Handle simple type declarations.
2011-10-09 15:25:35 -07:00
Stephen Williams
271aaf6376
Parse enumeration type declarations.
2011-10-01 17:04:04 -07:00
Stephen Williams
3ff7a8f7b0
Add support for constants and package types.
...
Significant rework of scope management to unify the handling of
types in the ieee library and types/constants/components in packages.
This involved adjusting the parser rules to manage a stack of scopes
and rewriting the IEEE library support to not use global maps for
the loaded types.
2011-04-17 17:19:09 -07:00
Stephen Williams
bfcdfd0a7e
Handle signed stdlogic.
2011-02-27 10:33:37 -08:00
Stephen Williams
905f68c865
Handle signed vs unsigned vector types.
...
In principle, some of these should be handled by overloaded operator
functions, but these are built in types with natural translations so
do the obvious things.
2011-02-25 20:09:31 -08:00
Stephen Williams
acc4f73186
Declare the numeric signed type.
2011-02-19 16:50:36 -08:00
Stephen Williams
c6ea2f3bf5
Stub support for "use" directives.
...
Implement the parser infrastructure for handling library use clauses,
and use that to handle specific packages of the ieee library. Make
the numeric types come from the numeric_* packages instead of being
built in.
2011-02-19 13:08:26 -08:00
Stephen Williams
8a5225e61f
Stub support for library import.
...
This provides a stub implementation for library import. Use this
stub to make up a slightly more functional ieee library implementation.
2011-02-19 11:39:00 -08:00
Stephen Williams
7d552980a6
Elaborate array subtypes of ports.
...
There are internal types that are unbounded arrays. Allow subtype
syntax that creates bounded versions of these arrays, and elaborate
them as vectors at port boundaries. This makes some interesting types
work out.
Also start replacing vhdlint and vhdlreal with int64_t and double,
which are reasonable values for universal_integer and universal_real
from the VHDL standard. I need these cleaned up because the ints in
particular are used for the literal expressions in array index constraints.
2011-02-13 19:01:21 -08:00