diff --git a/disciplines.vams b/disciplines.vams index f934a6e5a..12ac0c74c 100644 --- a/disciplines.vams +++ b/disciplines.vams @@ -4,15 +4,15 @@ `else `define DISCIPLINES_VAMS 1 -discipline \logic +discipline \logic ; domain discrete; enddiscipline -discipline ddiscrete +discipline ddiscrete; domain discrete; enddiscipline -nature Current +nature Current; units = "A"; access = I; idt_nature = Charge; @@ -23,7 +23,7 @@ nature Current `endif endnature -nature Charge +nature Charge; units = "coul"; access = Q; ddt_nature = Current; @@ -34,7 +34,7 @@ nature Charge `endif endnature -nature Voltage +nature Voltage; units = "V"; access = V; idt_nature = Flux; @@ -45,7 +45,7 @@ nature Voltage `endif endnature -nature Flux +nature Flux; units = "Wb"; access = Phi; ddt_nature = Voltage; @@ -56,16 +56,16 @@ nature Flux `endif endnature -discipline electrical +discipline electrical; potential Voltage; flow Current; enddiscipline -discipline voltage +discipline voltage; potential Voltage; enddiscipline -discipline current +discipline current; flow Current; enddiscipline diff --git a/parse.y b/parse.y index 4d91bf448..db9428cdd 100644 --- a/parse.y +++ b/parse.y @@ -673,7 +673,7 @@ description ; discipline_declaration - : K_discipline IDENTIFIER + : K_discipline IDENTIFIER ';' { pform_start_discipline($2); } discipline_items K_enddiscipline { pform_end_discipline(@1); delete[] $2; } @@ -694,7 +694,9 @@ discipline_item ; nature_declaration - : K_nature IDENTIFIER nature_items K_endnature + : K_nature IDENTIFIER ';' + nature_items + K_endnature { delete[] $2; } ;