Skip to content

Changes

Started by upstream project Cforall Full Build #452
Started 6 days 10 hr ago
Queued 8.4 sec
Took 31 sec on built-in
Fix broken '-XCFA,-Pexpranl' command-line flag and usage messages for "disconnected" flags.

The test suite has never exercised this diagnostic feature.
mlbrooks at
Provide smooth CodeGenerator fallback for an unhandled node in a diagnostic context.

Includes a Printer-Indenter refactor for sharing an indentation level across cooperating passes.

All changes are for interactive-diagnostic behaviours, for which the test suite has no coverage.
mlbrooks at
Remove unnecessary exports (tidy-up)
mlbrooks at
Add test for compound-literal basics that already woked.

Much about compound literals has been found not working; tests for fixed versions will follow, along with the fixes.
mlbrooks at
Patch CFA arrays to work on multiple compile units by tactically changing compound-literal hoisting.

Hoisting that enables compound literals to participate in CFA initialization (RAII, globals/statics with dynamic initializer args) was found to be active in an inaccurate set of cases (both ways).
The present change does not try to fix this situation.
It just fixes a specific inaccuracy about when a static declaration's initializer is being worked on and adds the rule that compound literals that hoist to outside of a function always end up static.
Subsequent work is hoped to bring more sense to the overall hoisting rule set.

Both added tests report failure for the original CompoundLiteral.cpp.
mlbrooks at