Page MenuHomeFeedback Tracker

Unclosed curly braces produces no error
New, NormalPublic

Description

Calling an expression with unclosed curly braces produces no error. Nothing happens. ARMA should be reporting an error.

Details

Severity
Major
Resolution
Open
Reproducibility
Always
Operating System
Windows 7
Category
General
Steps To Reproduce

Go into the debug console's Execute area and enter the following:

typeName call { 0

then press LOCAL EXEC. Nothing will be returned.

In contrast, append the closing curly brace, press LOCAL EXEC and the answer given will be "SCALAR".

Additional Information

This is a nasty bug because it means that any preInit functions or files run during a mission startup that have mismatched curly braces will simply not execute - in their entirety. Symbols will not be defined, threads will not be started, and the user won't know anything is wrong. Because ARMA also doesn't give errors when calling a symbol that evaluates as nil, some very strange behaviors can result.

Note that unclosed parentheses and square braces are correctly detected and reported to the user.

Event Timeline

JB47394 created this task.Oct 13 2018, 7:43 PM

In the same vein, an unclosed quoted string will also produce no error. The specific case I ran into was a quoted string that was closed, but lacked a semicolon after it. No error was generated and the file's contents were not available at runtime.