This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: Cygwin.dll crash, alloca and custom stack


Anyway, this similar code does work under Linux, or at least it appears to:


It's a long walk from "at least appears to work" to "does work".

Are you saying it doesn't work, or are you just generally in a grumpy mood?


While I don't claim to be an uber-expert in assembler, I know I didn't "jump into space".

Yeah dude, you did. You pulled the rug out from under the C runtime, Cygwin, and apparently even the OS. It is not within the jurisdiction of a C program to do that.

Uh, C doesn't have a "runtime". And as you noticed, this is not a pure C program. Is there some law that I have to write pure C programs? As to whether I'm "pulling the rug out" from the OS, there is no reason to assume that should be so. There is no
reason why an OS should particularly care where I put my stack. The world doesn't
revolve around the C language's assumptions, but it could well be that Windows does
care. That's why I'm asking my question here. Not so that you can express your general dissatisfaction with non-C programmers, but so that people who might actually
know can speak up.



I've written task switching programs in C under DOS that switch stacks with no problem.


Neither Windows nor Linux is DOS.

This is true, but so what? Unless you have specific information that Windows or Linux cares, you are just being grumpy.


What Korny said: what you're trying to do is nuts.

Whether what I want to do will work or not is one thing. But telling me that trying to do it is "nuts", is.. well nuts. How in heck would you know if trying to do such a thing is nuts? Just because you don't understand the legitimate reasons for wanting to do it doesn't mean that it is.


Frankly I'd be surprised if gcc is even putting the asm() statements in the resulting machine code unmolested.

You seem to be surprised by a lot of things.


This ain't the Good Old Days, and you're not writing a task switcher, which
is the only legitimate reason to be doing what you're trying to do.

Oh yeah, you are some kind of god of computer science that you can pronounce judgements about what kind of things are "legitimate"? Do you actually realise that not all computer languages can be implemented with a model of one stack?







-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]