Skip to content

Atomic type checker only accepts pulse statements within parallel and serial blocks #102

Description

@vishnu-m77

In the atomic frontend, parallel and serial blocks currently reject any Declaration statement, even when the declared value is a valid Pulse. The blocks only accept nested parallel and serial blocks or Pulse statements. Example:

beam_mw = beam(...)
parallel {
p0 = pulse(beam_mw, 5e-6, r[0])
p0
}

The type checker raises a type error on line 3 of this code, since the parallel block contains a Declaration. This is a design choice, and this rule can be relaxed to allow Pulse declarations in the future.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions