bprice@bmcg.UUCP (Bill Price) (05/16/85)
In article <1146@sjuvax.UUCP> jss@sjuvax.UUCP (J. Shapiro) writes: >I have yet to neet a pascal compiler which correctly handled > with device do > foo := foo; >where device.foo foo is a fieldname of device and foo is also a local >variable name. With mnemonic names this happens fairly often. I therefore >NEVER use this, as I can never be sure it is doing what I want... > >Jon Shapiro >Haverford College That's strange: I (on the other hand) have never met a Pascal compiler which failed to handle that construct correctly. Yes, Jon, I have met many compilers, with many strange and wonderful errors in them--your example just isn't one of them. >From your description, though, I don't see what the error might be. I would guess that your complaint runs as follows: "In a with-statement, the compiler does not implement the scope rules properly--a redefinition of one of the field-identifiers is not excluded from the statement in the with-statement (ref 6.2.2.5 and 6.8.3.10 of the Pascal language definition, ANSI/IEEE770X3.97-1983)." If that is indeed the problem, you have my permission to copy the quoted statement into your trouble report to your compiler vendors. :-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-):-) Because those paragraphs went way over your head, let me explain it to you. If you are unwilling to learn how to use your tools, then you never will be sure of how to use them. If you are even unwilling to learn the nature of your tools, you should change jobs. In the original, Jon blamed the compiler for his lack of understanding of the language. This may be a valid confusion for C, where the language is (for now) quite ill-defined, but is not valid at all for well-defined, professional language like Pascal. -- --Bill Price uucp: {Most Anybody}!sdcsvax!bmcg!bprice arpa:? sdcsvax!bmcg!bprice@nosc