Subject: 23.0.60; c-mode indentation and php

From: "Lennart Borgman (gmail)" <[email-masked]>
Date: Wed, 03 Sep 2008 23:34:04 +0200

In php-mode.el (not yet a part of Emacs, but has been discussed for
inclusion) c-indent-line is used for indentation. That works nicely for
the php code part of a php template page, but there is a disturbing
glitch that probably can be fixed.

Constructs like the one below are rather common.

   if (1) {
 ?>
  ...
 <?php
     }

If you try to indent the line with the single "}" in c-mode it does not
get aligned with "if (1) {". I have narrowed this down to

   if (1) {
 ?php
     }

Adding a semicolon after "?php" makes everything work.

Is the current indentation behaviour in this case useful in some way? Is
there some option to change it?

The example came from a bug report/question for nXhtml:

  https://answers.launchpad.net/nxhtml/+question/43320

In GNU Emacs 23.0.60.1 (i386-mingw-nt5.1.2600)
 of 2008-09-03
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4) --no-opt --cflags
-Ic:/g/include -fno-crossjumping'