Project

General

Profile

Actions

Bug #43

open

Pb interpretation du compilateur?

Bug #43: Pb interpretation du compilateur?

Added by Anonymous about 18 years ago. Updated about 18 years ago.

Status:
New
Priority:
Low
Assignee:
Category:
Compiler
Target version:
-
Start date:
Due date:
% Done:

0%

Estimated time:
Platform:
Resolution:
Triage Stage:

Description

Supposons un type A avec n alternatives
Aa1(...),
Aa2(...),
Aa3(...),
Aan(...)
)
Supposons un type B avec 1 seule alternative Bb(...)

soit a un terme de A et b un terme de B

si je cherche à utiliser la forme condensée de la conditionnelle,
en faisant quelque chose comme

if a is Aa1(...) then

if b is Bb(...) then //conditionnelle à 1 cas (résurgence)
...

else
if a is Aa2(...)

et bien le compilateur me refuse cette orthographe (le fourbe! ;-) )
Il ne perçoit pas le else comme associé à la première condition...

Je peux contourner le problème en écrivant

if b is {
Bb(...) then
...
}

Mais je perds alors le bénéfice du if condensé sur alternative unique. Je soumets ce cas, mais possible est le fait que j'ai râté quelque chose dans la philosophie anubisienne...

Updated by Anonymous about 18 years ago Actions #1

On peut contourner le problème en mettant des parenthèses :

if a is Aa1(...) then
(
    if b is Bb(...) then //conditionnelle à 1 cas (résurgence)

        ...
)
else if a is Aa2(...) 

Mais ce serait plus simple, en effet, si le compilateur pouvait gérer ça tout seul...

Actions

Also available in: PDF Atom