This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Compiling differences between C51 v7.03 and v8.06

Hello!

I have uVision that compiles fine with the C51 v7.03 compiler and the related package, but not complete with the 8.06. I used two different Keil installations. All files are in the same folder.

In the 8.06 I get linker errors like "object does not fit in to pdata page" and "0080H". This looks like the compiler was thinking the PDATA was only 128 bytes, but it is set to 256 bytes in the startup.a51. Any clue what's different in the newer Keil package?

Also there is a warning in 8.06 (which does not show in 7.03) "converting non-pointer to pointer" on this

ptr_xdata = sPtr_obj->Adresse;


while the vars are set like this:

uchar uc_set_obj( uchar pdata *ptr_Set)
{
   uchar i;
   uchar xdata *ptr_xdata;
   struct stOBJADR code *sPtr_obj;

   sPtr_obj=&Obj[*ptr_Set];
   .
   .
   .
   ptr_xdata = sPtr_obj->Adresse;
}


The struct stOBJADR has a member "uint Adresse;"

I can see no wrong use of the pointers. I just want to be sure that the warning does not affect the code to not work correctly.

Parents
  • I said
    Thus the compiler, while being "content with its decision" (it has done what the documentation states it will)

    But of course you've snipped the crucial part of your post. Here's the rest of the sentence:

    does declare "I am unsure" i.e. issues a warning.

    Your 'adjustment' of quotes definitely is "as the corrupt administration attempts to rewrite history".

Reply
  • I said
    Thus the compiler, while being "content with its decision" (it has done what the documentation states it will)

    But of course you've snipped the crucial part of your post. Here's the rest of the sentence:

    does declare "I am unsure" i.e. issues a warning.

    Your 'adjustment' of quotes definitely is "as the corrupt administration attempts to rewrite history".

Children
  • it IS unsure about the users intention.

    Erik

  • it IS unsure about the users intention.

    Round and round and round we go!

    Have you tried your unprototyped function mismatched arguments example yet?

  • If you read my post you will see that I suggested YOU did it. I have no interest in how wrong code works, if it is wrong (whether that is a C issue or not) it is wrong.

    if all warnings are treated as errors, what is the interest in what happens if a warning exist.

    Erik

  • If you read my post you will see that I suggested YOU did it.

    Well, I did. The result is not what *you* expect.

    If I simply tell you what happens you will no doubt argue that I'm wrong, so it would be better for all concerned if you would simply try it. Perhaps if you see the result in front of you we can avoid another one of your futile attempts to wriggle out of a situation where reality is at odds with your beliefs.

    if all warnings are treated as errors, what is the interest in what happens if a warning exist

    Er, wait a minute. *You* suggested trying to 'visualise' what would happen in this situation, not me.

  • If I simply tell you what happens you will no doubt argue that I'm wrong
    I do not think I have ever stated you wrong except in your deliberate misinterpretations of my statements.

    When you I am sure, by mistake, have included anything helpful ".. x does y this way" I have never stated you wrong.

    I comr to think of the proverb "thief think everyone steals" when you anticipate me arguing that you are wrong

    Erik

  • I do not think I have ever stated you wrong except in your deliberate misinterpretations of my statements.

    It's quite creative of you to try this new tactic, but pretending that your errors are in fact misunderstandings on my part isn't going to fool anyone. I can assure you that I read your posts carefully to try and compensate for any failure to express your intent clearly.

    When you I am sure, by mistake, have included anything helpful ".. x does y this way" I have never stated you wrong.

    Perhaps not, but your repeated protestations that you're correct after I point out an error in something you've written amount to much the same thing. I don't often provide you with the solution, however, as someone who claims such lengthy experience as yourself has little excuse for making the error and no excuse for not checking the documentation for the correct information.

    I comr to think of the proverb "thief think everyone steals" when you anticipate me arguing that you are wrong

    Ok then, let's rephrase: I anticipate you arguing that you are correct, or that you meant something else, or that somebody else said it, or mangling a quote to distort the meaning. I don't anticipate you owning up to having made a mistake. I actually begin to wonder whether you are capable of accepting, even quietly to yourself, that you might not always be right.