Commit Graph

485 Commits

Author SHA1 Message Date
Maciej Suminski 8298c96dee vhdlpp: Turned elaborate_argument() into a SubprogramHeader method. 2016-03-07 09:54:28 +01:00
Maciej Suminski b707228171 vhdlpp: file_open_status enum. 2016-03-07 09:54:28 +01:00
Maciej Suminski f2c8fb0479 vhdlpp: Display an error message when calling a function with too many arguments. 2016-03-07 09:54:28 +01:00
Maciej Suminski 3b165a5f25 vhdlpp: Skip package name emission when calling functions from the same package. 2016-03-07 09:54:28 +01:00
Maciej Suminski f1c07b86a3 vhdlpp: Implemented ReturnStmt::elaborate() method. 2016-03-07 09:54:28 +01:00
Maciej Suminski 00f5785f2c vhdlpp: Minor changes to write_to_stream functions. 2016-03-07 09:54:28 +01:00
Maciej Suminski b79f0d763f vhdlpp: Implemented ExpLogical::write_to_stream() method. 2016-03-07 09:54:28 +01:00
Maciej Suminski daed47eb45 vhdlpp: Improved conditional assignments.
Now they handle expressions without the final 'else'.
2016-03-07 09:54:28 +01:00
Maciej Suminski 19a187fa90 vhdlpp: Fixed the Expression visitor code. 2016-03-07 09:54:28 +01:00
Maciej Suminski db77fafe72 vhdlpp: Clone the initializing expression in signal declarations. 2016-03-07 09:54:28 +01:00
Maciej Suminski 7f6f4157d1 vhdlpp: ExpRange::emit() now returns the number of errors. 2016-03-07 09:54:28 +01:00
Maciej Suminski a884faa8c1 vhdlpp: Delayed assignment statements. 2016-03-07 09:54:28 +01:00
Maciej Suminski eeb5728e20 vhdlpp: emit() methods are const. 2016-03-07 09:54:28 +01:00
Maciej Suminski 730fdaf0f0 vhdlpp: Concurrent assertion statements. 2016-03-07 09:54:28 +01:00
Maciej Suminski 5748018409 vhdlpp: Limited support for final wait statement. 2016-03-07 09:54:28 +01:00
Maciej Suminski f6ee5d0f22 vhdlpp: Corrected an error message. 2016-03-07 09:54:28 +01:00
Maciej Suminski 2e6fb9b3f6 vhdlpp: shift_left/right() functions. 2016-03-07 09:54:28 +01:00
Maciej Suminski 03434efed3 vhdlpp: Elaborate ExpAttribute arguments. 2016-03-07 09:54:28 +01:00
Maciej Suminski 3af3c12b11 vhdlpp: Added system function NOW. 2016-03-07 09:54:28 +01:00
Maciej Suminski 2606d0e897 vhdlpp: Minor code clean up. 2016-03-07 09:54:28 +01:00
Maciej Suminski 52c912c4af vhdlpp: Allow calling functions without parameters and brackets. 2016-03-07 09:54:28 +01:00
Maciej Suminski b08ae23d0d vhdlpp: line feed character (LF). 2016-03-07 09:54:28 +01:00
Maciej Suminski 054dfdf0cf vhdlpp: Simpler enum definitions storage. 2016-03-07 09:54:28 +01:00
Maciej Suminski f52de62729 vhdlpp: Elaborate if statement condition as bool. 2016-03-07 09:54:28 +01:00
Maciej Suminski b6f1cb221e vhdlpp: Fixes for subtypes handling. 2016-03-07 09:54:28 +01:00
Maciej Suminski 79f38b8c56 vhdlpp: Basic loop support (loop..end loop). 2016-03-07 09:54:28 +01:00
Maciej Suminski ba274936e5 vhdlpp: Added 'image attribute for time type. 2016-01-06 15:30:24 +01:00
Maciej Suminski 214c940a1a vhdlpp: Fixing memory leaks and muting valgrind. 2016-01-06 15:30:20 +01:00
Maciej Suminski b711f16f05 vhdlpp: 'image attribute. 2016-01-06 15:30:06 +01:00
Maciej Suminski dff1ad08b0 vhdlpp: ExpAttribute split to Exp{Obj,Type}Attribute. 2016-01-06 15:30:06 +01:00
Maciej Suminski 71c63bf993 vhdlpp: Added argument_list token. 2016-01-06 15:30:06 +01:00
Maciej Suminski e0b2a5b337 vhdlpp: Refactored prange_t (class ExpRange). 2016-01-06 15:30:06 +01:00
Maciej Suminski 2c010d34bb vhdlpp: Unified Expression::evaluate() method. 2016-01-06 15:30:06 +01:00
Maciej Suminski 23633c498f vhdlpp: Moved dump_scope() to ScopeBase class. 2016-01-06 15:30:06 +01:00
Maciej Suminski 40075e11ab Code formatting. 2016-01-06 15:30:06 +01:00
Maciej Suminski 9276515e19 vhdlpp: Minor fix for ReportStmt::write_to_stream. 2016-01-05 14:23:25 +01:00
Maciej Suminski 3b310e8227 vhdlpp: Elaborate subprograms in packages. 2016-01-05 14:23:25 +01:00
Maciej Suminski 9886b8cb36 vhdlpp: Distinguish character and an array of bits during emission. 2016-01-05 13:55:22 +01:00
Maciej Suminski 1c4b1c12e4 vhdlpp: Fixes for 'wait for' statements emission. 2016-01-05 13:55:22 +01:00
Maciej Suminski ef3d0e4e0d vhdlpp: ExpString::emit distinguishes between array and string types. 2016-01-05 13:55:22 +01:00
Maciej Suminski 442750ca2c vhdlpp: Refactored {Report,Assert}Stmt so they handle expressions instead of strings. 2016-01-05 13:55:22 +01:00
Maciej Suminski 597001ee2f vhdlpp: Variables have always reg_flag set. 2016-01-05 13:55:22 +01:00
Maciej Suminski acb4ca8e47 vhdlpp: More descriptive error message for a missing function. 2016-01-05 13:55:22 +01:00
Cary R a4177f6ddc VHDL: Add some missing newlines 2015-12-19 10:50:16 -08:00
Cary R ad4b523edc A VHDL ExpAttribute() can share the base so don't just delete them 2015-12-13 19:01:33 -08:00
Cary R 24d1f49f3e Fix compile warning from recent patch 2015-12-08 22:07:27 -08: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 7cebed7382 vhdlpp: Disabled evaluation for ExpTime.
It was always evaluated to a value expressed in femtoseconds,
which not always might be the case.
2015-12-04 11:38:19 +01:00
Maciej Suminski 96a0a84e6c vhdlpp: Fixed the range boundaries order. 2015-12-04 10:29:08 +01:00
Maciej Suminski 2e9c3555cb vhdlpp: AssertStmt::elaborate() probes the condition type. 2015-12-03 17:56:56 +01:00