web
You’re offline. This is a read only version of the page.
close
Skip to main content

Notifications

Announcements

No record found.

Community site session details

Community site session details

Session Id :
Microsoft Dynamics AX (Archived)

CIL full compilation

(0) ShareShare
ReportReport
Posted on by

Hello,

Is there any optimizer for full CIL, that doesn't compile all the classes?

Does the full compilation compile all of the classes? Which classes are compiled to CIL?

 

Thanks :)

*This post is locked for comments

I have the same question (0)
  • Suggested answer
    André Arnaud de Calavon Profile Picture
    301,069 Super User 2025 Season 2 on at

    Hi Eithan,

    I would like to refer to some pages from Microsoft:

    technet.microsoft.com/.../gg723921.aspx

    msdn.microsoft.com/.../gg839855.aspx

    msdn.microsoft.com/.../hh397320.aspx

    In fact all x++ coding is compiled into CIL. The second and last link mention some exceptions.

  • Suggested answer
    Umesh Pandit Profile Picture
    9,315 User Group Leader on at

    Hi Eitan,

    TN for the same:

    msdn.microsoft.com/.../dn528954.aspx

  • Suggested answer
    Martin Dráb Profile Picture
    237,948 Most Valuable Professional on at

    The purpose of FULL CIL compilation is to compile all classes. If it didn't compile everything, it wouldn't be FULL compilation anymore. It drops the whole assembly and recreates it from scratch.

    It compiles all X++ classes, tables, enums etc.

  • Suggested answer
    Community Member Profile Picture
    on at

    Consider if you can utilize the option which is incremental CIL compilation

    using Incremental CIL compilation system will take care of only those classes which got modified after last CIL compilation

    Please verify and update us if this is fine option for your case

  • Community Member Profile Picture
    on at

    I realize that whenever there is problem on compilation, the full CIL fails, but is there any chance that full CIL fails, but I get no warning that CIL fails (i.e a method of specific is not compiled, and all the next methods are not compiled either, but I not getting any warning for that, and think that CIL is OK, while it is not).

    Thanks :)

  • Martin Dráb Profile Picture
    237,948 Most Valuable Professional on at

    So what's your question now?

    If I deciphered it correctly, you're saying that you can't distinguish successful and failed CIL compilation, which is rather strange. You should see it directly in compiler window. But because you didn't tell us anything about what happens in your system, nobody can give you any advice.

    If you want to get some answers here, please try to do better job when formulating your questions, splitting words to sentences etc. I think that I'm not alone who struggle understanding what you write and you risk that nobody will bother trying.

  • Community Member Profile Picture
    on at

    The reason I opened this thread is that sometimes I cannot see changes reflected after full CIL compilation.

    1. I wondered if there are any exceptions that CIL doesn't compile all of the classes (for some circumstances).

    2. As Andre gave the links, I realized that before CIL compilation, all of the objects shall be compiled properly - if not than I get some warning.

    So because of that response, I wonder whether there are exception of full CIL compilation, that is apparently compiled correctly, but it is not, as my previous question.

    If there is, there may be some clues that the the CIL compilation bypass some of the classes.

    3. I did a check right now. I delete the '}' character that encloses one of the method of a class, and did incremental CIL & full CIL - I didn't see warning at all that there is problem on compilation. What may be the cause for that?

    Thanks :)

  • Suggested answer
    Martin Dráb Profile Picture
    237,948 Most Valuable Professional on at

    But is there any error in CIL? How does the error looks like?

    You assume that there is an error in CIL, but I believe that you would get an error during CIL generation if it was true. Maybe that your CIL is built upon old information from X++ compiler (because you haven't recompiled X++), therefore your CIL is the same as before your change.

    You can decompile CIL to see how it looks like. Just guessing what's there is not enough; you have to collect facts to understand any problem.

    By the way, if "The reason you opened this thread is that sometimes you cannot see changes reflected after full CIL compilation", why your original question was "Is there any optimizer for full CIL"? We wouldn't have to waste time if you explained your problem on the beginning.

  • André Arnaud de Calavon Profile Picture
    301,069 Super User 2025 Season 2 on at

    Hi Eitan,

    Can we summarize that when you have some compilor errors in x++ compilation that also the full CIL compilation fails? If so, this is intended behavior. CIL needs to be created from compiled x++ without errors as otherwise the CIL code will be incorrect.

  • Community Member Profile Picture
    on at

    OK.

    When I test compiling a specific code, which is incorrect (not compiled by purpose), why CIL compilation didn't warn about that code, and why shall I do full compilation (AOT) after that specific code is incorrect? Isn't it enough that I did compile the specific code?

    Also - My configuration is:

    1. I have web site, which has a specific dll that uses code from AX by business connector.

    I presume that this code is in CIL. The dll is not changed at all - the changes are only at specific class of AX of mine.

    2. The AX code is an ax class that is used by the the above DLL.

    3. I also did: full CIL compile + iisreset + AOS-Restart + clearing the proxy-account usage data + cleaning browser history (chrome) + restarting chrome + log-off and log-on to computer. I think much enough that I will get the new code, but I didn't.

    Martin Dráb said to do full compile - it may take long time, but why shall I do that, if I know what are my classes, and that the classes are compiled correctly.

    I know a solution, that always solve the problem:

    full compilation of CIL, with deletion of SYSXPPASSEMBLY table + deleting the folder of: C:\Program Files\Microsoft Dynamics AX\60\Server\MicrosoftDynamicsAX\bin\XppIL directory as advised on: axwonders.blogspot.co.il/.../solving-error-cil-generator-found.html

    but, I cannot do and don't want doing all the time as above (that may takes hours for nothing).

    Any clues?

    Thanks :)

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

Responsible AI policies

As AI tools become more common, we’re introducing a Responsible AI Use…

Neeraj Kumar – Community Spotlight

We are honored to recognize Neeraj Kumar as our Community Spotlight honoree for…

Leaderboard > 🔒一 Microsoft Dynamics AX (Archived)

#1
Martin Dráb Profile Picture

Martin Dráb 4 Most Valuable Professional

#1
Priya_K Profile Picture

Priya_K 4

#3
MyDynamicsNAV Profile Picture

MyDynamicsNAV 2

Last 30 days Overall leaderboard

Featured topics

Product updates

Dynamics 365 release plans