Skip to content

tpp can't compile more than one call of inlined functions #57

@halmusaibeli

Description

@halmusaibeli

When more than one call of an inlined function exists in the same file, the tpp will throw an error when compiling as follows.

FAILED: C:/Users/HamdanAl-Musaibeli/workhub/myhub/sensing_tpp/build/G1_UFRAME_CALIBRATE.ls 
"C:\Users\HamdanAl-Musaibeli\workhub\shrdhub\pub\tp_plus\bin\tpp.bat" C:\Users\HamdanAl-Musaibeli\workhub\myhub\sensing_tpp\src\G1_UFRAME_CALIBRATE.tpp -o C:\Users\HamdanAl-Musaibeli\workhub\myhub\sensing_tpp\build\G1_UFRAME_CALIBRATE.ls -e "C:\Users\HamdanAl-Musaibeli\workhub\myhub\sensing_tpp\temp\env2.tpp" /I"C:\Users\HamdanAl-Musaibeli\workhub\myhub\sensing_tpp\include" 
default position not set! May give unintended results! Check position data before running!
C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/function.rb:172:in `block in preinline': undefined method `identifier' for #<TPPlus::Nodes::DigitNode:0x000001ca6c88d668 @value=3, @name=""> (NoMethodError)

              map[v.identifier] = map[k]
                   ^^^^^^^^^^^
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/function.rb:167:in `each'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/function.rb:167:in `preinline'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/call_node.rb:159:in `eval'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `block in string_for'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `each'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `inject'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `string_for'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:22:in `true_block'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:89:in `eval'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `block in string_for'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `each'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `inject'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:56:in `string_for'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:38:in `false_block'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/nodes/conditional_node.rb:98:in `eval'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/interpreter.rb:406:in `block in eval'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/interpreter.rb:399:in `each'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/lib/tp_plus/interpreter.rb:399:in `eval'
        from C:/Users/HamdanAl-Musaibeli/workhub/shrdhub/pub/tp_plus/bin/tpp:192:in `<main>'
ninja: build stopped: subcommand failed.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions