Changeset 11547


Ignore:
Timestamp:
Sep 2, 2018 10:39:16 AM (15 months ago)
Author:
Jonathan Kämpe
Message:

#5670 Fixed bug in r11543

Location:
trunk/Compiler
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk/Compiler/ModelicaCBackEnd/test/modelica/CCodeGenGlobalsTests.mo

    r11543 r11547  
    16341634end GlobalConstantRecordArray1;
    16351635
     1636model GlobalConstantForPowInt1
     1637    record R
     1638        Real[:] a;
     1639    end R;
     1640   
     1641    function f
     1642        input Real x;
     1643        constant Integer[:] c = 1:2;
     1644        output Real y = x;
     1645    algorithm
     1646        for i in 1:2 loop
     1647            y := y ^ c[i];
     1648        end for;
     1649    annotation(Inline=false);
     1650    end f;
     1651   
     1652    Real y = f(time);
     1653   
     1654annotation(__JModelica(UnitTesting(tests={
     1655    CCodeGenTestCase(
     1656        name="GlobalConstantForPowInt1",
     1657        description="",
     1658        variability_propagation=false,
     1659        template="
     1660$C_functions$
     1661",
     1662        generatedCode="
     1663void func_CCodeGenGlobalsTests_GlobalVariables_GlobalConstantForPowInt1_f_def0(jmi_real_t x_v, jmi_real_t* y_o) {
     1664    JMI_DYNAMIC_INIT()
     1665    JMI_DEF(REA, y_v)
     1666    jmi_real_t i_0i;
     1667    jmi_real_t i_0ie;
     1668    y_v = x_v;
     1669    i_0ie = 2 + 1 / 2.0;
     1670    for (i_0i = 1; i_0i < i_0ie; i_0i += 1) {
     1671        y_v = jmi_pow_function(\"CCodeGenGlobalsTests.GlobalVariables.GlobalConstantForPowInt1.f\", y_v, jmi_array_val_1(JMI_GLOBAL(CCodeGenGlobalsTests_GlobalVariables_GlobalConstantForPowInt1_f_c), i_0i), \"y ^ CCodeGenGlobalsTests.GlobalVariables.GlobalConstantForPowInt1.f.c[i]\");
     1672    }
     1673    JMI_RET(GEN, y_o, y_v)
     1674    JMI_DYNAMIC_FREE()
     1675    return;
     1676}
     1677
     1678jmi_real_t func_CCodeGenGlobalsTests_GlobalVariables_GlobalConstantForPowInt1_f_exp0(jmi_real_t x_v) {
     1679    JMI_DEF(REA, y_v)
     1680    func_CCodeGenGlobalsTests_GlobalVariables_GlobalConstantForPowInt1_f_def0(x_v, &y_v);
     1681    return y_v;
     1682}
     1683")})));
     1684end GlobalConstantForPowInt1;
     1685
    16361686
    16371687end GlobalVariables;
  • trunk/Compiler/ModelicaFlatTree/src/jastadd/Variability.jrag

    r11543 r11547  
    547547
    548548    syn TypePrefixVariability CommonAccess.variability();
    549     eq FAccess.variability() = myTopFV().variability();
     549    eq FAccess.variability() = myTopFV().variability().combine(indexVariability());
    550550
    551551    syn TypePrefixVariability FSubscript.variability() = Variability.CONSTANT;
Note: See TracChangeset for help on using the changeset viewer.