Opened 8 years ago

Last modified 8 years ago

#3876 closed bug

assignement of thrown extension to variable of type string — at Version 1

Reported by: andrewufrank Owned by:
Priority: normal Milestone:
Component: Compiler Version: 6.10.4
Keywords: Cc:
Operating System: Unknown/Multiple Architecture: Unknown/Multiple
Type of failure: None/Unknown Test Case:
Blocked By: Blocking:
Related Tickets: Differential Rev(s):
Wiki Page:

Description (last modified by igloo)

in an unusual case (exception thrown in code in the return) the thrown exception is returned from the function and then assigned to a variable with another type (e.g. string); if the variable is later evaluated, the exception is then actually thrown there (and not in the original function).

the bug is the problem in the asignement of a thrown exception to another type. the coding style is unfortunate and not encourage, but the compiler should report an error. (code like

             = do ...
                return (case x of 
                           0 -> throw Anexception

produces the error.

i attach a file to demonstrate the problem.

Change History (2)

Changed 8 years ago by andrewufrank

Attachment: TestThrow.hs added

example code

comment:1 Changed 8 years ago by igloo

Description: modified (diff)
Note: See TracTickets for help on using tickets.