Device Monitoring Studio - Monitor, log and analyze data coming through PC ports and connections
Download Device Monitoring Studio Hide this button

Errors

This topic describes all compilation and binding errors generated by Device Monitoring Studio.

CE001: The requested operation is not allowed on the given data type or not expected here

Operation or operator you attempted to use is not supported. Example:

var result = "string" - 2;  // operator - is not supported for strings
CE002: Divison by zero

Divison by zero has been encountered.

int array[5/0];
CE003: The specified identifier was not found

You referenced the previously undeclared identifier.

public struct A
{
    int a;
    int b;
    int arr[c];   // generates CE003, c is undeclared
};
CE004: Scalar is expected

A requested operation is allowed only on scalar values.

public struct A
{
    int data[10];
    int array[data];  // generates CE004, data is not a scalar
};
CE005: Vector is expected

A requested operation is allowed only on vector values.

public struct A
{
    int a;
    int b[a[1]];  // generates CE005, a is not a vector
};
CE006: Array index is out of range

An attempt to access array's element that is outside of the declared array size.

public struct A
{
    int a[10];
    int b[a[12]]; // generates CE006, a only has 10 elements (0..9)
};
CE007: Not implemented yet
This operation has not yet been implemented.
CE008: Invalid bit field size
Unsupported bit field size is used.
CE009: Syntax error
See error's additional message for detailed syntax error information.
CE010: Type has only been forward-declared

An attempt to materialize a type that has only been forward-declared is detected.

// forward declare B
struct B;

public struct A
{
    B data;    // generates CE010
};

// end of file
CE011: Operation not supported for dynamic type

sizeof operator is used with dynamic type.

struct B
{
    int size;
    char data[size];
};

public struct A
{
    char reserved[sizeof(B)]; // generates CE011, B is dynamic type
};
CE012: Type is redefined

An attempt to redefine already defined type is detected.

struct B
{
    int a;
};

struct B  // generates CE012
{
    int c;
};
CE013: Assertion failed
Assertion (generated by $assert directive) has failed.
CE014: Constant expression is expected
Compiler expects a constant expression here.
CE015: Constant string expression is expected
Compiler expects a constant string expression here.
CE016: Wrong number of arguments for a function call
An invalid number of arguments used in a call to built-in function.
CE017: Subscript operation for non-indexed array (hint: remove [noindex] attribute)

[] operator has been used for non-indexed array. Remove the noindex attribute.

struct B { … };

struct A
{
    [noindex] B data[1000];

    char reserved[data[5].size];  // generates CE017, remove [noindex] from previous line
};
CE018: Error returned by JavaScript engine
JavaScript function returned an error.
CE019: Invalid argument
Invalid argument has been passed to built-in function.
CE020: Maximum allowed recursion depth is reached

Check your source file for infinite recursion.

struct B;

struct A
{
    B b;
};

struct B
{
    A a;
};

// will generate CE020 after several iterations
CE021: Expression of another type is expected
Compiler expects expression of another type here. Additional information specifies what type is expected.