beautypg.com

Echelon Neuron User Manual

Page 80

background image

72

Neuron C Compiler Errors (NCC)

NCC#

Description

207

Invalid operand for address operator [NCC#207]

The operand of the & address operator is not a variable, or is a variable

type for which addressing is not permitted. For example, you cannot take
the address of a numeric constant. In Neuron C, you also cannot take the

address of a timer object, a message tag, an I/O object, or a functional block.

208

The 'io_select' call for this device cannot specify a clock value [NCC#208]

The io_select( ) function permits an optional second parameter used to
change the timer/counter internal clock setting (in a range from 0-7).

However, this clock option can only be used when selecting an I/O object

that permits a clock setting in that object's declaration. See the

I/O Model

Reference

for more information.

209
210

Bad type for operator [NCC#209]

Bad type for conditional expression [NCC#210]

These error diagnostics result from combining expressions of conflicting

types, such as assigning an int to a pointer, or a pointer of one type to a
pointer of another type, or in using objects that have no value (such as

message tags or I/O object names) in expressions.
However, note that casting should be avoided if possible, as it is often poor
programming practice.

211
212

Long constant value being converted to short [NCC#211]

Possible data loss converting long to short [NCC#212

These diagnostics result from an automatic conversion of a long variable to
a short. To make these warnings go away, modify the variable declarations

or use an explicit cast operator.

213

Cannot use address or index operator with message object [NCC#213]

The message objects, msg_out, msg_in, resp_out, and resp_in, have no

value in themselves. They only have meaning when they are accessed
using the dot operator (.) and a field name. Only certain predefined field

names apply. The data field is an array, and access to it must be by index,

except when used with memcpy( ).

214

If one priority count is zero, both must be zero [NCC#214]

The Neuron C application controls the counts and sizes of various buffers
used in sending and receiving messages and network variable updates.
There are two priority buffer pools, one at the network level, and one at the
application level. Either or both pools must be empty, or both pools must

contain buffers. A zero count cannot be specified for one priority pool and a

nonzero count for the other.